getUniqueUsername.then(function( context ) { var userObj = { firstName: 'John', lastName: 'Doe', username: context.username, email: context.username, password: passwordHash.generate('12345678'), isStaff: false }; var createNewUser = require('controllers/authentication/helpers/_createNewUser.js'); var getNewUser = createNewUser(userObj); getNewUser.then(function( user ) { try { var fields = 'username, firstName, lastName'; var result = helpers.cleanModel(user, fields); assert.deepEqual(result, { firstName: 'John', lastName: 'Doe', username: '******' + context.token + '@example.com' }); return done(); } catch( error ) { return done(error); } }); getNewUser.fail(function( errorObj ) { var error = new Error('New user failed'); return done(error); }); });
getUniqueUsername.then(function( context ) { try { var userObj = { firstName: 'John', lastName: 'Doe', username: context.username, email: context.username, password: passwordHash.generate('12345678'), isStaff: false }; var createNewUser = require('controllers/authentication/helpers/_createNewUser.js'); var getNewUser = createNewUser(userObj); getNewUser.then(function( user ) { // TODO: Get a auto renewed token with graph.facebook.com/oauth/access_token // https://developers.facebook.com/docs/graph-api/reference/v2.5/app/accounts/test-users var getAccessToken = helpers.getFacebookTestUserAccessToken(); getAccessToken.then(function( accessToken ) { var userId = nconf.get('facebook:user:id'); var request = httpMocks.createRequest(); var response = httpMocks.createResponse({ eventEmitter: require('events').EventEmitter }); response.on('end', function() { if( this.statusCode == 200 ) { done(); } else { var error = new Error('Something went wrong (' + this.statusCode + ')'); done(error); } }); request.body.authToken = ''; request.body.accessToken = accessToken; request.body.userId = userId; request.body.username = user.username; var addFacebook = require('../../partials/_add_facebook.js').add; addFacebook( request, response ); }); getAccessToken.fail(function( errorObj ) { var error = new Error('Token fetch failed'); return done(error); }); }); getNewUser.fail(function( errorObj ) { var error = new Error('New user failed'); return done(error); }); } catch( error ) { return done(error); } });