sharyn
Version:
Combines all the other packages under one.
82 lines (79 loc) • 1.61 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
var _parseObject = _interopRequireDefault(require("./parse-object"));
test('parseObject', function () {
expect((0, _parseObject.default)({})).toEqual({});
expect((0, _parseObject.default)({
a: ''
})).toEqual({});
expect((0, _parseObject.default)({
a: 'a'
})).toEqual({
a: 'a'
});
expect((0, _parseObject.default)({
a: '0'
}, {
integer: 'a'
})).toEqual({
a: 0
});
expect((0, _parseObject.default)({
a: '1'
}, {
integer: 'a'
})).toEqual({
a: 1
});
expect((0, _parseObject.default)({
a: '1'
}, {
integer: ['a']
})).toEqual({
a: 1
});
expect(function () {
return (0, _parseObject.default)({
a: 'x'
}, {
integer: 'a'
});
}).toThrow("Value 'x' of integer property 'a' is not an integer.");
expect((0, _parseObject.default)({
a: 'on'
}, {
toggle: 'a'
})).toEqual({
a: true
});
expect((0, _parseObject.default)({
a: 'on'
}, {
toggle: ['a']
})).toEqual({
a: true
});
expect((0, _parseObject.default)({}, {
toggle: 'a'
})).toEqual({});
expect(function () {
return (0, _parseObject.default)({
a: 'x'
}, {
toggle: 'a'
});
}).toThrow("Value 'x' of toggle property 'a' is not 'on'.");
expect((0, _parseObject.default)({
name: 'Sven',
lastName: '',
age: '30',
isCool: 'on'
}, {
integer: ['age'],
toggle: ['isCool', 'isFun']
})).toEqual({
name: 'Sven',
age: 30,
isCool: true
});
});