aiparking_api/node_modules/ow-lite/test/number.js
2020-02-02 15:24:30 +07:00

84 lines
2.6 KiB
JavaScript

import test from 'ava'
import m from '..'
test('number', t => {
t.notThrows(() => m(1, m.number))
t.notThrows(() => m(1, m.number))
t.throws(() => m('12', m.number))
t.throws(() => m('12', m.number, 'foo'))
})
test('number.gt', t => {
t.notThrows(() => m(10, m.number.gt(5)))
t.notThrows(() => m(10, m.number.gt(9)))
t.throws(() => m(10, m.number.gt(10)))
t.throws(() => m(10, m.number.gt(11)))
t.throws(() => m(10, m.number.gt(20)))
})
test('number.gte', t => {
t.notThrows(() => m(10, m.number.gte(5)))
t.notThrows(() => m(10, m.number.gte(10)))
t.throws(() => m(10, m.number.gte(11)))
t.throws(() => m(10, m.number.gte(20)))
})
test('number.lt', t => {
t.notThrows(() => m(10, m.number.lt(20)))
t.notThrows(() => m(10, m.number.lt(11)))
t.throws(() => m(10, m.number.lt(10)))
t.throws(() => m(10, m.number.lt(9)))
t.throws(() => m(10, m.number.lt(0)))
})
test('number.lte', t => {
t.notThrows(() => m(10, m.number.lte(20)))
t.notThrows(() => m(10, m.number.lte(10)))
t.throws(() => m(10, m.number.lte(9)))
t.throws(() => m(10, m.number.lte(0)))
})
test('number.eq', t => {
t.notThrows(() => m(10, m.number.eq(10)))
t.throws(() => m(10, m.number.eq(5)))
})
test('number.integer', t => {
t.notThrows(() => m(10, m.number.integer))
t.throws(() => m(10.1, m.number.integer))
})
test('number.positive', t => {
t.notThrows(() => m(1, m.number.positive))
t.throws(() => m(-1, m.number.positive))
})
test('number.negative', t => {
t.notThrows(() => m(-1, m.number.negative))
t.throws(() => m(1, m.number.negative))
})
/*
test('number.finite', t => {
t.notThrows(() => m(10, m.number.finite))
t.throws(() => m(Infinity, m.number.finite), 'Expected number to be finite, got Infinity')
})
test('number.infinite', t => {
t.notThrows(() => m(Infinity, m.number.infinite))
t.throws(() => m(10, m.number.infinite), 'Expected number to be infinite, got 10')
})
test('number.inRange', t => {
t.notThrows(() => m(10, m.number.inRange(0, 20)))
t.notThrows(() => m(10, m.number.inRange(10, 20)))
t.notThrows(() => m(10, m.number.inRange(0, 10)))
t.notThrows(() => m(10, m.number.inRange(0, 10)))
t.notThrows(() => m(10, m.number.inRange(0, 10)))
t.throws(() => m(10, m.number.inRange(0, 9)), 'Expected number to be in range [0..9], got 10')
t.throws(() => m(10, m.number.inRange(0, 9), 'foo'), 'Expected number `foo` to be in range [0..9], got 10')
t.throws(() => m(10, m.number.inRange(0, 9), 'foo'), 'Expected number `foo` to be in range [0..9], got 10')
t.throws(() => m(10, m.number.inRange(11, 20)), 'Expected number to be in range [11..20], got 10')
})
*/