diff options
Diffstat (limited to 'webapp/tests/client/client_post.test.jsx')
-rw-r--r-- | webapp/tests/client/client_post.test.jsx | 233 |
1 files changed, 233 insertions, 0 deletions
diff --git a/webapp/tests/client/client_post.test.jsx b/webapp/tests/client/client_post.test.jsx new file mode 100644 index 000000000..bad72c8b0 --- /dev/null +++ b/webapp/tests/client/client_post.test.jsx @@ -0,0 +1,233 @@ +// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +import TestHelper from 'tests/helpers/client-test-helper.jsx'; + +describe('Client.Posts', function() { + test('createPost', function(done) { + TestHelper.initBasic(done, () => { + var post = TestHelper.fakePost(); + post.channel_id = TestHelper.basicChannel().id; + + TestHelper.basicClient().createPost( + post, + function(data) { + expect(data.id.length).toBeGreaterThan(0); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPostById', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().getPostById( + TestHelper.basicPost().id, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPost', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().getPost( + TestHelper.basicChannel().id, + TestHelper.basicPost().id, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('updatePost', function(done) { + TestHelper.initBasic(done, () => { + var post = TestHelper.basicPost(); + post.message = 'new message'; + post.channel_id = TestHelper.basicChannel().id; + + TestHelper.basicClient().updatePost( + post, + function(data) { + expect(data.id.length).toBeGreaterThan(0); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('deletePost', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().deletePost( + TestHelper.basicChannel().id, + TestHelper.basicPost().id, + function(data) { + expect(data.id).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('searchPost', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().search( + 'unit test', + false, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPostsPage', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().getPostsPage( + TestHelper.basicChannel().id, + 0, + 10, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPosts', function(done) { + TestHelper.initBasic(done, () => { + TestHelper.basicClient().getPosts( + TestHelper.basicChannel().id, + 0, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPostsBefore', function(done) { + TestHelper.initBasic(done, () => { + var post = TestHelper.fakePost(); + post.channel_id = TestHelper.basicChannel().id; + + TestHelper.basicClient().createPost( + post, + function(rpost) { + TestHelper.basicClient().getPostsBefore( + TestHelper.basicChannel().id, + rpost.id, + 0, + 10, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getPostsAfter', function(done) { + TestHelper.initBasic(done, () => { + var post = TestHelper.fakePost(); + post.channel_id = TestHelper.basicChannel().id; + + TestHelper.basicClient().createPost( + post, + function(rpost) { + TestHelper.basicClient().getPostsAfter( + TestHelper.basicChannel().id, + TestHelper.basicPost().id, + 0, + 10, + function(data) { + expect(data.order[0]).toEqual(rpost.id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + test('getFlaggedPosts', function(done) { + TestHelper.initBasic(done, () => { + var pref = {}; + pref.user_id = TestHelper.basicUser().id; + pref.category = 'flagged_post'; + pref.name = TestHelper.basicPost().id; + pref.value = 'true'; + + var prefs = []; + prefs.push(pref); + + TestHelper.basicClient().savePreferences( + prefs, + function() { + TestHelper.basicClient().getFlaggedPosts( + 0, + 2, + function(data) { + expect(data.order[0]).toEqual(TestHelper.basicPost().id); + done(); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }, + function(err) { + done.fail(new Error(err.message)); + } + ); + }); + }); + + // getFileInfosForPost is tested in client_files.test.jsx +}); + |