Module 基礎模組

模組assert

斷言測試模組,如果測試值為假,則報錯,報錯行為可設定繼續運行或錯誤拋出

引用方法:

1
var assert = require('assert');

或者透過test模組引用:

1 2
var test = require('test'); var assert = test.assert;

或者透過test.setup配置:

1
require("test").setup();

靜態函數

Function

測試數值為真,為假則斷言失敗

1 2
static assert.Function(Value actual = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

ok

測試數值為真,為假則斷言失敗

1 2
static assert.ok(Value actual = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

notOk

測試數值為假,為真則斷言失敗

1 2
static assert.notOk(Value actual = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

equal

測試數值等於預期值,不相等則斷言失敗

1 2 3
static assert.equal(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

notEqual

測試數值不等於預期值,相等則斷言失敗

1 2 3
static assert.notEqual(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

strictEqual

測試數值嚴格等於預期值,不相等則斷言失敗

1 2 3
static assert.strictEqual(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

notStrictEqual

測試數值不嚴格等於預期值,相等則斷言失敗

1 2 3
static assert.notStrictEqual(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

deepEqual

測試數值深度等於預期值,不相等則斷言失敗

1 2 3
static assert.deepEqual(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

notDeepEqual

測試數值不深度等於預期值,相等則斷言失敗

1 2 3
static assert.notDeepEqual(Value actual = undefined, Value expected = undefined, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

closeTo

測試數值近似等於預期值,否則斷言失敗

1 2 3 4
static assert.closeTo(Value actual, Value expected, Value delta, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • delta: Value, 近似的小數精度
  • msg: String, 斷言失敗時的提示訊息

notCloseTo

測試數值不近似等於預期值,否則斷言失敗

1 2 3 4
static assert.notCloseTo(Value actual, Value expected, Value delta, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • delta: Value, 近似的小數精度
  • msg: String, 斷言失敗時的提示訊息

lessThan

測試數值小於預期值,大於或等於則斷言失敗

1 2 3
static assert.lessThan(Value actual, Value expected, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

notLessThan

測試數值不小於預期值,小於則斷言失敗

1 2 3
static assert.notLessThan(Value actual, Value expected, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

greaterThan

測試數值大於預期值,小於或等於則斷言失敗

1 2 3
static assert.greaterThan(Value actual, Value expected, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

notGreaterThan

測試數值不大於預期值,大於則斷言失敗

1 2 3
static assert.notGreaterThan(Value actual, Value expected, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • expected: Value, 預期的數值
  • msg: String, 斷言失敗時的提示訊息

exist

測試變數存在,為假則斷言失敗

1 2
static assert.exist(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

notExist

測試變數不存在,為真則斷言失敗

1 2
static assert.notExist(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isTrue

測試數值為布林值真,否則斷言失敗

1 2
static assert.isTrue(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotTrue

測試數值不為布林值真,否則斷言失敗

1 2
static assert.isNotTrue(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isFalse

測試數值為布林值假,否則斷言失敗

1 2
static assert.isFalse(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotFalse

測試數值不為布林值假,否則斷言失敗

1 2
static assert.isNotFalse(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNull

測試數值為Null,否則斷言失敗

1 2
static assert.isNull(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotNull

測試數值不為Null,否則斷言失敗

1 2
static assert.isNotNull(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isUndefined

測試數值為undefined,否則斷言失敗

1 2
static assert.isUndefined(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isDefined

測試數值不為undefined,否則斷言失敗

1 2
static assert.isDefined(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isFunction

測試數值為函數,否則斷言失敗

1 2
static assert.isFunction(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotFunction

測試數值不為函數,否則斷言失敗

1 2
static assert.isNotFunction(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isObject

測試數值為對象,否則斷言失敗

1 2
static assert.isObject(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotObject

測試數值不為對象,否則斷言失敗

1 2
static assert.isNotObject(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isArray

測試數值為數組,否則斷言失敗

1 2
static assert.isArray(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotArray

測試數值不為數組,否則斷言失敗

1 2
static assert.isNotArray(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isString

測試數值為字串,否則斷言失敗

1 2
static assert.isString(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotString

測試數值不為字串,否則斷言失敗

1 2
static assert.isNotString(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNumber

測試數值為數字,否則斷言失敗

1 2
static assert.isNumber(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotNumber

測試數值不為數字,否則斷言失敗

1 2
static assert.isNotNumber(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isBoolean

測試數值為布爾,否則斷言失敗

1 2
static assert.isBoolean(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

isNotBoolean

測試數值不為布爾,否則斷言失敗

1 2
static assert.isNotBoolean(Value actual, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • msg: String, 斷言失敗時的提示訊息

typeOf

測試數值為給定類型,否則斷言失敗

1 2 3
static assert.typeOf(Value actual, String type, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • type: String, 指定的類型
  • msg: String, 斷言失敗時的提示訊息

notTypeOf

測試數值不為給定類型,否則斷言失敗

1 2 3
static assert.notTypeOf(Value actual, String type, String msg = "");

呼叫參數:

  • actual: Value, 要測試的數值
  • type: String, 指定的類型
  • msg: String, 斷言失敗時的提示訊息

property

測試物件中包含指定屬性,否則斷言失敗

1 2 3
static assert.property(Value object, Value prop, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性
  • msg: String, 斷言失敗時的提示訊息

notProperty

測試物件中不包含指定屬性,否則斷言失敗

1 2 3
static assert.notProperty(Value object, Value prop, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性
  • msg: String, 斷言失敗時的提示訊息

deepProperty

深度測試物件中包含指定屬性,否則斷言失敗

1 2 3
static assert.deepProperty(Value object, Value prop, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性,以「.」分割
  • msg: String, 斷言失敗時的提示訊息

notDeepProperty

深度測試物件中不包含指定屬性,否則斷言失敗

1 2 3
static assert.notDeepProperty(Value object, Value prop, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性,以「.」分割
  • msg: String, 斷言失敗時的提示訊息

propertyVal

測試物件中指定屬性的值為給定值,否則斷言失敗

1 2 3 4
static assert.propertyVal(Value object, Value prop, Value value, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性
  • value: Value, 給定的值
  • msg: String, 斷言失敗時的提示訊息

propertyNotVal

測試物件中指定屬性的值不為給定值,否則斷言失敗

1 2 3 4
static assert.propertyNotVal(Value object, Value prop, Value value, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性
  • value: Value, 給定的值
  • msg: String, 斷言失敗時的提示訊息

deepPropertyVal

深度測試物件中指定屬性的值為給定值,否則斷言失敗

1 2 3 4
static assert.deepPropertyVal(Value object, Value prop, Value value, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性,以「.」分割
  • value: Value, 給定的值
  • msg: String, 斷言失敗時的提示訊息

deepPropertyNotVal

深度測試物件中指定屬性的值不為給定值,否則斷言失敗

1 2 3 4
static assert.deepPropertyNotVal(Value object, Value prop, Value value, String msg = "");

呼叫參數:

  • object: Value, 要測試的對象
  • prop: Value, 要測試的屬性,以「.」分割
  • value: Value, 給定的值
  • msg: String, 斷言失敗時的提示訊息

throws

測試給定的程式碼會拋出錯誤,未拋出則斷言失敗

1 2
static assert.throws(Function block, String msg = "");

呼叫參數:

  • block: Function, 指定測試的程式碼,以函數形式給出
  • msg: String, 斷言失敗時的提示訊息

doesNotThrow

測試給定的程式碼不會拋出錯誤,拋出則斷言失敗

1 2
static assert.doesNotThrow(Function block, String msg = "");

呼叫參數:

  • block: Function, 指定測試的程式碼,以函數形式給出
  • msg: String, 斷言失敗時的提示訊息

ifError

如果參數為真,則拋出

1
static assert.ifError(Value object = undefined);

呼叫參數:

  • object: Value, 參數