2016-08-03 7 views
1

ノードのアルゴリズムの問​​題をテストするための基本的なモカ単位テストを書いた。私はchaiライブラリユニットテストでモカの例を見て、関数のパラメータが挿入された関数の戻り値をテストしたいと思います。ChaiでMochaのパラメータを使って関数の戻りをテストする

// algorithm.js(関数)

var alg = function(num) { 
    return num; 
} 

module.exportsは= ALG。

//スペック/ algorithm.js(テスト)

var path = require('path'); 
var expect = require('chai').expect; 

var algorithm = require(path.join(__dirname, '..', './algorithm.js')); 

describe('algorithm()', function() { 
    'use strict'; 

    it('exists', function() { 
    expect(algorithm).to.be.a('function'); 

    }); 

    /* ******* What should this be *******  */ 
it('should equal 1', function() { 
    expect(algorithm.alg(1)).to.equal(1); 
}); 
}); 

Iは、ノード設定を生成するヨーマンテスト・ジェネレータを使用しました。 'alg'が関数であるかどうかをテストする最初のテストはパスしますが、ドキュメントを読んだ後で2番目のテストがどうなるべきかわかりません。応答ファイルで

答えて

1

、それは次のようになります。

module.exports = function(param) { // .... }; 

私はそれを考え出した、正しい関数は(FUNC).to.deep.equal(リターン)を期待しています。テストファイル用:

var path = require('path'); 
var expect = require('chai').expect; 

var algorithm = require(path.join(__dirname, '..', './algorithm.js')); 

describe('algorithm()', function() { 
    'use strict'; 

    it('exists', function() { 
    expect(algorithm).to.be.a('function'); 

    }); 

    /* ******* This should be *******  */ 
it('should equal 1', function() { 
    var res = algorithm(1); 
    expect(res).to.deep.equal(1); 
}); 
}); 
関連する問題