diff --git a/frontend/cypress/fixtures/defaultAllChannels.json b/frontend/cypress/fixtures/defaultAllChannels.json
new file mode 100644
index 0000000000..c292bc1f2d
--- /dev/null
+++ b/frontend/cypress/fixtures/defaultAllChannels.json
@@ -0,0 +1,21 @@
+{
+ "data": [
+ {
+ "created_at": 1638083159246,
+ "data": "{}",
+ "id": 1,
+ "name": "First Channels",
+ "type": "slack",
+ "updated_at": 1638083159246
+ },
+ {
+ "created_at": 1638083159246,
+ "data": "{}",
+ "id": 2,
+ "name": "Second Channels",
+ "type": "Slack",
+ "updated_at": 1638083159246
+ }
+ ],
+ "message": "Success"
+}
diff --git a/frontend/cypress/integration/channels/index.spec.ts b/frontend/cypress/integration/channels/index.spec.ts
new file mode 100644
index 0000000000..e54ed4757f
--- /dev/null
+++ b/frontend/cypress/integration/channels/index.spec.ts
@@ -0,0 +1,52 @@
+///
+
+import ROUTES from 'constants/routes';
+
+import defaultAllChannels from '../../fixtures/defaultAllChannels.json';
+
+describe('Channels', () => {
+ beforeEach(() => {
+ window.localStorage.setItem('isLoggedIn', 'yes');
+
+ cy.visit(Cypress.env('baseUrl') + ROUTES.ALL_CHANNELS);
+ });
+
+ it('Channels', () => {
+ cy
+ .intercept('**channels**', {
+ statusCode: 200,
+ fixture: 'defaultAllChannels',
+ })
+ .as('All Channels');
+
+ cy.wait('@All Channels');
+
+ cy
+ .get('.ant-tabs-tab')
+ .children()
+ .then((e) => {
+ const child = e.get();
+
+ const secondChild = child[1];
+
+ expect(secondChild.outerText).to.be.equals('Alert Channels');
+
+ expect(secondChild.ariaSelected).to.be.equals('true');
+ });
+
+ cy
+ .get('tbody')
+ .should('be.visible')
+ .then((e) => {
+ const allChildren = e.children().get();
+ expect(allChildren.length).to.be.equals(defaultAllChannels.data.length);
+
+ allChildren.forEach((e, index) => {
+ expect(e.firstChild?.textContent).not.null;
+ expect(e.firstChild?.textContent).to.be.equals(
+ defaultAllChannels.data[index].name,
+ );
+ });
+ });
+ });
+});
diff --git a/frontend/src/container/SettingsWrapper/index.tsx b/frontend/src/container/SettingsWrapper/index.tsx
index e50f05337d..afe59fe7bd 100644
--- a/frontend/src/container/SettingsWrapper/index.tsx
+++ b/frontend/src/container/SettingsWrapper/index.tsx
@@ -15,6 +15,7 @@ const SettingsWrapper = ({
AlertChannels,
General,
toggleSettingsTab,
+ defaultRoute,
}: SettingsWrapperProps): JSX.Element => {
const { settingsActiveTab } = useSelector(
(state) => state.app,
@@ -38,7 +39,7 @@ const SettingsWrapper = ({
onChangeHandler(value as SettingTab)}
- activeKey={settingsActiveTab}
+ activeKey={defaultRoute || settingsActiveTab}
>
@@ -63,6 +64,7 @@ const mapDispatchToProps = (
interface SettingsWrapperProps extends DispatchProps {
General: () => JSX.Element;
AlertChannels: () => JSX.Element;
+ defaultRoute?: SettingTab;
}
export default connect(null, mapDispatchToProps)(SettingsWrapper);
diff --git a/frontend/src/pages/AllAlertChannels/index.tsx b/frontend/src/pages/AllAlertChannels/index.tsx
index 6f37019372..716795500c 100644
--- a/frontend/src/pages/AllAlertChannels/index.tsx
+++ b/frontend/src/pages/AllAlertChannels/index.tsx
@@ -3,15 +3,14 @@ import GeneralSettings from 'container/GeneralSettings';
import SettingsWrapper from 'container/SettingsWrapper';
import React from 'react';
-const AllAlertChannels = (): JSX.Element => {
- return (
-
- );
-};
+const AllAlertChannels = (): JSX.Element => (
+
+);
export default AllAlertChannels;