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
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 friends = sequelize.define('friends', {
name: DataTypes.STRING,
facebookId: DataTypes.STRING,
email: DataTypes.STRING
}, {
classMethods: {
associate: (models) => {
}
}
});

return friends;
};
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
98 changes: 98 additions & 0 deletions test/unit/facebook/friendlist.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
import FacebookHelper from '../../../src/facebook/helper.js'
import task1_initModel from '../../../src/database/task1';

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

before( async function(done){
let userId = "";
let token = "";
models = await task1_initModel();
facebookHelper = new FacebookHelper({userId, token});
//console.log(facebookHelper);
done();
});
describe('facebook friend', () => {
it("get friends list", async (done) => {
try {
friends = await facebookHelper.getFriends();
console.log("friends", friends);
(friends != null).should.be.true;
friends.should.be.Array;
friends[0].should.have.keys("name", "id");
done();
} catch (e) {
done(e);
}
});
it("save to datebase", async (done) => {
try {
let count = 0;
for (count = 0 ; count < friends.length ; count++){
let addUser = {name: friends[count].name, facebookId: friends[count].id}
user = await models.friends.create(addUser);
user.toJSON().should.has.keys(
'id',
'name',
'facebookId',
//'email',
'createdAt',
'updatedAt'
);
}
done();
} catch (e) {
done(e);
}
});
});
describe('datebase', () => {
it('get friend', async (done) => {
try{
let result = await models.friends.findAll();
result.length.should.be.equal(friends.length);
done();
}
catch(e){
done(e);
}
});
it('change email to hellojs@trunk.studio', async (done) => {
try{
let friend_1 = friends[0].id;
let f1_data = await models.friends.findOne({
where: {
facebookId: friend_1
}
});
f1_data.email = 'hellojs@trunk.studio';
let result = await f1_data.save();
console.log(result.name , result.id , result.email);
result.email.should.equal('hellojs@trunk.studio');
done();
}
catch(e){
done(e);
}
});
it('delete friend email is hellojs@trunk.studio', async (done) => {
try{
let del_friend = await models.friends.findOne({
where:{email:'hellojs@trunk.studio'}
});
await del_friend.destroy();
let result = await models.friends.findOne({
where:{email:'hellojs@turnk.studio'}
});
(result === null ).should.be.true;
done();
}
catch(e){
done(e);
}
});
});
});
29 changes: 27 additions & 2 deletions test/unit/facebook/helper.test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import FacebookHelper from '../../../src/facebook/helper.js'
//import task1_initModel from '../../../src/database/task1';

describe('facebook-helper', () => {
describe.skip('facebook-helper', () => {
let facebookHelper = null;
//let models = null;

before((done) => {
let userId = "";
Expand All @@ -11,20 +13,43 @@ describe('facebook-helper', () => {
done();
});

/*beforeEach(async (done) => {
try {
models = await task1_initModel()
done()
} catch (e) {
done(e)
}
});*/

it("get friends list", async (done) => {
try {
let friends = await facebookHelper.getFriends();
console.log("friends", friends);
(friends != null).should.be.true;
friends.should.be.Array;
friends[0].should.have.keys("name", "id");
/*let count = 0;
for (count = 0 ; count < friends.length ; count++){
let addUser = {name: friends[count].name, facebookId: friends[count].id}
let result = {};
result = await models.friends.create(addUser);
result.toJSON().should.has.keys(
'id',
'name',
'facebookId',
//'email',
'createdAt',
'updatedAt'
);
}*/
done();
} catch (e) {
done(e);
}
});

it.skip("publish post", async (done) => {
it("publish post", async (done) => {
try {
let post = {
message: 'test facebook post api'
Expand Down