Skip to content

Commit

Permalink
Remove admin undefined access (#857)
Browse files Browse the repository at this point in the history
  • Loading branch information
Jade-Codes committed Apr 4, 2024
1 parent 1d4c256 commit a9951d5
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { describe, expect, test, vi } from 'vitest';
import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest';
import { render, screen } from '@testing-library/react';
import Admin from '@/pages/admin/admin';
import '@testing-library/jest-dom';
Expand Down
52 changes: 52 additions & 0 deletions client/src/pages/admin/__tests__/admin-undefined.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest';
import { render, screen } from '@testing-library/react';
import Admin from '@/pages/admin/admin';
import '@testing-library/jest-dom';
import React from 'react';
import { AllProviders } from '@/mocks/setup-tests';
import { MemoryRouter } from 'react-router-dom';

describe('Test Admin Undefined', () => {
beforeEach(() => {
vi.mock('@azure/msal-react', async () => {
return {
useMsal: () => {
return {
instance: {
getActiveAccount: () => {
return {
idTokenClaims: {
},
};
},
},
};
},
};
});
});

afterEach(() => {
vi.resetAllMocks();
});

test('Does not show menu items', async () => {
render(<Admin></Admin>, { wrapper: AllProviders });
expect(screen.queryByText('Users Menu Item')).toBeNull();
expect(screen.queryByText('Data Sources Menu Item')).toBeNull();
expect(screen.queryByText('Plugins Menu Item')).toBeNull();
expect(screen.queryByText('Configuration Menu Item')).toBeNull();
});

test('Shows unauthorised page', async () => {
const route = '/admin';

render(
<MemoryRouter initialEntries={[route]}>
<Admin></Admin>
</MemoryRouter>
);
expect(await screen.findByText('You are unauthorized to view this page.')).toBeInTheDocument();
expect(await screen.findByText('Please contact your administrator.')).toBeInTheDocument();
});
});
2 changes: 1 addition & 1 deletion client/src/pages/admin/__tests__/admin.test.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { describe, expect, test, vi } from 'vitest';
import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest';
import { render, screen } from '@testing-library/react';
import Admin from '@/pages/admin/admin';
import '@testing-library/jest-dom';
Expand Down
2 changes: 1 addition & 1 deletion client/src/pages/admin/admin.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ export const Admin = () => {
if (
activeAccount === null ||
activeAccount === undefined ||
activeAccount?.idTokenClaims?.roles?.includes('IQEngine-Admin') === false
activeAccount?.idTokenClaims?.roles?.includes('IQEngine-Admin') !== true
) {
return (
<>
Expand Down

0 comments on commit a9951d5

Please sign in to comment.