summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-03-01 14:41:49 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-03-01 14:41:49 +0900
commit76aaa340a3cafde716e449e808d7c064a937582d (patch)
tree3b826f63b77ed2535b6dd7cb195dfde327230641
parentClean up: Destroy nyaize (diff)
downloadsharkey-76aaa340a3cafde716e449e808d7c064a937582d.tar.gz
sharkey-76aaa340a3cafde716e449e808d7c064a937582d.tar.bz2
sharkey-76aaa340a3cafde716e449e808d7c064a937582d.zip
[Test] Add some messaging tests
-rw-r--r--test/api.ts72
1 files changed, 72 insertions, 0 deletions
diff --git a/test/api.ts b/test/api.ts
index 334339d40d..72a5603edb 100644
--- a/test/api.ts
+++ b/test/api.ts
@@ -1193,6 +1193,78 @@ describe('API', () => {
});
});
+ describe('messaging/messages/create', () => {
+ it('メッセージを送信できる', () => async (done) => {
+ const me = await insertSakurako();
+ const hima = await insertHimawari();
+ request('/messaging/messages/create', {
+ user_id: hima._id.toString(),
+ text: 'Hey hey ひまわり'
+ }).then(res => {
+ res.should.have.status(200);
+ res.body.should.be.a('object');
+ res.body.should.have.property('text').eql('Hey hey ひまわり');
+ done();
+ });
+ });
+
+ it('自分自身にはメッセージを送信できない', () => async (done) => {
+ const me = await insertSakurako();
+ request('/messaging/messages/create', {
+ user_id: me._id.toString(),
+ text: 'Yo'
+ }).then(res => {
+ res.should.have.status(400);
+ done();
+ });
+ });
+
+ it('存在しないユーザーにはメッセージを送信できない', () => async (done) => {
+ const me = await insertSakurako();
+ request('/messaging/messages/create', {
+ user_id: '000000000000000000000000',
+ text: 'Yo'
+ }).then(res => {
+ res.should.have.status(400);
+ done();
+ });
+ });
+
+ it('不正なユーザーIDで怒られる', () => async (done) => {
+ const me = await insertSakurako();
+ request('/messaging/messages/create', {
+ user_id: 'kyoppie',
+ text: 'Yo'
+ }).then(res => {
+ res.should.have.status(400);
+ done();
+ });
+ });
+
+ it('テキストが無くて怒られる', () => async (done) => {
+ const me = await insertSakurako();
+ const hima = await insertHimawari();
+ request('/messaging/messages/create', {
+ user_id: hima._id.toString()
+ }).then(res => {
+ res.should.have.status(400);
+ done();
+ });
+ });
+
+ it('文字数オーバーで怒られる', () => async (done) => {
+ const me = await insertSakurako();
+ const hima = await insertHimawari();
+ request('/messaging/messages/create', {
+ user_id: hima._id.toString(),
+ text: '!'.repeat(501)
+ }).then(res => {
+ res.should.have.status(400);
+ done();
+ });
+ });
+ });
+
describe('auth/session/generate', () => {
it('認証セッションを作成できる', () => async (done) => {
const app = await insertApp();