Chai Stats

Chai 断言库的统计和额外的数值断言。

安装

Node.js

Chai 间谍在 npm 上可用。

  $ npm install chai-stats

浏览器

在包含 chai.js 之后包含 chai-stats.js

<script src="chai-stats.js"></script>

插件

如果您在浏览器中使用 chai-stats,则无需执行任何操作。它将检测全局命名空间中的 chai 并自动使用它。

如果您使用的是节点,这里有一些有用的信息。

var chai = require('chai')
  , chaiStats = require('chai-stats');

chai.use(chaiStats);

var should = chai.should()
  , expect = chai.expect; 

API 参考

.almost.equal(expected, [precision])

与 NumPy 的 assert_almost_equal 相同,适用于标量。断言接近相等:abs(expected-actual) < 0.5 * 10**(-decimal)

expect(3.1415).to.almost.equal(3.14159, 3);
assert.almostEqual(3.1416, 3.14159, 3, 'these numbers are almost equal');

.deepAlmostEqual(actual, expected, [decimal, message])

与 NumPy 的 assert_almost_equal 相同,适用于叶子都是数字的对象。断言接近相等:abs(expected-actual) < 0.5 * 10**(-decimal) 适用于每个叶子。

expect({ pi: 3.1416 }).to.almost.eql({ pi: 3.14159 }, 3);
assert.deepAlmostEqual({ pi: 3.1416 }, { pi: 3.14159 }, 3);

.sum

使用数字数组的总和修改断言主体,以便可以使用 chai 的核心断言进行比较。

expect([ 1, 2, 3 ]).to.have.sum.equal(6);
expect([ 1, 2, 3 ]).to.have.sum.above(5);
expect([ 1, 2, 3 ]).to.have.sum.below(7);

.mean

使用数字数组的平均值修改断言主体,以便可以使用 chai 的核心断言进行比较。

expect([ 1, 2, 3 ]).to.have.mean.equal(2);
expect([ 1, 2, 3 ]).to.have.mean.above(1.5);
expect([ 1, 2, 3 ]).to.have.mean.below(2.5);

.deviation

使用数字数组的标准差修改断言主体,以便可以使用 chai 的核心断言进行比较。

expect([ 1, 2, 3, 4 ]).to.have.deviation.almost.equal(1.290, 2);

测试

测试使用 mocha 在 BDD 接口中编写。节点测试可以使用 make test 执行。浏览器测试可以通过打开 test/browser/index.html 来查看。

贡献者

 repo age : 3 months ago
 commits  : 21
 active   : 5 days
 files    : 14
 authors  :
    17  Jake Luer               81.0%
     4  josher19                19.0%

许可证

(MIT 许可证)

版权所有 (c) 2012 Jake Luer jake@alogicalparadox.com

特此免费授予获得此软件及其相关文档文件(“软件”)副本的任何人无限制地处理软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,以及允许获得软件的人员这样做,但须符合以下条件:

以上版权声明和本许可声明应包含在软件的所有副本或重要部分中。

该软件按“原样”提供,不提供任何形式的明示或暗示的担保,包括但不限于适销性、特定用途的适用性和非侵权的担保。在任何情况下,作者或版权持有人均不对因软件或使用或以其他方式处理软件而产生的任何索赔、损害或其他责任承担任何责任,无论是在合同、侵权行为或其他方面。