UNPKG

unleash-server

Version:

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

44 lines 1.67 kB
import { faker } from '@faker-js/faker'; import dbInit from '../helpers/database-init.js'; import getLogger from '../../fixtures/no-logger.js'; let db; let stores; let clientInstanceStore; beforeAll(async () => { db = await dbInit('client_application_store_e2e_serial', getLogger); stores = db.stores; clientInstanceStore = stores.clientInstanceStore; }); afterAll(async () => { await db.destroy(); }); test('Upserting an application keeps values not provided intact', async () => { const clientInstance = { appName: faker.internet.domainName(), instanceId: faker.string.uuid(), environment: 'development', sdkVersion: 'unleash-client-node:6.6.0', sdkType: 'backend', }; await clientInstanceStore.upsert(clientInstance); const initial = await clientInstanceStore.get(clientInstance); expect(initial).toMatchObject(clientInstance); const update = { appName: clientInstance.appName, instanceId: clientInstance.instanceId, environment: clientInstance.environment, clientIp: '::2', }; await clientInstanceStore.upsert(update); const updated = await clientInstanceStore.get(clientInstance); const expectedAfterUpdate = { clientIp: '::2', sdkVersion: 'unleash-client-node:6.6.0', sdkType: 'backend', }; expect(updated).toMatchObject(expectedAfterUpdate); await clientInstanceStore.bulkUpsert([clientInstance]); const doubleUpdated = await clientInstanceStore.get(clientInstance); expect(doubleUpdated).toMatchObject(expectedAfterUpdate); }); //# sourceMappingURL=client-instance-store.e2e.test.js.map