rr-table
Version:
Responsive and customizable React Table
73 lines (70 loc) • 6.9 kB
JavaScript
;
var _index = _interopRequireDefault(require("./index"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
describe('selectValueInObject', function () {
var data = {
name: 'Jordan',
surname: 'Michael',
age: 35,
pets: ['cat', 'dog']
};
it('should return the right key normalized', function () {
var key = {
display: 'name',
normalize: function normalize(value) {
return value && value.toUpperCase();
}
};
var expected = 'JORDAN';
var value = (0, _index.default)({
key: key,
data: data
});
expect(value).toEqual(expected);
});
it('should return the right key normalized when display is an array', function () {
var key = {
display: ['surname', 'name'],
normalize: function normalize(value) {
return value && value.toUpperCase();
}
};
var expected = 'MICHAEL - JORDAN';
var value = (0, _index.default)({
key: key,
data: data
});
expect(value).toEqual(expected);
});
it('should return replaceBy normalized when the value is undefined', function () {
var key = {
display: 'bla',
normalize: function normalize(value) {
return value && value.toUpperCase();
},
replaceBy: 'name'
};
var expected = 'JORDAN';
var value = (0, _index.default)({
key: key,
data: data
});
expect(value).toEqual(expected);
});
it('should return the first value of replaceBy as an array that is not undefined, normalized when the value is undefined', function () {
var key = {
display: 'bla',
normalize: function normalize(value) {
return value && value.toUpperCase();
},
replaceBy: ['haha', 'name']
};
var expected = 'JORDAN';
var value = (0, _index.default)({
key: key,
data: data
});
expect(value).toEqual(expected);
});
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9zZWxlY3RWYWx1ZUluT2JqZWN0L3NlbGVjdFZhbHVlSW5PYmplY3QudGVzdC5qcyJdLCJuYW1lcyI6WyJkZXNjcmliZSIsImRhdGEiLCJuYW1lIiwic3VybmFtZSIsImFnZSIsInBldHMiLCJpdCIsImtleSIsImRpc3BsYXkiLCJub3JtYWxpemUiLCJ2YWx1ZSIsInRvVXBwZXJDYXNlIiwiZXhwZWN0ZWQiLCJleHBlY3QiLCJ0b0VxdWFsIiwicmVwbGFjZUJ5Il0sIm1hcHBpbmdzIjoiOztBQUFBOzs7O0FBRUFBLFFBQVEsQ0FBQyxxQkFBRCxFQUF3QixZQUFNO0FBQ3BDLE1BQU1DLElBQUksR0FBRztBQUNYQyxJQUFBQSxJQUFJLEVBQUUsUUFESztBQUVYQyxJQUFBQSxPQUFPLEVBQUUsU0FGRTtBQUdYQyxJQUFBQSxHQUFHLEVBQUUsRUFITTtBQUlYQyxJQUFBQSxJQUFJLEVBQUUsQ0FBQyxLQUFELEVBQVEsS0FBUjtBQUpLLEdBQWI7QUFPQUMsRUFBQUEsRUFBRSxDQUFDLHdDQUFELEVBQTJDLFlBQU07QUFDakQsUUFBTUMsR0FBRyxHQUFHO0FBQUVDLE1BQUFBLE9BQU8sRUFBRSxNQUFYO0FBQW1CQyxNQUFBQSxTQUFTLEVBQUUsbUJBQUFDLEtBQUs7QUFBQSxlQUFJQSxLQUFLLElBQUlBLEtBQUssQ0FBQ0MsV0FBTixFQUFiO0FBQUE7QUFBbkMsS0FBWjtBQUNBLFFBQU1DLFFBQVEsR0FBRyxRQUFqQjtBQUNBLFFBQU1GLEtBQUssR0FBRyxvQkFBb0I7QUFBRUgsTUFBQUEsR0FBRyxFQUFIQSxHQUFGO0FBQU9OLE1BQUFBLElBQUksRUFBSkE7QUFBUCxLQUFwQixDQUFkO0FBQ0FZLElBQUFBLE1BQU0sQ0FBQ0gsS0FBRCxDQUFOLENBQWNJLE9BQWQsQ0FBc0JGLFFBQXRCO0FBQ0QsR0FMQyxDQUFGO0FBT0FOLEVBQUFBLEVBQUUsQ0FBQyxpRUFBRCxFQUFvRSxZQUFNO0FBQzFFLFFBQU1DLEdBQUcsR0FBRztBQUFFQyxNQUFBQSxPQUFPLEVBQUUsQ0FBQyxTQUFELEVBQVksTUFBWixDQUFYO0FBQWdDQyxNQUFBQSxTQUFTLEVBQUUsbUJBQUFDLEtBQUs7QUFBQSxlQUFJQSxLQUFLLElBQUlBLEtBQUssQ0FBQ0MsV0FBTixFQUFiO0FBQUE7QUFBaEQsS0FBWjtBQUNBLFFBQU1DLFFBQVEsR0FBRyxrQkFBakI7QUFDQSxRQUFNRixLQUFLLEdBQUcsb0JBQW9CO0FBQUVILE1BQUFBLEdBQUcsRUFBSEEsR0FBRjtBQUFPTixNQUFBQSxJQUFJLEVBQUpBO0FBQVAsS0FBcEIsQ0FBZDtBQUNBWSxJQUFBQSxNQUFNLENBQUNILEtBQUQsQ0FBTixDQUFjSSxPQUFkLENBQXNCRixRQUF0QjtBQUNELEdBTEMsQ0FBRjtBQU9BTixFQUFBQSxFQUFFLENBQUMsZ0VBQUQsRUFBbUUsWUFBTTtBQUN6RSxRQUFNQyxHQUFHLEdBQUc7QUFDVkMsTUFBQUEsT0FBTyxFQUFFLEtBREM7QUFFVkMsTUFBQUEsU0FBUyxFQUFFLG1CQUFBQyxLQUFLO0FBQUEsZUFBSUEsS0FBSyxJQUFJQSxLQUFLLENBQUNDLFdBQU4sRUFBYjtBQUFBLE9BRk47QUFHVkksTUFBQUEsU0FBUyxFQUFFO0FBSEQsS0FBWjtBQUtBLFFBQU1ILFFBQVEsR0FBRyxRQUFqQjtBQUNBLFFBQU1GLEtBQUssR0FBRyxvQkFBb0I7QUFBRUgsTUFBQUEsR0FBRyxFQUFIQSxHQUFGO0FBQU9OLE1BQUFBLElBQUksRUFBSkE7QUFBUCxLQUFwQixDQUFkO0FBQ0FZLElBQUFBLE1BQU0sQ0FBQ0gsS0FBRCxDQUFOLENBQWNJLE9BQWQsQ0FBc0JGLFFBQXRCO0FBQ0QsR0FUQyxDQUFGO0FBV0FOLEVBQUFBLEVBQUUsQ0FBQyxzSEFBRCxFQUF5SCxZQUFNO0FBQy9ILFFBQU1DLEdBQUcsR0FBRztBQUNWQyxNQUFBQSxPQUFPLEVBQUUsS0FEQztBQUVWQyxNQUFBQSxTQUFTLEVBQUUsbUJBQUFDLEtBQUs7QUFBQSxlQUFJQSxLQUFLLElBQUlBLEtBQUssQ0FBQ0MsV0FBTixFQUFiO0FBQUEsT0FGTjtBQUdWSSxNQUFBQSxTQUFTLEVBQUUsQ0FBQyxNQUFELEVBQVMsTUFBVDtBQUhELEtBQVo7QUFLQSxRQUFNSCxRQUFRLEdBQUcsUUFBakI7QUFDQSxRQUFNRixLQUFLLEdBQUcsb0JBQW9CO0FBQUVILE1BQUFBLEdBQUcsRUFBSEEsR0FBRjtBQUFPTixNQUFBQSxJQUFJLEVBQUpBO0FBQVAsS0FBcEIsQ0FBZDtBQUNBWSxJQUFBQSxNQUFNLENBQUNILEtBQUQsQ0FBTixDQUFjSSxPQUFkLENBQXNCRixRQUF0QjtBQUNELEdBVEMsQ0FBRjtBQVVELENBM0NPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc2VsZWN0VmFsdWVJbk9iamVjdCBmcm9tICcuL2luZGV4JztcblxuZGVzY3JpYmUoJ3NlbGVjdFZhbHVlSW5PYmplY3QnLCAoKSA9PiB7XG4gIGNvbnN0IGRhdGEgPSB7XG4gICAgbmFtZTogJ0pvcmRhbicsXG4gICAgc3VybmFtZTogJ01pY2hhZWwnLFxuICAgIGFnZTogMzUsXG4gICAgcGV0czogWydjYXQnLCAnZG9nJ10sXG4gIH07XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdGhlIHJpZ2h0IGtleSBub3JtYWxpemVkJywgKCkgPT4ge1xuICAgIGNvbnN0IGtleSA9IHsgZGlzcGxheTogJ25hbWUnLCBub3JtYWxpemU6IHZhbHVlID0+IHZhbHVlICYmIHZhbHVlLnRvVXBwZXJDYXNlKCkgfTtcbiAgICBjb25zdCBleHBlY3RlZCA9ICdKT1JEQU4nO1xuICAgIGNvbnN0IHZhbHVlID0gc2VsZWN0VmFsdWVJbk9iamVjdCh7IGtleSwgZGF0YSB9KTtcbiAgICBleHBlY3QodmFsdWUpLnRvRXF1YWwoZXhwZWN0ZWQpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0aGUgcmlnaHQga2V5IG5vcm1hbGl6ZWQgd2hlbiBkaXNwbGF5IGlzIGFuIGFycmF5JywgKCkgPT4ge1xuICAgIGNvbnN0IGtleSA9IHsgZGlzcGxheTogWydzdXJuYW1lJywgJ25hbWUnXSwgbm9ybWFsaXplOiB2YWx1ZSA9PiB2YWx1ZSAmJiB2YWx1ZS50b1VwcGVyQ2FzZSgpIH07XG4gICAgY29uc3QgZXhwZWN0ZWQgPSAnTUlDSEFFTCAtIEpPUkRBTic7XG4gICAgY29uc3QgdmFsdWUgPSBzZWxlY3RWYWx1ZUluT2JqZWN0KHsga2V5LCBkYXRhIH0pO1xuICAgIGV4cGVjdCh2YWx1ZSkudG9FcXVhbChleHBlY3RlZCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHJlcGxhY2VCeSBub3JtYWxpemVkIHdoZW4gdGhlIHZhbHVlIGlzIHVuZGVmaW5lZCcsICgpID0+IHtcbiAgICBjb25zdCBrZXkgPSB7XG4gICAgICBkaXNwbGF5OiAnYmxhJyxcbiAgICAgIG5vcm1hbGl6ZTogdmFsdWUgPT4gdmFsdWUgJiYgdmFsdWUudG9VcHBlckNhc2UoKSxcbiAgICAgIHJlcGxhY2VCeTogJ25hbWUnLFxuICAgIH07XG4gICAgY29uc3QgZXhwZWN0ZWQgPSAnSk9SREFOJztcbiAgICBjb25zdCB2YWx1ZSA9IHNlbGVjdFZhbHVlSW5PYmplY3QoeyBrZXksIGRhdGEgfSk7XG4gICAgZXhwZWN0KHZhbHVlKS50b0VxdWFsKGV4cGVjdGVkKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdGhlIGZpcnN0IHZhbHVlIG9mIHJlcGxhY2VCeSBhcyBhbiBhcnJheSB0aGF0IGlzIG5vdCB1bmRlZmluZWQsIG5vcm1hbGl6ZWQgd2hlbiB0aGUgdmFsdWUgaXMgdW5kZWZpbmVkJywgKCkgPT4ge1xuICAgIGNvbnN0IGtleSA9IHtcbiAgICAgIGRpc3BsYXk6ICdibGEnLFxuICAgICAgbm9ybWFsaXplOiB2YWx1ZSA9PiB2YWx1ZSAmJiB2YWx1ZS50b1VwcGVyQ2FzZSgpLFxuICAgICAgcmVwbGFjZUJ5OiBbJ2hhaGEnLCAnbmFtZSddLFxuICAgIH07XG4gICAgY29uc3QgZXhwZWN0ZWQgPSAnSk9SREFOJztcbiAgICBjb25zdCB2YWx1ZSA9IHNlbGVjdFZhbHVlSW5PYmplY3QoeyBrZXksIGRhdGEgfSk7XG4gICAgZXhwZWN0KHZhbHVlKS50b0VxdWFsKGV4cGVjdGVkKTtcbiAgfSk7XG59KTtcbiJdfQ==