motion
Version:
motion - moving development forward
62 lines (45 loc) • 1.29 kB
JavaScript
var _test = require("tap").test;
var is = require("../");
function test(name, fn) {
return _test(name, function(t) {
fn(t, t.ok.bind(t), t.notOk.bind(t));
});
}
test("various", function(t, yes, no) {
function fn() {
}
yes(is.nan(NaN));
no(is.nan(1));
no(is.nan("asdf"));
yes(is.boolean(true));
no(is.boolean(new Boolean(true)));
yes(is.number(1));
no(is.number(new Number(1)));
yes(is.string("asdf"));
no(is.string(new String("asdf")));
yes(is.fn(fn));
no(is.fn({}));
yes(is.object({}));
no(is.object(null));
no(is.object(fn));
yes([null, undefined, true, 1, "asdf"].every(is.primitive));
no([{}, fn, new Number(1), /regexp/].some(is.primitive));
yes(is.array([]));
yes(is.finitenumber(1));
yes(is.finitenumber(1.1));
no(is.finitenumber(NaN));
no(is.finitenumber(Infinity));
no(is.finitenumber(-Infinity));
no(is.finitenumber("1"));
yes(is.someof(1, [-1, 1, 3]));
yes(is.someof("x", [0, 1, "x"]));
no(is.someof(1, ["1"]));
no(is.noneof(1, [-1, 1, 3]));
no(is.noneof("x", [0, 1, "x"]));
yes(is.noneof(1, ["1"]));
yes(is.own({a: 1}, "a"));
no(is.own({a: 1}, "b"));
no(is.own({a: 1}, "toString"));
t.end();
});
;