Skip to content

Commit

Permalink
ARTESCA-11299: Add test to prevent the edition of Artesca default loc…
Browse files Browse the repository at this point in the history
…ation
  • Loading branch information
ChengYanJin committed Jul 2, 2024
1 parent 77dd4d4 commit bf03275
Show file tree
Hide file tree
Showing 4 changed files with 86 additions and 18 deletions.
17 changes: 11 additions & 6 deletions src/js/mock/managementClientMSWHandlers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -144,17 +144,22 @@ export const LOCATIONS = {
name: 'ring-nick',
objectId: '99a06f79-c62c-11ec-b993-7e8a0ab79998',
},
'us-east-1': {
isBuiltin: true,
locationType: 'location-file-v1',
name: 'us-east-1',
objectId: '95dbedf5-9888-11ec-8565-1ac2af7d1e53',
},
[azureblobstorage]: {
locationType: 'location-azure-v1',
name: azureblobstorage,
details: {},
},
'us-east-1': {
details: {
bootstrapList: [
'artesca-storage-service-hdservice-proxy.xcore.svc:18888',
],
repoId: null,
},
locationType: 'location-scality-hdclient-v2',
name: 'us-east-1',
objectId: '22f31240-4bd3-11ee-98b3-1e5b6f897bc7',
},
};

export const ENDPOINTS = [
Expand Down
4 changes: 1 addition & 3 deletions src/react/locations/__tests__/LocationEditor.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,11 @@ describe('LocationEditor', () => {
);
await selectClick(selector);
await userEvent.keyboard('{arrowup}');

expect(
container.querySelector('.sc-select__option--is-focused')?.textContent,
).toBe('Storage Service for ARTESCA');
).toBe('Scality ARTESCA S3');

[
'Scality ARTESCA S3',
'Scality RING with S3 Connector',
'Amazon S3',
'Google Cloud Storage',
Expand Down
65 changes: 65 additions & 0 deletions src/react/locations/__tests__/LocationList.test.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
import {
screen,
waitFor,
waitForElementToBeRemoved,
within,
} from '@testing-library/react';
import { setupServer } from 'msw/node';
import { rest } from 'msw';
import {
getConfigOverlay,
getStorageConsumptionMetricsHandlers,
} from '../../../js/mock/managementClientMSWHandlers';
import {
TEST_API_BASE_URL,
mockOffsetSize,
renderWithRouterMatch,
zenkoUITestConfig,
} from '../../utils/testUtil';
import { INSTANCE_ID } from '../../actions/__tests__/utils/testUtil';
import { LocationsList } from '../LocationsList';

const server = setupServer(
getConfigOverlay(TEST_API_BASE_URL, INSTANCE_ID),
...getStorageConsumptionMetricsHandlers(
zenkoUITestConfig.managementEndpoint,
INSTANCE_ID,
),
rest.get(
`${TEST_API_BASE_URL}/api/v1/instance/${INSTANCE_ID}/status`,
(req, res, ctx) => res(ctx.json({})),
),
);

describe('LocationList', () => {
beforeAll(() => {
jest.setTimeout(20_000);
mockOffsetSize(500, 100);
server.listen({ onUnhandledRequest: 'error' });
});
afterEach(() => {
server.resetHandlers();
});
afterAll(() => {
server.close();
});
it('should disable the delete button for default location', async () => {
//S
renderWithRouterMatch(<LocationsList />);
//E
await waitForElementToBeRemoved(() => [
...screen.queryAllByText(/Loading/i),
]);
const defaultArtescaLocationRow = screen.getByRole('row', {
name: /us-east-1 Storage Service for ARTESCA/i,
});
//V
await waitFor(() => {
expect(
within(defaultArtescaLocationRow).getByRole('button', {
name: /Edit Location/i,
}),
).toBeDisabled();
});
});
});
18 changes: 9 additions & 9 deletions src/react/workflow/__tests__/TransitionForm.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -200,15 +200,15 @@ describe('TransitionForm', () => {
await waitFor(() =>
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
);
await userEvent.click(
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
Expand All @@ -233,15 +233,15 @@ describe('TransitionForm', () => {
await waitFor(() =>
screen.getByRole('option', {
name: new RegExp(
`${versionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${versionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
);
await userEvent.click(
screen.getByRole('option', {
name: new RegExp(
`${versionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${versionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
Expand Down Expand Up @@ -336,15 +336,15 @@ describe('TransitionForm', () => {
await waitFor(() =>
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
);
await userEvent.click(
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
Expand Down Expand Up @@ -384,15 +384,15 @@ describe('TransitionForm', () => {
await waitFor(() =>
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
);
await userEvent.click(
screen.getByRole('option', {
name: new RegExp(
`${notVersionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${notVersionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
Expand Down Expand Up @@ -435,7 +435,7 @@ describe('TransitionForm', () => {
userEvent.click(
screen.getByRole('option', {
name: new RegExp(
`${versionedBucket} \\(us-east-1 / Local Filesystem \\)`,
`${versionedBucket} \\(us-east-1 / Storage Service \\)`,
'i',
),
}),
Expand Down

0 comments on commit bf03275

Please sign in to comment.