From cef7fe72edd284aa001aee7ebdda03e4c8bf9c02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?syuilo=E2=AD=90=EF=B8=8F?= Date: Wed, 18 Jan 2017 02:28:47 +0900 Subject: [PATCH] Update api.js --- test/api.js | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/test/api.js b/test/api.js index 84a4457e1..85f199265 100644 --- a/test/api.js +++ b/test/api.js @@ -214,6 +214,64 @@ describe('API', () => { }); })); }); + + describe('followings/create', () => { + it('フォローできる', () => new Promise(async (done) => { + const hima = await insertHimawari(); + const me = await insertSakurako(); + request('/followings/create', { + user_id: hima._id.toString() + }, me).then(res => { + res.should.have.status(200); + res.body.should.be.a('object'); + res.body.should.have.property('id').eql(hima._id.toString()); + done(); + }); + })); + + it('既にフォローしている場合は怒る', () => new Promise(async (done) => { + const hima = await insertHimawari(); + const me = await insertSakurako(); + await db.get('followings').insert({ + followee_id: hima._id, + follower_id: me._id + }); + request('/followings/create', { + user_id: hima._id.toString() + }, me).then(res => { + res.should.have.status(400); + done(); + }); + })); + + it('存在しないユーザーはフォローできない', () => new Promise(async (done) => { + const me = await insertSakurako(); + request('/followings/create', { + user_id: 'kyoppie' + }, me).then(res => { + res.should.have.status(400); + done(); + }); + })); + + it('自分自身はフォローできない', () => new Promise(async (done) => { + const me = await insertSakurako(); + request('/followings/create', { + user_id: me._id.toString() + }, me).then(res => { + res.should.have.status(400); + done(); + }); + })); + + it('空のパラメータで怒られる', () => new Promise(async (done) => { + const me = await insertSakurako(); + request('/followings/create', {}, me).then(res => { + res.should.have.status(400); + done(); + }); + })); + }); }); async function insertSakurako() {