json-rpc-protocol
Version:
JSON-RPC 2 protocol messages parsing and formatting
66 lines • 2.75 kB
JavaScript
/* eslint-env jest */
Object.defineProperty(exports, "__esModule", { value: true });
var types_1 = require("./types");
// ===================================================================
describe('types', function () {
describe('isNumber()', function () {
it('true on numbers', function () {
expect(types_1.isNumber(1)).toBe(true);
expect(types_1.isNumber(0)).toBe(true);
expect(types_1.isNumber(-1)).toBe(true);
expect(types_1.isNumber(1.1)).toBe(true);
});
it('false on non-numbers', function () {
expect(types_1.isNumber(null)).toBe(false);
expect(types_1.isNumber('1')).toBe(false);
expect(types_1.isNumber('a')).toBe(false);
expect(types_1.isNumber({})).toBe(false);
expect(types_1.isNumber([])).toBe(false);
});
it('false on Infinity', function () {
expect(types_1.isNumber(Infinity)).toBe(false);
});
});
describe('isInteger()', function () {
it('true on integers', function () {
expect(types_1.isInteger(1)).toBe(true);
expect(types_1.isInteger(0)).toBe(true);
expect(types_1.isInteger(-1)).toBe(true);
});
it('false on non-integers', function () {
expect(types_1.isObject(null)).toBe(false);
expect(types_1.isInteger(1.1)).toBe(false);
expect(types_1.isInteger('1')).toBe(false);
});
});
describe('isString()', function () {
it('true on strings', function () {
expect(types_1.isString('')).toBe(true);
expect(types_1.isString('a')).toBe(true);
expect(types_1.isString('1')).toBe(true);
expect(types_1.isString('test')).toBe(true);
});
it('false on non-strings', function () {
expect(types_1.isString(null)).toBe(false);
expect(types_1.isString(1)).toBe(false);
expect(types_1.isString({})).toBe(false);
expect(types_1.isString([])).toBe(false);
});
});
describe('isObject()', function () {
it('true on objects', function () {
expect(types_1.isObject({})).toBe(true);
expect(types_1.isObject({ a: 1 })).toBe(true);
expect(types_1.isObject([])).toBe(true);
expect(types_1.isObject(Function)).toBe(true);
});
it('false on non-objects', function () {
expect(types_1.isObject(null)).toBe(false);
expect(types_1.isObject(1)).toBe(false);
expect(types_1.isObject(1.1)).toBe(false);
expect(types_1.isObject('a')).toBe(false);
});
});
});
//# sourceMappingURL=types.spec.js.map
;