feat: Release floating entitlements on license:clear command (no-changelog) (#9603)

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
This commit is contained in:
Cornelius Suermann
2024-06-07 13:13:31 +02:00
committed by GitHub
parent 3b10c0f6aa
commit 44ecab73d7
2 changed files with 35 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
import { InternalHooks } from '@/InternalHooks';
import { License } from '@/License';
import { LoadNodesAndCredentials } from '@/LoadNodesAndCredentials';
import { ClearLicenseCommand } from '@/commands/license/clear';
import { Config } from '@oclif/core';
import { mockInstance } from '../../shared/mocking';
const oclifConfig = new Config({ root: __dirname });
beforeAll(async () => {
mockInstance(InternalHooks);
mockInstance(LoadNodesAndCredentials);
await oclifConfig.load();
});
test('license:clear invokes shutdown() to release any floating entitlements', async () => {
const cmd = new ClearLicenseCommand([], oclifConfig);
await cmd.init();
const license = mockInstance(License);
await cmd.run();
expect(license.init).toHaveBeenCalledTimes(1);
expect(license.shutdown).toHaveBeenCalledTimes(1);
jest.restoreAllMocks();
});