Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified database.db
Binary file not shown.
16 changes: 16 additions & 0 deletions src/models/friend.js
Original file line number Diff line number Diff line change
@@ -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;
};
1 change: 1 addition & 0 deletions src/models/post.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ module.exports = (sequelize, DataTypes) => {
var Post = sequelize.define('Post', {
title: DataTypes.STRING,
desc: DataTypes.STRING,
price: DataTypes.INTEGER,
}, {
classMethods: {
associate: (models) => {
Expand Down
104 changes: 104 additions & 0 deletions test/unit/CurtHw/Hw.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
import task1_initModel from '../../../src/database/task1';
import FacebookHelper from '../../../src/facebook/helper.js'

describe.only('HomwWork', () => {
let models = null;
let facebookHelper = null;
let friends = null;

before(async (done) => {
models = await task1_initModel();
let userId = "656537631096363";
let token = "EAACEdEose0cBALSWnixOLiY8WFvCkHJ2T1TXhO7Mip0VMzeSLjwZCZAEVZAIlKD4vlSA7iH96IZCMcjIyY8xIUQkVR3xRa6sLQL758fZAjLwKrbdnKSO9oeTCiNRGNgjJb188j5OZCI2wbNelCKoFzVDovJ88i5D9z4dohMvh8pAZDZD";
facebookHelper = new FacebookHelper({userId, token});
done();
});


it('把從 facebook 取得的 friends list 存入 sequelize 之 friend model (create)', async (done) => {
try {

//f_list => my friends List
friends = await facebookHelper.getFriends();
//write friends in to database.
let result = await models.Friend.bulkCreate(friends);
//friend numbers should equal database record numbers
friends.length.should.equal(result.length);
// friends = await facebookHelper.getFriends();
//
// let result =
// await models.Friend.create({
// name: friends[0].name,
// facebookId: friends[0].id,
// email: '',
// });
//
// result.name.should.be.eq('傅耀德');
// result.facebookId.should.be.eq('901833236500661');
// result.email.should.be.eq('');
done();
} catch (e) {
done(e);
}
});

it('原本用 api 取得 friends list 改為透過查詢資料庫的方式 (find)', async (done) => {
try {


let friend = await models.Friend.findOne({
where: {
name: '傅耀德'
},
});
friend.name.should.equal('傅耀德');
done();
} catch (e) {
done(e);
}
});

it('將其中一個 friend 更新其 email 欄位為 hellojs@trunk.studio (update)', async (done) => {
try {


let friend = await models.Friend.findOne({
where: {
name: '傅耀德'
},
});
friend.email = 'hellojs@trunk.studio';
await friend.save();

friend.email.should.equal('hellojs@trunk.studio');
done();
} catch (e) {
done(e);
}
});

it('刪除該位 friend (delete)', async (done) => {
try {


let friend = await models.Friend.findOne({
where: {
name: '傅耀德'
},
});
await friend.destroy();

let test = await models.Friend.findOne({
where: {
name: '傅耀德'
},
});
(test === null ).should.be.true;

done();
} catch (e) {
done(e);
}
});

});
19 changes: 12 additions & 7 deletions test/unit/database/practice.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,16 +37,21 @@ describe('practice', () => {
it('使用 sequelize 新增一個 post 使測試 pass', async (done) => {
try {
const input = {
title: 'AAA',
desc: 'BBB',
price: 100,
name: '321',
facebookId: 'aaa',
email: 'aaa',
};

let result;
let result =
await models.Friend.create({
name: '321',
facebookId: 'aaa',
email: 'aaa',
});

result.title.should.be.eq('AAA');
result.desc.should.be.eq('BBB');
result.price.should.be.eq(100);
result.name.should.be.eq('321');
result.facebookId.should.be.eq('aaa');
result.email.should.be.eq('aaa');
done();
} catch (e) {
done(e);
Expand Down
4 changes: 2 additions & 2 deletions test/unit/facebook/helper.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ describe('facebook-helper', () => {
let facebookHelper = null;

before((done) => {
let userId = "";
let token = "";
let userId = "656537631096363";
let token = "EAACEdEose0cBAAl5zb7tl2OzTfLA2INXGd6NsJ6ZAZCvh3cw45fJB4IrkqGsGkSN99T5gJ4BImecZBsiABknIgt3XR0VzoX72gBJNFYm32rUbZAraVFsc56P5S4eRPNaYY9DP8vqMuZCuFgZBZC7F3MJV24cmtMAJyz5Br8r8e4TwZDZD";
facebookHelper = new FacebookHelper({userId, token});
console.log(facebookHelper);
done();
Expand Down