2

根据should.js Spec这应该有效:

should.strictEqual(shape.code, code)

但我得到:

TypeError: Object #<Object> has no method 'strictEqual'

我错过了什么?

4

2 回答 2

2

看起来像文档中的错误。在脚本equal中定义为“严格相等”:

/**
 * Assert strict equal.
 *
 * @param {Mixed} val
 * @param {String} description
 * @api public
 */

equal: function(val, desc){
  this.assert(
      val.valueOf() === this.obj
    , 'expected ' + this.inspect + ' to equal ' + i(val) + (desc ? " | " + desc : "")
    , 'expected ' + this.inspect + ' to not equal ' + i(val) + (desc ? " | " + desc : "")
    , val);
  return this;
},

...并且strictEqual没有出现在脚本中。

于 2012-05-31T13:38:00.557 回答
1

Should.js 提供.equal () 来检查身份 (===),并提供 .eql () 来检查相等 (==)。

参考: https ://github.com/visionmedia/should.js/blob/9feffef939197002ce16708c27036f7f744e8131/lib/should.js#L277-L309

于 2012-07-21T22:20:29.960 回答