Skip to content

Instantly share code, notes, and snippets.

@Wizek
Created June 2, 2011 00:16
Show Gist options
  • Save Wizek/1003655 to your computer and use it in GitHub Desktop.
Save Wizek/1003655 to your computer and use it in GitHub Desktop.
// Add lib, models and node_modules to path
var path = require('path')
require.paths.unshift(
path.join(__dirname, '/../lib')
, path.join(__dirname, '/../lib/models')
, path.join(__dirname, '/../node_modules')
)
var hlpr = require('helpers')
, db = require('db')
, Tag = require('tag')
, User = require('user')
, Invite = require('invite')
, app = require('app')
, testCase = require('nodeunit').testCase
module.exports = testCase({
setUp: function(cb) {
db.enhancedConnect({success:cb})
}
, tearDown: function(cb) {
console.log('shutting DB');
db.end()
cb()
}
, 'invite': function(assert) {
console.log("asdasd")
assert.expect(1)
Invite.send(1, 2, function(err, token) {
if (err) {
console.log(err)
} else {
assert.match(token, /^[\da-f]{64}$/)
}
assertt.ok('asdasd')
assert.done()
})
}
, 'modelUser': function(assert) {
assert.expect(9)
var q = new hlpr.Queue
var testuser1 = new User(1)
var testuser2 = new User(2)
q.add(function(next) {
testuser2.removeTag('PERSON_MENTIONED', function(err) {
assert.isNull(err)
next()
})
})
q.add(function(next) {
testuser2.addTag('PERSON_MENTIONED', 1, function(err, id) {
assert.isNull(err)
assert.equal(id, 6)
next()
})
})
q.add(function(next) {
Tag.exists('PERSON_MENTIONED', function(err, id) {
assert.equal(id, 6)
next()
})
})
q.add(function(next) {
Tag.exists('TOTALLY_IMPOSSIBLE_THAT_THIS_TAG_EXISTS', function(err, id) {
assert.equal(id, false)
next()
})
})
q.add(function(next) {
testuser1.hasAnyTag(['PERSON_MENTIONED', 'PERSON_INVITED'], function(err, results) {
assert.eql(results, [ { tag_id: 7 } ])
next()
})
})
q.add(function(next) {
testuser2.hasAnyTag(['PERSON_MENTIONED', 'PERSON_INVITED'], function(err, results) {
assert.eql(results, [ { tag_id: 6 } ])
next()
})
})
q.add(function(next) {
testuser2.hasTag('PERSON_MENTIONED', function(err, result) {
assert.eql(result, { reference_id: 2, tag_id: 6 })
next()
})
})
q.add(function(next) {
testuser2.hasAllTags(['PERSON_MENTIONED'], function(err, result) {
assert.eql(result, [ { reference_id: 2, tag_id: 6 } ])
next()
assert.done()
})
})
q.run()
}
/*, 'userLoginLogout': function(assert) {
assert.(app, {
url: '/interact/login'
, timeout: 500
, method: 'POST'
, headers: {
'Content-type': 'application/json'
}
, data: JSON.stringify({
user: 'Wizek'
, pass: '2'
})
}, {
body: '{"error":"retry"}'
, status: 200
})
assert.response(app, {
url: '/interact/login'
//, timeout: 3000
, method: 'POST'
, headers: {
'Content-type': 'application/json'
}
, data: JSON.stringify({
user: 'Wizek'
, pass: '1'
})
}, {
body: '{"ok":1,"redirect":"/"}'
, status: 200
})
/*var user = new User(req.session.userid)
user.logout(req.session)
}*/
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment