add simple User model testing
This commit is contained in:
41
tests/models/User_spec.js
Normal file
41
tests/models/User_spec.js
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
process.env.NODE_ENV = 'test';
|
||||||
|
|
||||||
|
var User = require('../../models/User');
|
||||||
|
|
||||||
|
var mocha = require('mocha')
|
||||||
|
, chai = require('chai')
|
||||||
|
, expect = chai.expect
|
||||||
|
, mongoose = require('mongoose');
|
||||||
|
|
||||||
|
var user;
|
||||||
|
|
||||||
|
describe('User attributes', function() {
|
||||||
|
before(function(done){
|
||||||
|
user = createUser();
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('_id is a mongoDB ObjectId', function() {
|
||||||
|
expect( user._id ).to.be.an.instanceOf(mongoose.Types.ObjectId);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('email should be a string', function() {
|
||||||
|
expect( user.email ).to.be.a( 'string' );
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
function createUser(){
|
||||||
|
var user = new User({
|
||||||
|
email: getEmail(),
|
||||||
|
password: '__password__',
|
||||||
|
});
|
||||||
|
user.save();
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
|
// create unique email address
|
||||||
|
//
|
||||||
|
// TODO - use an implementation that guarantees string uniqueness
|
||||||
|
function getEmail(){
|
||||||
|
return new Date().getTime() + '@example.com';
|
||||||
|
}
|
Reference in New Issue
Block a user