Created
August 29, 2012 18:33
-
-
Save vincentmac/3516767 to your computer and use it in GitHub Desktop.
Riak-js: User Model Test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// models.user.js | |
// User Model Tests | |
// Chai Assertion Library | |
var chai = require('chai') | |
, expect = chai.expect | |
, should = chai.should() | |
, User = require('../models/user'); | |
chai.Assertion.includeStack = true; // defaults to false | |
describe('User Model', function() { | |
var userdata = { | |
provider: 'local' | |
, id: '' | |
, accountId: '' | |
, name: { | |
first: 'Vincent' | |
, last: 'Mac' } | |
, email: '[email protected]'.toLowerCase() | |
, username: 'TestUser'.toLowerCase() | |
, password: 'Secret' | |
}; | |
var usermeta = { | |
headers: { | |
'X-Riak-index-email_bin': userdata.email, | |
'X-Riak-index-username_bin': userdata.username | |
}}; | |
var user = new User(userdata); | |
before(function(done) { | |
this.timeout(5000); | |
user.create(usermeta, function(err, data, meta) { | |
if (err) { | |
// console.log('couldn\'t find user'); | |
return done(err); | |
} | |
user.data.id = meta.key; | |
console.log('[USER KEY]', user.data.id); | |
// console.log('[USER DATA] ', user.data); | |
// console.log('[USER META] ', meta); | |
user.save(user.data.id, user.data, usermeta, done); | |
done(); | |
}); | |
}); | |
after(function() { | |
var testuser = new User(); | |
console.log('[USER DEL KEY]', user.data.id); | |
testuser.remove(user.data.id, function(err, data, meta) { | |
if(err) console.warn(err); | |
console.log('[USER DEL STATUS] ', meta.statusCode); | |
}); | |
// testuser.remove(user.data.id); | |
// done(); | |
}); | |
describe('user properties', function() { | |
it('should be ok', function() { | |
expect(1).should.be.ok; | |
}); | |
// it('should return testuser for username', function() { | |
// var testuser = new User(); | |
// testuser.data = testuser.get(user.data.id); | |
// console.log('[TESTUSER] ',user.data.id); | |
// testuser.should.have.property('data.username', 'testuser'); | |
// }); | |
// it('should return [email protected] for email', function() { | |
// user.should.have.property('data.email', '[email protected]'); | |
// }); | |
}); | |
describe('delete key', function() { | |
it('should return status code 204', function(){ | |
var testuser = new User(); | |
console.log('[USER DEL KEY]', user.data.id); | |
return testuser.remove(user.data.id, function(err, data, meta) { | |
if(err) console.warn(err); | |
console.log('[USER DEL STATUS] ', meta.statusCode); | |
console.log('[USER DEL META] ', meta); | |
return expect(meta.statusCode).to.equal(204); | |
}); | |
}); | |
}); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment