diff --git a/database.db b/database.db index 3f8ea29..2f7652d 100644 Binary files a/database.db and b/database.db differ diff --git a/src/models/user.js b/src/models/user.js index 1a893c2..933bbc7 100644 --- a/src/models/user.js +++ b/src/models/user.js @@ -2,10 +2,9 @@ module.exports = (sequelize, DataTypes) => { var User = sequelize.define('User', { - username: DataTypes.STRING, + name: DataTypes.STRING, + facebookId: DataTypes.STRING, email: DataTypes.STRING, - password: DataTypes.STRING, - age: DataTypes.INTEGER, }, { classMethods: { associate: (models) => { diff --git a/test/unit/facebook/helper.test.js b/test/unit/facebook/helper.test.js index 6856c56..eaf865d 100644 --- a/test/unit/facebook/helper.test.js +++ b/test/unit/facebook/helper.test.js @@ -4,8 +4,8 @@ describe('facebook-helper', () => { let facebookHelper = null; before((done) => { - let userId = ""; - let token = ""; + let userId = "616705558438326"; + let token = "EAACEdEose0cBAARvaZAoWcNHD8WeTgxgohMI0enyVAAQjaVmH2snfS6Hd9u3hrkrldoi6wZAtLKuPc56ZA3JZBSmYwD3QiP29Ge7zgtliO9CiISS2zm6mJoWqB7l3hUFvjcr49oXzLAmG8lLIpmrhWVkWXZApV5cfPCfIARlpEUqIgx6CKEcTZA9ElznyfGLwZD"; facebookHelper = new FacebookHelper({userId, token}); console.log(facebookHelper); done(); diff --git a/test/unit/facebook/hw2_fb.test.js b/test/unit/facebook/hw2_fb.test.js new file mode 100644 index 0000000..97a2489 --- /dev/null +++ b/test/unit/facebook/hw2_fb.test.js @@ -0,0 +1,104 @@ +import FacebookHelper from '../../../src/facebook/helper.js' +import task1_initModel from '../../../src/database/task1'; +describe.only('hw2', () => { + let facebookHelper = null; + let friends = []; + let model = null; + + before(async (done) => { + let userId = "618444968267382"; + let token = "EAACEdEose0cBAJlP7o2lFIHXwunjWMYVAvuvCGLkd8GkBIHqoRowECrZByeYxIz4dheceT7bZBxZBlvMukZAtjtGbJXUfCj1YZCTgU77LwMy4gmz8dusod6AK2BhUZBe0XjqV2kKYXcNUBhnkkjDupAD8YAETPZB3LTpj9lWiQruLVzOmDhAypuSVlq4aVozQMZD"; + facebookHelper = new FacebookHelper({userId, token}); + console.log(facebookHelper); + try{ + model = await task1_initModel() + }catch(e){done(e)} + + done(); + }); + + + it("get friends list and save", async (done) => { + try { + friends = await facebookHelper.getFriends(); + console.log("friends", friends); + + friends.should.be.Array; + let result = await model.User.bulkCreate(friends); + + console.log("已新增至資料庫"); + + for(var i=0;i { + try { + let fb_friends = await model.User.findAll(); + console.log("取得資料庫內的朋友清單"); + + //檢查是否一樣 + + fb_friends.length.should.be.eq(friends.length); + + + done(); + } catch (e) { + done(e); + } + }); + + it("將其中一個 friend 更新其 email 欄位為 hellojs@trunk.studio", async (done) => { + try { + let f = await model.User.findOne({ + where:{ + name:friends[1].name + } +}); + console.log("要更改的人的資料",f.name,f.email,f.id); + f.email = 'hellojs@trunk.studio'; + await f.save(); + + f.email.should.be.eq('hellojs@trunk.studio'); + + + + done(); + } catch (e) { + done(e); + } + }); + + it("刪除一位 friend", async (done) => { + try { + let f = await model.User.findOne({ + where:{ + name:friends[1].name + } + }); + console.log("要刪除的人的資料",f.name,f.email,f.id); + await f.destroy(); + + let check = await model.User.findOne({//檢查是否已經刪除 + where:{ + name:friends[1].name + } + }); + + (check == null).should.be.true; + + done(); + } catch (e) { + done(e); + } + }); + + + +});