mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-10-15 06:01:31 +08:00

* feat: setup the app context to fetch users,licenses and feature flags * feat: added global event listeners for after_login event * feat: remove redux from app state and private route * feat: syncronize the approutes file * feat: cleanup the private routes * feat: handle login and logout * feat: cleanup the app layout file * feat: cleanup and syncronize side nav item * fix: minor small re-render issue * feat: parallel processing for sync calls for faster bootup of application * feat: some refactoring for private routes * fix: entire application too much re-rendering * fix: remove redux * feat: some more corrections * feat: fix all the files except signup * feat: add app provider to the test-utils * feat: should fix a lot of tests * chore: fix more tests * chore: fix more tests * feat: fix some tests and corrected the redux mock * feat: delete snapshot * fix: test cases * fix: pipeline actions test cases * fix: billing test cases * feat: update the signup API to accept isAnonymous and hasOptedUpdates * chore: cleanup the console logs * fix: indefinite loading on manage licenses screen * fix: better handling and route to something_went_wrong in case of qs down * fix: signup for subsequent users * chore: update test-utils * fix: jerky behaviour on entering the home page * feat: handle the retention for login context flow * fix: do not let users workaround workspace blocked screen
112 lines
3.5 KiB
TypeScript
112 lines
3.5 KiB
TypeScript
import EditAlertChannels from 'container/EditAlertChannels';
|
|
import {
|
|
editAlertChannelInitialValue,
|
|
editSlackDescriptionDefaultValue,
|
|
slackTitleDefaultValue,
|
|
} from 'mocks-server/__mockdata__/alerts';
|
|
import { render, screen } from 'tests/test-utils';
|
|
|
|
import { testLabelInputAndHelpValue } from './testUtils';
|
|
|
|
const successNotification = jest.fn();
|
|
const errorNotification = jest.fn();
|
|
jest.mock('hooks/useNotifications', () => ({
|
|
__esModule: true,
|
|
useNotifications: jest.fn(() => ({
|
|
notifications: {
|
|
success: successNotification,
|
|
error: errorNotification,
|
|
},
|
|
})),
|
|
}));
|
|
|
|
describe('Should check if the edit alert channel is properly displayed ', () => {
|
|
beforeEach(() => {
|
|
render(<EditAlertChannels initialValue={editAlertChannelInitialValue} />);
|
|
});
|
|
afterEach(() => {
|
|
jest.clearAllMocks();
|
|
});
|
|
it('Should check if the title is "Edit Notification Channels"', () => {
|
|
expect(screen.getByText('page_title_edit')).toBeInTheDocument();
|
|
});
|
|
|
|
it('Should check if the name label and textbox are displayed properly ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_channel_name',
|
|
testId: 'channel-name-textbox',
|
|
value: 'Dummy-Channel',
|
|
});
|
|
});
|
|
it('Should check if Send resolved alerts label and checkbox are displayed properly and the checkbox is checked ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_send_resolved',
|
|
testId: 'field-send-resolved-checkbox',
|
|
});
|
|
expect(screen.getByTestId('field-send-resolved-checkbox')).toBeChecked();
|
|
});
|
|
|
|
it('Should check if channel type label and dropdown are displayed properly', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_channel_type',
|
|
testId: 'channel-type-select',
|
|
});
|
|
});
|
|
|
|
it('Should check if the selected item in the type dropdown has text "Slack"', () => {
|
|
expect(screen.getByText('Slack')).toBeInTheDocument();
|
|
});
|
|
|
|
it('Should check if Webhook URL label and input are displayed properly ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_webhook_url',
|
|
testId: 'webhook-url-textbox',
|
|
value:
|
|
'https://discord.com/api/webhooks/dummy_webhook_id/dummy_webhook_token/slack',
|
|
});
|
|
});
|
|
|
|
it('Should check if Recepient label, input, and help text are displayed properly ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_slack_recipient',
|
|
testId: 'slack-channel-textbox',
|
|
helpText: 'slack_channel_help',
|
|
value: '#dummy_channel',
|
|
});
|
|
});
|
|
|
|
it('Should check if Title label and text area are displayed properly ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_slack_title',
|
|
testId: 'title-textarea',
|
|
});
|
|
});
|
|
|
|
it('Should check if Title contains template', () => {
|
|
const titleTextArea = screen.getByTestId('title-textarea');
|
|
|
|
expect(titleTextArea).toHaveTextContent(slackTitleDefaultValue);
|
|
});
|
|
|
|
it('Should check if Description label and text area are displayed properly ', () => {
|
|
testLabelInputAndHelpValue({
|
|
labelText: 'field_slack_description',
|
|
testId: 'description-textarea',
|
|
});
|
|
});
|
|
|
|
it('Should check if Description contains template', () => {
|
|
const descriptionTextArea = screen.getByTestId('description-textarea');
|
|
|
|
expect(descriptionTextArea).toHaveTextContent(
|
|
editSlackDescriptionDefaultValue,
|
|
);
|
|
});
|
|
|
|
it('Should check if the form buttons are displayed properly (Save, Test, Back)', () => {
|
|
expect(screen.getByText('button_save_channel')).toBeInTheDocument();
|
|
expect(screen.getByText('button_test_channel')).toBeInTheDocument();
|
|
expect(screen.getByText('button_return')).toBeInTheDocument();
|
|
});
|
|
});
|