react-application-core
Version:
A react-based application core for the business applications.
60 lines • 2.81 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var multifield_plugin_1 = require("./multifield.plugin");
describe('MultiFieldPlugin', function () {
it('test1', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: [{ id: 1 }, { id: 2 }],
});
var result = multiFieldPlugin.onAdd({ id: 2 });
expect(result.addArray).toEqual([{ id: 2 }]);
expect(result.removeArray).toEqual([]);
});
it('test2', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: [{ id: 1 }, { id: 2 }],
});
var result = multiFieldPlugin.onDelete({ id: 2 });
expect(result.addArray).toEqual([]);
expect(result.removeArray).toEqual([{ id: 2 }]);
});
it('test3', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: { add: [], remove: [{ id: 1 }], edit: [], source: [{ id: 1 }, { id: 2 }] },
});
var result = multiFieldPlugin.onAdd({ id: 1 });
expect(result.addArray).toEqual([]);
expect(result.removeArray).toEqual([]);
});
it('test4', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: { add: [{ id: 3 }], remove: [], edit: [], source: [{ id: 1 }, { id: 2 }] },
});
var result = multiFieldPlugin.onDelete({ id: 3 });
expect(result.addArray).toEqual([]);
expect(result.removeArray).toEqual([]);
});
it('test4', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: { add: [{ id: 3 }], remove: [{ id: 4 }], edit: [], source: [{ id: 1 }, { id: 2 }] },
});
var result = multiFieldPlugin.onAdd({ id: 5 });
expect(result.addArray).toEqual([{ id: 3 }, { id: 5 }]);
expect(result.removeArray).toEqual([{ id: 4 }]);
var result2 = multiFieldPlugin.onDelete({ id: 3 });
expect(result2.addArray).toEqual([]);
expect(result2.removeArray).toEqual([{ id: 4 }]);
var result3 = multiFieldPlugin.onAdd({ id: 4 });
expect(result3.addArray).toEqual([{ id: 3 }]);
expect(result3.removeArray).toEqual([]);
});
it('test5', function () {
var multiFieldPlugin = new multifield_plugin_1.MultiFieldPlugin({
value: { add: [{ id: 3 }], remove: [{ id: 4 }], edit: [], source: [{ id: 1 }, { id: 2 }] },
});
var result = multiFieldPlugin.onDelete({ id: 5 });
expect(result.addArray).toEqual([{ id: 3 }]);
expect(result.removeArray).toEqual([{ id: 4 }]);
});
});
//# sourceMappingURL=multifield.plugin.spec.js.map