UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.

24 lines 1.26 kB
import { ClientSpecService } from './client-spec-service.js'; import getLogger from '../../test/fixtures/no-logger.js'; test('ClientSpecService validation', async () => { const service = new ClientSpecService({ getLogger }); const fn = service.versionSupportsSpec.bind(service); expect(fn('segments', undefined)).toEqual(false); expect(fn('segments', '')).toEqual(false); expect(() => fn('segments', 'a')).toThrow('Invalid prefix'); expect(() => fn('segments', '1.2')).toThrow('Invalid SemVer'); expect(() => fn('segments', 'v1.2.3')).toThrow('Invalid prefix'); expect(() => fn('segments', '=1.2.3')).toThrow('Invalid prefix'); expect(() => fn('segments', '1.2.3.4')).toThrow('Invalid SemVer'); }); test('ClientSpecService segments', async () => { const service = new ClientSpecService({ getLogger }); const fn = service.versionSupportsSpec.bind(service); expect(fn('segments', '0.0.0')).toEqual(false); expect(fn('segments', '1.0.0')).toEqual(false); expect(fn('segments', '4.1.9')).toEqual(false); expect(fn('segments', '4.2.0')).toEqual(true); expect(fn('segments', '4.2.1')).toEqual(true); expect(fn('segments', '5.0.0')).toEqual(true); }); //# sourceMappingURL=client-spec-service.test.js.map