2017-03-15 10 views
1

とルートを表現し、私は戻ってきておく:以下テストは私がマングースクエリを持って、私のルートをテストしようとしていますマングースクエリ

AssertionError: expected undefined to equal true 

私のテストの基本的なテンプレートです。現時点では、res.jsonを呼び出すことを確認したいだけです。

ルートはUserモデルに

route.js

const User = require('../../../models/users/users'); 

const listUsers = (req, res) => { 
    User.find((err, users) => { 
    if (err) res.send(err); 

    res.json(users); 
    }) 
}; 

module.exports = listUsers; 

test.js

const expect = require('chai').expect; 
const sinon = require('sinon'); 

const listUsers = require('../../../../src/routes/api/users/listUsers'); 

describe('listUsers',() => { 
    it('retrieves users',() => { 
    const req = {}; 
    const res = {}; 
    const spy = res.json = sinon.spy; 

    listUsers(req, res); 
    expect(spy.calledOnce).to.equal(true); 
    }) 
}); 

答えて

0

見つける関数は2つのパラメータを取りますが、すべてのエントリを返します。最初のものは検索の基準であり、2つ目はコールバック関数です。あなたが最初のパラメータを見逃したように見えます。

あなたはあなたのための基準があるすべてのユーザーを見つけるにしたいので - {}

をこれはあなたの問題を解決します -

User.find({}, (err, users) => { 
    if (err) res.send(err); 

    res.json(users); 
    }) 
関連する問題