test: Add additional cases for triggerAppConfigUpdate method

This commit is contained in:
Faruk AYDIN
2024-10-24 17:10:47 +02:00
parent 62a1072682
commit b47e859225

View File

@@ -160,21 +160,61 @@ describe('AppAuthClient model', () => {
}); });
}); });
it('triggerAppConfigUpdate should trigger an update in related app config', async () => { describe('triggerAppConfigUpdate', () => {
await createAppConfig({ key: 'gitlab' }); it('should trigger an update in related app config', async () => {
await createAppConfig({ key: 'gitlab' });
const appAuthClient = await createAppAuthClient({ const appAuthClient = await createAppAuthClient({
appKey: 'gitlab', appKey: 'gitlab',
});
const appConfigBeforeUpdateSpy = vi.spyOn(
AppConfig.prototype,
'$beforeUpdate'
);
await appAuthClient.triggerAppConfigUpdate();
expect(appConfigBeforeUpdateSpy).toHaveBeenCalledOnce();
}); });
const appConfigBeforeUpdateSpy = vi.spyOn( it('should update related AppConfig after creating an instance', async () => {
AppConfig.prototype, const appConfig = await createAppConfig({
'$beforeUpdate' key: 'gitlab',
); disabled: false,
shared: true,
});
await appAuthClient.triggerAppConfigUpdate(); await createAppAuthClient({
appKey: 'gitlab',
active: true,
});
expect(appConfigBeforeUpdateSpy).toHaveBeenCalledOnce(); const refetchedAppConfig = await appConfig.$query();
expect(refetchedAppConfig.connectionAllowed).toBe(true);
});
it('should update related AppConfig after updating an instance', async () => {
const appConfig = await createAppConfig({
key: 'gitlab',
disabled: false,
shared: true,
});
const appAuthClient = await createAppAuthClient({
appKey: 'gitlab',
active: false,
});
let refetchedAppConfig = await appConfig.$query();
expect(refetchedAppConfig.connectionAllowed).toBe(false);
await appAuthClient.$query().patchAndFetch({ active: true });
refetchedAppConfig = await appConfig.$query();
expect(refetchedAppConfig.connectionAllowed).toBe(true);
});
}); });
it('$beforeInsert should call AppAuthClient.encryptData', async () => { it('$beforeInsert should call AppAuthClient.encryptData', async () => {