mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-10-12 14:34:16 +00:00
52 lines
1.4 KiB
TypeScript
52 lines
1.4 KiB
TypeScript
import { beforeEach, describe, expect, it } from "vitest";
|
|
|
|
import { CLOUD_UPGRADE_FEATURE } from "@/types/cloud-upgrade";
|
|
|
|
import { useCloudUpgradeStore } from "./store";
|
|
|
|
describe("useCloudUpgradeStore", () => {
|
|
beforeEach(() => {
|
|
useCloudUpgradeStore.setState({
|
|
activeFeature: null,
|
|
retainedFeature: CLOUD_UPGRADE_FEATURE.GENERAL,
|
|
returnFocusElement: null,
|
|
});
|
|
});
|
|
|
|
it("retains the opened feature when the modal closes", () => {
|
|
// Given
|
|
useCloudUpgradeStore
|
|
.getState()
|
|
.openCloudUpgrade(CLOUD_UPGRADE_FEATURE.ALERTS);
|
|
|
|
// When
|
|
useCloudUpgradeStore.getState().closeCloudUpgrade();
|
|
|
|
// Then
|
|
expect(useCloudUpgradeStore.getState().activeFeature).toBeNull();
|
|
expect(useCloudUpgradeStore.getState().retainedFeature).toBe(
|
|
CLOUD_UPGRADE_FEATURE.ALERTS,
|
|
);
|
|
});
|
|
|
|
it("updates the retained feature when another upgrade opens", () => {
|
|
// Given
|
|
useCloudUpgradeStore
|
|
.getState()
|
|
.openCloudUpgrade(CLOUD_UPGRADE_FEATURE.ALERTS);
|
|
|
|
// When
|
|
useCloudUpgradeStore
|
|
.getState()
|
|
.openCloudUpgrade(CLOUD_UPGRADE_FEATURE.AWS_ORGANIZATIONS);
|
|
|
|
// Then
|
|
expect(useCloudUpgradeStore.getState().activeFeature).toBe(
|
|
CLOUD_UPGRADE_FEATURE.AWS_ORGANIZATIONS,
|
|
);
|
|
expect(useCloudUpgradeStore.getState().retainedFeature).toBe(
|
|
CLOUD_UPGRADE_FEATURE.AWS_ORGANIZATIONS,
|
|
);
|
|
});
|
|
});
|