chai-asserttype

a chai plugin for type assertions, support typescript

安装

npm install chai chai-asserttype-extra

作为 chai 插件安装

const ChaiPluginAssertType = require('chai-asserttype-extra');
import ChaiPluginAssertType = require('chai-asserttype-extra');
import ChaiPluginAssertType from 'chai-asserttype-extra';
import { ChaiPlugin as ChaiPluginAssertType } from 'chai-asserttype-extra';

选择你最喜欢的安装方式

当你使用 .install 时,它会尝试让当前的 chai 支持 TypeScript 中的新方法,让你无需使用 @ts-ignore

const chai = ChaiPluginAssertType.install();
const chai = ChaiPluginAssertType.install(require('chai'));
const chai = require('chai-asserttype-extra').install()
const chai = require('chai');
chai.use(ChaiPluginAssertType);
const chai = require('chai');
chai.use(ChaiPluginAssertType);

使用

这个用法来自 GaneshSPatil/chai-asserttype

支持 .xxx().xxx 两种方式

ChaiPluginAssertType.list()

console.log(ChaiPluginAssertType.list());
/*
[ 'array',
  'boolean',
  'date',
  'float',
  'function',
  'integer',
  'null',
  'number',
  'object',
  'regexp',
  'string',
  'undefined' ]
*/

数字

断言 actual 的类型是 Number。

expect(1).to.be.number();
expect(0).to.be.number();
expect(-1).to.be.number();
expect(63465789908753).to.be.number();
expect(27.11).to.be.number();

expect(1).to.be.number;
expect(0).to.be.number;
expect(-1).to.be.number;
expect(63465789908753).to.be.number;
expect(27.11).to.be.number;

整数

expect(27).to.be.integer();
expect(27).to.be.integer;

浮点数

expect(27.11).to.be.float();
expect(27.11).to.be.float;

字符串

断言 actual 的类型是 String。

expect('').to.be.string();
expect('foobar').to.be.string();

布尔值

断言 actual 的类型是 Boolean。

expect(true).to.be.boolean();
expect(false).to.be.boolean();

对象

断言 actual 的类型是 Object。

expect({}).to.be.object();

数组

断言 actual 的类型是 Array。

expect([]).to.be.array();
expect([1, 2, 3]).to.be.array();

日期

断言 actual 的类型是日期。

expect(new Date()).to.be.date();

函数

断言 actual 的类型是 Function。

expect(() => true).to.be.function();