diff --git a/database.db b/database.db index 3f8ea29..2272fe0 100644 Binary files a/database.db and b/database.db differ diff --git a/src/models/friend.js b/src/models/friend.js new file mode 100644 index 0000000..52742e2 --- /dev/null +++ b/src/models/friend.js @@ -0,0 +1,16 @@ +'use strict'; + +module.exports = (sequelize, DataTypes) => { + var friend = sequelize.define('friend', { + name: DataTypes.STRING, + facebookId: DataTypes.STRING, + email: DataTypes.STRING + }, { + classMethods: { + associate: (models) => { + } + } + }); + + return friend; +}; diff --git a/src/models/post.js b/src/models/post.js index 9f437cf..ffda450 100644 --- a/src/models/post.js +++ b/src/models/post.js @@ -2,8 +2,9 @@ module.exports = (sequelize, DataTypes) => { var Post = sequelize.define('Post', { - title: DataTypes.STRING, - desc: DataTypes.STRING, + name: DataTypes.STRING, + facebookId: DataTypes.STRING, + email: DataTypes.STRING }, { classMethods: { associate: (models) => { diff --git a/test/unit/database/fb.test.js b/test/unit/database/fb.test.js new file mode 100644 index 0000000..ecd6107 --- /dev/null +++ b/test/unit/database/fb.test.js @@ -0,0 +1,80 @@ +import task1_initModel from '../../../src/database/task1'; +import FacebookHelper from '../../../src/facebook/helper.js' + +describe.only('hellojs-homework-week2', () => { + let models = null; + let facebookHelper = null; + let friendList = null; + let friend = null; + let create = null; + + before( async function(done){ + let userId = '750208591709135'; + let token = 'EAACEdEose0cBAFZBvh69O2GaP0xLiZAJNPgJ3Qkfadp7EwolpAKD4T1mbOtiTDsBY2A82SZBoB68Ddea1ZAcMNWkKfsDltq49aO3wo4jGCqFUSrh6JEZBQ77xT71ZAEA320Jq278ulLRpVEw9ml9xhDZB0IbRg7ZCanTlFD7w9yJ5gZDZD'; + models = await task1_initModel(); + facebookHelper = await new FacebookHelper({userId, token}); + done(); + }); + it('get friendList && 將friendList放入sequelize', async(done) => { + try{ + friendList = await facebookHelper.getFriends();//將api抓取內容存到friendList + console.log(friendList); + let count = 0; + for (count = 0; count { + try{ + let result = await models.friend.findAll(); + result.length.should.be.eq(friendList.length); + done(); + } catch(e) { + done(e); + } + }); + it('更新信箱為hellojs@trunk.studio', async (done) => { + try { + let email = 'hellojs@trunk.studio'; + let result = {}; + result = await models.friend.findOne({ + where: { + id:1, + }, + }); + result.email = email; + await result.save(); + result.email.should.be.eq(email); + done(); + } catch (e) { + done(e); + } + }); + it('刪除信箱為hellojs@trunk.studio的使用者', async (done) => { + try {; + let result = {}; + result = await models.friend.findOne({ + where: { + email:'hellojs@trunk.studio', + }, + }); + await result.destroy(); + const check = await models.User.findOne({ + where: { + email: 'hellojs@trunk.studio', + }, + }); + (check === null).should.be.true; + done(); + } catch (e) { + done(e); + } + }); +});