1 |
|
2 |
|
3 |
|
4 | var util = require( './util' );
|
5 | var assert = require( 'assert' );
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 | var fixture = require( './fixture' );
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 | describe( 'wpcom.site.tag', function() {
|
18 |
|
19 | var wpcom = util.wpcom();
|
20 | var site = wpcom.site( util.site() );
|
21 | var new_tag;
|
22 |
|
23 |
|
24 | var testing_tag;
|
25 | before( done => {
|
26 | fixture.tag.name += Math.random() * 1000000 | 0;
|
27 | site.tag().add( fixture.tag )
|
28 | .then( tag => {
|
29 | testing_tag = tag;
|
30 | done();
|
31 | } )
|
32 | .catch( done );
|
33 | } );
|
34 |
|
35 |
|
36 | after( done => {
|
37 | site.tag( testing_tag.slug ).delete()
|
38 | .then( () => done() )
|
39 | .catch( done );
|
40 | } );
|
41 |
|
42 | describe( 'wpcom.site.tag.get', function() {
|
43 | it( 'should get added tag', done => {
|
44 | var cat = site.tag( testing_tag.slug );
|
45 |
|
46 | cat.get()
|
47 | .then( data => {
|
48 | assert.ok( data );
|
49 | assert.ok( data instanceof Object, 'data is not an object' );
|
50 | assert.equal( testing_tag.slug, data.slug );
|
51 | assert.equal( testing_tag.name, data.name );
|
52 | done();
|
53 | } )
|
54 | .catch( done );
|
55 | } );
|
56 | } );
|
57 |
|
58 | describe( 'wpcom.site.tag.add', function() {
|
59 | it( 'should add a new tag', done => {
|
60 | var tag = site.tag();
|
61 | fixture.tag.name += '-added';
|
62 |
|
63 | tag.add( fixture.tag )
|
64 | .then( data => {
|
65 |
|
66 | assert.ok( data );
|
67 | assert.ok( data instanceof Object, 'data is not an object' );
|
68 |
|
69 |
|
70 | new_tag = data;
|
71 |
|
72 | done();
|
73 | } )
|
74 | .catch( done );
|
75 | } );
|
76 | } );
|
77 |
|
78 | describe( 'wpcom.site.tag.update', function() {
|
79 | it( 'should edit the new added tag', done => {
|
80 | var tag = site.tag( new_tag.slug );
|
81 | var edited_name = fixture.tag.name + '-updated';
|
82 |
|
83 | tag.update( { name: edited_name } )
|
84 | .then( data => {
|
85 | assert.ok( data );
|
86 | assert.equal( edited_name, data.name );
|
87 |
|
88 |
|
89 | new_tag = data;
|
90 |
|
91 | done();
|
92 | } )
|
93 | .catch( done );
|
94 | } );
|
95 | } );
|
96 |
|
97 | describe( 'wpcom.site.tag.delete', function() {
|
98 | it( 'should delete the new added tag', done => {
|
99 | var cat = site.tag( new_tag.slug );
|
100 |
|
101 | cat.delete()
|
102 | .then( data => {
|
103 | assert.ok( data );
|
104 | assert.equal( 'true', data.success );
|
105 | assert.equal( new_tag.slug, data.slug );
|
106 |
|
107 | done();
|
108 | } )
|
109 | .catch( done );
|
110 | } );
|
111 | } );
|
112 | } );
|