Home Manual Reference Source Test

test/is.test.js

import {expect} from 'chai';
import is from './../src/lib/is'

class TestClass {

}

describe('is', ()=>{
	it('Should return false if object is null', ()=>{
		expect(is(null,String)).equal(false);
		expect(is(undefined,String)).equal(false);
		expect(is(null,null)).equal(false);
		expect(is(undefined,undefined)).equal(false);
	});
	it('Should return true  for correct object type', ()=>{
		expect(is("5",String)).equal(true);
		expect(is(5,String)).equal(false);
		expect(is(5,Number)).equal(true);
		expect(is([],Array)).equal(true);
		expect(is([],Object)).equal(true);
		expect(is({},Object)).equal(true);
		expect(is({},Array)).equal(false);
		expect(is(true,Boolean)).equal(true);
	});
	it('Should return true  for instance of specific class if Object passed as Type', ()=>{
		let inst = new TestClass();
		expect(is(inst,TestClass)).equal(true);
		expect(is(inst,Object)).equal(true);
	});
});