1 |
|
2 |
|
3 |
|
4 | var util = require( './util' );
|
5 | var assert = require( 'assert' );
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | var fixture = require( './fixture' );
|
11 |
|
12 |
|
13 |
|
14 |
|
15 | describe( 'wpcom.me.settings.profileLinks', function() {
|
16 |
|
17 | var wpcom = util.wpcom();
|
18 | var me = wpcom.me();
|
19 | var settings = me.settings();
|
20 | var profile = settings.profileLinks();
|
21 | var testing_profile;
|
22 | var added_profile;
|
23 |
|
24 |
|
25 | var fix_profiles = fixture['profile-links'];
|
26 |
|
27 |
|
28 | var fix_profile = fix_profiles[0];
|
29 | var rnd = Math.random().toString().substr( 2 );
|
30 | fix_profile.title += '-' + rnd;
|
31 | fix_profile.value += '/#' + rnd;
|
32 |
|
33 |
|
34 | before( function( done ) {
|
35 | profile.add( fix_profile, function( err, data_profile ) {
|
36 | if ( err ) throw err;
|
37 |
|
38 | testing_profile = data_profile;
|
39 | done();
|
40 | } );
|
41 | } );
|
42 |
|
43 | after( function( done ) {
|
44 |
|
45 | profile.del( testing_profile.added[0].link_slug, done );
|
46 | } );
|
47 |
|
48 | describe( 'wpcom.me.settings.profileLinks.get', function() {
|
49 | it( 'should get at least one profile link for current user', function( done ) {
|
50 | profile.get( function( err, data ) {
|
51 | if ( err ) throw err;
|
52 |
|
53 | assert.ok( data.profile_links instanceof Array );
|
54 | assert.ok( 1 <= data.profile_links.length );
|
55 | done();
|
56 | } );
|
57 | } );
|
58 | } );
|
59 |
|
60 | describe( 'wpcom.me.settings.profileLinks.add', function() {
|
61 | it( 'should not add link already added', function( done ) {
|
62 | profile.add( fix_profile, function( err, data ) {
|
63 | if ( err ) throw err;
|
64 |
|
65 | assert.ok( ! data.added );
|
66 | assert.ok( data.duplicate instanceof Array );
|
67 | assert.ok(
|
68 | testing_profile.added[0].link_slug,
|
69 | data.duplicate[0].link_slug
|
70 | );
|
71 | done();
|
72 | } );
|
73 | } );
|
74 |
|
75 | it( 'should add a new profile link', function( done ) {
|
76 | fix_profile.title += '-new';
|
77 | fix_profile.value += '-new';
|
78 |
|
79 | profile.add( fix_profile, function( err, data ) {
|
80 | if ( err ) throw err;
|
81 |
|
82 | assert.ok( ! data.duplicate );
|
83 | assert.ok( data.added instanceof Array );
|
84 | assert.ok( 1 === data.added.length );
|
85 | assert.ok( fix_profile.title === data.added[0].title );
|
86 |
|
87 |
|
88 | added_profile = data;
|
89 | done();
|
90 | } );
|
91 | } );
|
92 | } );
|
93 |
|
94 | describe( 'wpcom.me.settings.profileLinks.del', function() {
|
95 | it( 'should delete the new link already added', function( done ) {
|
96 | profile.del( added_profile.added[0].link_slug, function( err, data ) {
|
97 | if ( err ) throw err;
|
98 |
|
99 | assert.ok( data.success );
|
100 | done();
|
101 | } );
|
102 | } );
|
103 | } );
|
104 | } );
|