0

私は、coffeescript を使用してノード アプリを作成し、mocha.js を使用していくつかの TDD を実行しています。誰かがテストを書く正しい方法を教えてください。

やりたいこと: 「ra.do_get」の偽の応答を呼び出してから、メソッド「all_tests」を呼び出して戻り値を分析する

var RequestAdapter = require('./request_adapter');

class QueryHandler
  constructor: (@adapter) ->
    @klass  = "QueryHandler"
    @url    = "http://localhost:#{port[@adapter]}/"
    logger.debug "[#{@klass}] creating .."
    //RequestAdapter is another class doing some GET/POST etc (using request NPM)
    @ra   = new RequestAdapter(@url)

  all_tests: (cb) ->
    logger.info "#{@adapter}: requesting all test - #{adapter_apis.ALL_TESTS_SESSION}"
    _url = @url + adapter_apis.ALL_TESTS_SESSION

    @ra.do_get _url, (error , response) ->
      if error
        return cb({error: true, message: "#{@adapter} adapter errored out"})
      else
        return cb(null,response)
    return   

ありがとう

4

1 に答える 1

0

最後にそれは働いた。もともとスパイしようとしていたobjが間違っていた

describe('#all_tests()', function(){
 it('should return all tests', function(done){

   var qh_obj = new qh("FAKE_ADAPTER");
   var spy    = sinon.spy(qh_obj.ra,'do_get');

   qh_obj.all_tests(function(e,r) {});
   (spy.callCount).should.equal(1);

   done();

 });
}); // describe
于 2013-05-18T18:50:37.460 に答える