Skip to content

Commit 797bb5b

Browse files
authored
Merge pull request #12068 from corya-akamai/UIE-8726-iam-is-enabled-check
feat[UIE-8726]: IAM disable API check when feature flag is off
2 parents d2875aa + a495492 commit 797bb5b

3 files changed

Lines changed: 12 additions & 2 deletions

File tree

packages/manager/src/features/IAM/hooks/useIsIAMEnabled.test.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,10 @@ describe('useIsIAMEnabled', () => {
6363

6464
await waitFor(() => {
6565
expect(result.current.isIAMBeta).toBe(false);
66+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
6667
expect(result.current.isIAMEnabled).toBe(true);
68+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
69+
expect(queryMocks.useAccountPermissions).toHaveBeenCalledWith(true);
6770
});
6871
});
6972

@@ -87,7 +90,10 @@ describe('useIsIAMEnabled', () => {
8790

8891
await waitFor(() => {
8992
expect(result.current.isIAMBeta).toBe(false);
93+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
9094
expect(result.current.isIAMEnabled).toBe(false);
95+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
96+
expect(queryMocks.useAccountPermissions).toHaveBeenCalledWith(false);
9197
});
9298
});
9399

@@ -110,7 +116,10 @@ describe('useIsIAMEnabled', () => {
110116

111117
await waitFor(() => {
112118
expect(result.current.isIAMBeta).toBe(true);
119+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
113120
expect(result.current.isIAMEnabled).toBe(false);
121+
// eslint-disable-next-line testing-library/no-wait-for-multiple-assertions
122+
expect(queryMocks.useAccountPermissions).toHaveBeenCalledWith(true);
114123
});
115124
});
116125
});

packages/manager/src/features/IAM/hooks/useIsIAMEnabled.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { useAccountPermissions } from 'src/queries/iam/iam';
88
*/
99
export const useIsIAMEnabled = () => {
1010
const flags = useFlags();
11-
const { data: rolePermissions } = useAccountPermissions();
11+
const { data: rolePermissions } = useAccountPermissions(flags.iam?.enabled);
1212

1313
const hasAccountAccess = rolePermissions?.account_access?.length;
1414
const hasEntityAccess = rolePermissions?.entity_access?.length;

packages/manager/src/queries/iam/iam.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,12 @@ export const useAccountUserPermissions = (username?: string) => {
1717
});
1818
};
1919

20-
export const useAccountPermissions = () => {
20+
export const useAccountPermissions = (enabled = true) => {
2121
return useQuery<IamAccountPermissions, APIError[]>({
2222
...iamQueries.permissions,
2323
...queryPresets.oneTimeFetch,
2424
...queryPresets.noRetry,
25+
enabled,
2526
});
2627
};
2728

0 commit comments

Comments
 (0)