Skip to content

Instantly share code, notes, and snippets.

@nkzawa
Last active September 9, 2019 13:18
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save nkzawa/4971592 to your computer and use it in GitHub Desktop.
Save nkzawa/4971592 to your computer and use it in GitHub Desktop.
Testing mongoose models with mocha
language: node_js
node_js:
- 0.8
services:
- mongodb
mongoose = require 'mongoose'
mongoose.connect 'mongodb://localhost/test'
connection = mongoose.connection
before (done) ->
connection.on 'open', ->
connection.db.dropDatabase done
after (done) ->
connection.close done
module.exports = ->
afterEach (done) ->
connection.db.dropDatabase done
{
"name": "testing-mongoose-models-with-mocha",
"version": "1.0.0",
"scripts": {
"test": "PATH=./node_modules/.bin:$PATH; mocha --compilers coffee:coffee-script src"
},
"dependencies": {
"coffee-script": "1.4.0",
"mongoose": "3.5.6"
},
"devDependencies": {
"mocha": "1.8.1",
"chai": "1.5.0"
}
}
{expect} = require 'chai'
db = require './db'
User = require './user'
describe 'User', ->
# call when testing db
db()
describe '#save', ->
it 'should save user', (done) ->
data = {email: 'foo@example.com'}
user = new User data
user.save (err, user) ->
done err if err
expect(user.email).to.equal data.email
expect(user.created).to.exist
done()
mongoose = require 'mongoose'
schema = new mongoose.Schema
email: String
created: {type: Date, default: Date.now}
module.exports = mongoose.model 'User', schema
@brianconnoly
Copy link

Is it unfinished?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment