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.
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
"prepublish": "npm run compile",
"test": "./node_modules/.bin/mocha",
"watchdb": "sqlite3 database.db 'select * from users'",
"watchPost": "sqlite3 database.db 'select * from posts'"
"watchPost": "sqlite3 database.db 'select * from posts'",
"watchFriend": "sqlite3 database.db 'select * from Friends'"
},
"devDependencies": {
"babel-cli": "*",
Expand Down
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.INTEGER,
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
91 changes: 91 additions & 0 deletions test/unit/database/facebook.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
import task1_initModel from '../../../src/database/task1';
import FacebookHelper from '../../../src/facebook/helper.js'

describe.only('facebook list in database', () => {
let models = null;
let facebookHelper = null;
let friends = null;

before(async (done) => {
try {
models = await task1_initModel();
let userId = "830986826924096";
let token = "EAACEdEose0cBAIjyn7LaZCZBMCm8JgLWCYswSh1WhPN7bdgj45xwCg9lCLgCoMiDnhBS9CQWd4hgBMWRDvZBk6EKvunZAZBpgePhC3an5Fza8zFMrWadCPNs6bt36VET4mYwJrNZBHF6dNlhw7QvZCZCZA9WlEnAuaRmwFFZBfwWvqGAZDZD";
facebookHelper = new FacebookHelper({userId, token});
done();
} catch (e) {
done(e);
}
});

it('建立 friends list 到資料庫中', async (done) => {
try {
//arrange
friends = await facebookHelper.getFriends();
console.log("friends", friends);
//act
await models.Friend.bulkCreate(friends);
//assert
const check = await models.Friend.findAll();
check.length.should.be.eq(friends.length);
done();
} catch (e) {
done(e);
}
});

it('查找第一位朋友在資料庫中', async (done) => {
try {
//arrange
let f_id = friends[0].id;
let f_name = friends[0].name;
//act
let check = await models.Friend.findById(f_id);
//assert
check.name.should.equal(f_name);
done();
} catch (e){
done(e);
}
});

it('更改第一位朋友的信箱', async (done) => {
try {
//arrange
let f_id = friends[0].id;
let user = await models.Friend.findById(f_id);
//act
user.email = 'hellojs@trunk.studio';
await user.save();
//assert
let check = await models.Friend.findById(f_id);
check.email.should.equal(user.email);
done()
} catch (e){
done(e);
}
});

it('刪除第一位朋友在資料庫中', async (done) => {
try {
//arrange
let f_id = friends[0].id;
let user = await models.Friend.findById(f_id);
//act
await user.destroy();
//assert
let check = await models.Friend.findById(f_id);
(check === null).should.be.true;
done();
} catch (e){
done(e);
}
});







});
4 changes: 2 additions & 2 deletions test/unit/database/practice.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ describe('practice', () => {
}
});

it('在資料庫中 Post table 中新增一個 price 欄位 data types 為 INTEGER', async (done) => {
it ('在資料庫中 Post table 中新增一個 price 欄位 data types 為 INTEGER', async (done) => {
try {
const data = {
title: 'post a',
Expand Down Expand Up @@ -42,7 +42,7 @@ describe('practice', () => {
price: 100,
};

let result;
let result = await models.Post.create(input);;

result.title.should.be.eq('AAA');
result.desc.should.be.eq('BBB');
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 = "830986826924096";
let token = "EAACEdEose0cBAIjyn7LaZCZBMCm8JgLWCYswSh1WhPN7bdgj45xwCg9lCLgCoMiDnhBS9CQWd4hgBMWRDvZBk6EKvunZAZBpgePhC3an5Fza8zFMrWadCPNs6bt36VET4mYwJrNZBHF6dNlhw7QvZCZCZA9WlEnAuaRmwFFZBfwWvqGAZDZD";
facebookHelper = new FacebookHelper({userId, token});
console.log(facebookHelper);
done();
Expand Down