import test from 'ava'; import m from '..'; test('undefined', t => { let x; // tslint:disable-line:prefer-const const y = 12; t.notThrows(() => m(undefined, m.undefined)); t.notThrows(() => m(x, m.undefined)); t.throws(() => m(y as any, m.undefined), 'Expected argument to be of type `undefined` but received type `number`'); t.throws(() => m(null as any, m.undefined), 'Expected argument to be of type `undefined` but received type `null`'); t.throws(() => m('foo' as any, m.undefined), 'Expected argument to be of type `undefined` but received type `string`'); });