@rudderstack/integrations-lib
Version:
89 lines • 11.6 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tests_1 = require("./tests");
describe('filter', () => {
const testCases = [
{
name: 'should return all test cases when no skip or only flags are present',
input: [{ name: 'test1' }, { name: 'test2' }, { name: 'test3' }],
expected: [{ name: 'test1' }, { name: 'test2' }, { name: 'test3' }],
},
{
name: 'should filter out skipped test cases',
input: [{ name: 'test1', skip: true }, { name: 'test2' }, { name: 'test3', skip: true }],
expected: [{ name: 'test2' }],
},
{
name: 'should return only the test cases marked with only',
input: [{ name: 'test1' }, { name: 'test2', only: true }, { name: 'test3' }],
expected: [{ name: 'test2', only: true }],
},
{
name: 'should return only non-skipped test cases marked with only',
input: [
{ name: 'test1', only: true },
{ name: 'test2', only: true, skip: true },
{ name: 'test3', only: true },
],
expected: [
{ name: 'test1', only: true },
{ name: 'test3', only: true },
],
},
{
name: 'should handle empty array input',
input: [],
expected: [],
},
{
name: 'should return all test cases marked with only',
input: [{ name: 'test1', only: true }, { name: 'test2' }, { name: 'test3', only: true }],
expected: [
{ name: 'test1', only: true },
{ name: 'test3', only: true },
],
},
{
name: 'should return empty array when all tests are skipped',
input: [
{ name: 'test1', skip: true },
{ name: 'test2', skip: true },
{ name: 'test3', skip: true },
],
expected: [],
},
{
name: 'should return non-skipped tests when no only flag is present',
input: [{ name: 'test1', skip: true }, { name: 'test2' }, { name: 'test3', skip: false }],
expected: [{ name: 'test2' }, { name: 'test3', skip: false }],
},
{
name: 'should handle undefined skip and only properties',
input: [
{ name: 'test1', skip: undefined },
{ name: 'test2', only: undefined },
{ name: 'test3' },
],
expected: [
{ name: 'test1', skip: undefined },
{ name: 'test2', only: undefined },
{ name: 'test3' },
],
},
{
name: 'should maintain original object properties',
input: [
{ name: 'test1', extraProp: 1 },
{ name: 'test2', extraProp: 2, skip: true },
{ name: 'test3', extraProp: 3, only: true },
],
expected: [{ name: 'test3', extraProp: 3, only: true }],
},
];
testCases.forEach(({ name, input, expected }) => {
it(name, () => {
expect((0, tests_1.filter)(input)).toEqual(expected);
});
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdHMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy90ZXN0cy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQStDO0FBWS9DLFFBQVEsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO0lBQ3RCLE1BQU0sU0FBUyxHQUFlO1FBQzVCO1lBQ0UsSUFBSSxFQUFFLHFFQUFxRTtZQUMzRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUNoRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztTQUNwRTtRQUNEO1lBQ0UsSUFBSSxFQUFFLHNDQUFzQztZQUM1QyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDeEYsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7U0FDOUI7UUFDRDtZQUNFLElBQUksRUFBRSxvREFBb0Q7WUFDMUQsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUM1RSxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUks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TyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTthQUM1QztZQUNELFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUN4RDtLQUNGLENBQUM7SUFFRixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7UUFDOUMsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUU7WUFDWixNQUFNLENBQUMsSUFBQSxjQUFNLEVBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZVRlc3RDYXNlLCBmaWx0ZXIgfSBmcm9tICcuL3Rlc3RzJztcblxudHlwZSBDdXN0b21UZXN0Q2FzZSA9IEJhc2VUZXN0Q2FzZSAmIHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufTtcblxuaW50ZXJmYWNlIFRlc3RJdGVtIHtcbiAgbmFtZTogc3RyaW5nO1xuICBleHBlY3RlZDogQ3VzdG9tVGVzdENhc2VbXTtcbiAgaW5wdXQ6IEN1c3RvbVRlc3RDYXNlW107XG59XG5cbmRlc2NyaWJlKCdmaWx0ZXInLCAoKSA9PiB7XG4gIGNvbnN0IHRlc3RDYXNlczogVGVzdEl0ZW1bXSA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnc2hvdWxkIHJldHVybiBhbGwgdGVzdCBjYXNlcyB3aGVuIG5vIHNraXAgb3Igb25seSBmbGFncyBhcmUgcHJlc2VudCcsXG4gICAgICBpbnB1dDogW3sgbmFtZTogJ3Rlc3QxJyB9LCB7IG5hbWU6ICd0ZXN0MicgfSwgeyBuYW1lOiAndGVzdDMnIH1dLFxuICAgICAgZXhwZWN0ZWQ6IFt7IG5hbWU6ICd0ZXN0MScgfSwgeyBuYW1lOiAndGVzdDInIH0sIHsgbmFtZTogJ3Rlc3QzJyB9XSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG91bGQgZmlsdGVyIG91dCBza2lwcGVkIHRlc3QgY2FzZXMnLFxuICAgICAgaW5wdXQ6IFt7IG5hbWU6ICd0ZXN0MScsIHNraXA6IHRydWUgfSwgeyBuYW1lOiAndGVzdDInIH0sIHsgbmFtZTogJ3Rlc3QzJywgc2tpcDogdHJ1ZSB9XSxcbiAgICAgIGV4cGVjdGVkOiBbeyBuYW1lOiAndGVzdDInIH1dLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3Nob3VsZCByZXR1cm4gb25seSB0aGUgdGVzdCBjYXNlcyBtYXJrZWQgd2l0aCBvbmx5JyxcbiAgICAgIGlucHV0OiBbeyBuYW1lOiAndGVzdDEnIH0sIHsgbmFtZTogJ3Rlc3QyJywgb25seTogdHJ1ZSB9LCB7IG5hbWU6ICd0ZXN0MycgfV0sXG4gICAgICBleHBlY3RlZDogW3sgbmFtZTogJ3Rlc3QyJywgb25seTogdHJ1ZSB9XSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG91bGQgcmV0dXJuIG9ubHkgbm9uLXNraXBwZWQgdGVzdCBjYXNlcyBtYXJrZWQgd2l0aCBvbmx5JyxcbiAgICAgIGlucHV0OiBbXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QxJywgb25seTogdHJ1ZSB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MicsIG9ubHk6IHRydWUsIHNraXA6IHRydWUgfSxcbiAgICAgICAgeyBuYW1lOiAndGVzdDMnLCBvbmx5OiB0cnVlIH0sXG4gICAgICBdLFxuICAgICAgZXhwZWN0ZWQ6IFtcbiAgICAgICAgeyBuYW1lOiAndGVzdDEnLCBvbmx5OiB0cnVlIH0sXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QzJywgb25seTogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG91bGQgaGFuZGxlIGVtcHR5IGFycmF5IGlucHV0JyxcbiAgICAgIGlucHV0OiBbXSxcbiAgICAgIGV4cGVjdGVkOiBbXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG91bGQgcmV0dXJuIGFsbCB0ZXN0IGNhc2VzIG1hcmtlZCB3aXRoIG9ubHknLFxuICAgICAgaW5wdXQ6IFt7IG5hbWU6ICd0ZXN0MScsIG9ubHk6IHRydWUgfSwgeyBuYW1lOiAndGVzdDInIH0sIHsgbmFtZTogJ3Rlc3QzJywgb25seTogdHJ1ZSB9XSxcbiAgICAgIGV4cGVjdGVkOiBbXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QxJywgb25seTogdHJ1ZSB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MycsIG9ubHk6IHRydWUgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnc2hvdWxkIHJldHVybiBlbXB0eSBhcnJheSB3aGVuIGFsbCB0ZXN0cyBhcmUgc2tpcHBlZCcsXG4gICAgICBpbnB1dDogW1xuICAgICAgICB7IG5hbWU6ICd0ZXN0MScsIHNraXA6IHRydWUgfSxcbiAgICAgICAgeyBuYW1lOiAndGVzdDInLCBza2lwOiB0cnVlIH0sXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QzJywgc2tpcDogdHJ1ZSB9LFxuICAgICAgXSxcbiAgICAgIGV4cGVjdGVkOiBbXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdzaG91bGQgcmV0dXJuIG5vbi1za2lwcGVkIHRlc3RzIHdoZW4gbm8gb25seSBmbGFnIGlzIHByZXNlbnQnLFxuICAgICAgaW5wdXQ6IFt7IG5hbWU6ICd0ZXN0MScsIHNraXA6IHRydWUgfSwgeyBuYW1lOiAndGVzdDInIH0sIHsgbmFtZTogJ3Rlc3QzJywgc2tpcDogZmFsc2UgfV0sXG4gICAgICBleHBlY3RlZDogW3sgbmFtZTogJ3Rlc3QyJyB9LCB7IG5hbWU6ICd0ZXN0MycsIHNraXA6IGZhbHNlIH1dLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3Nob3VsZCBoYW5kbGUgdW5kZWZpbmVkIHNraXAgYW5kIG9ubHkgcHJvcGVydGllcycsXG4gICAgICBpbnB1dDogW1xuICAgICAgICB7IG5hbWU6ICd0ZXN0MScsIHNraXA6IHVuZGVmaW5lZCB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MicsIG9ubHk6IHVuZGVmaW5lZCB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MycgfSxcbiAgICAgIF0sXG4gICAgICBleHBlY3RlZDogW1xuICAgICAgICB7IG5hbWU6ICd0ZXN0MScsIHNraXA6IHVuZGVmaW5lZCB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MicsIG9ubHk6IHVuZGVmaW5lZCB9LFxuICAgICAgICB7IG5hbWU6ICd0ZXN0MycgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnc2hvdWxkIG1haW50YWluIG9yaWdpbmFsIG9iamVjdCBwcm9wZXJ0aWVzJyxcbiAgICAgIGlucHV0OiBbXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QxJywgZXh0cmFQcm9wOiAxIH0sXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QyJywgZXh0cmFQcm9wOiAyLCBza2lwOiB0cnVlIH0sXG4gICAgICAgIHsgbmFtZTogJ3Rlc3QzJywgZXh0cmFQcm9wOiAzLCBvbmx5OiB0cnVlIH0sXG4gICAgICBdLFxuICAgICAgZXhwZWN0ZWQ6IFt7IG5hbWU6ICd0ZXN0MycsIGV4dHJhUHJvcDogMywgb25seTogdHJ1ZSB9XSxcbiAgICB9LFxuICBdO1xuXG4gIHRlc3RDYXNlcy5mb3JFYWNoKCh7IG5hbWUsIGlucHV0LCBleHBlY3RlZCB9KSA9PiB7XG4gICAgaXQobmFtZSwgKCkgPT4ge1xuICAgICAgZXhwZWN0KGZpbHRlcihpbnB1dCkpLnRvRXF1YWwoZXhwZWN0ZWQpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19