From 2b8ed2cf1808773347be4fbcea8eefada57a03ed Mon Sep 17 00:00:00 2001 From: Nathan Weinberg Date: Fri, 1 Feb 2019 08:55:37 -0500 Subject: [PATCH] mgr/dashboard: Added additional breadcrumb and tab tests to Cluster menu Fixes: https://tracker.ceph.com/issues/38050 Signed-off-by: Nathan Weinberg --- .../e2e/cluster/crush-map.e2e-spec.ts | 19 +++++++++++ .../frontend/e2e/cluster/crush-map.po.ts | 7 ++++ .../frontend/e2e/cluster/hosts.e2e-spec.ts | 15 ++++++++ .../frontend/e2e/cluster/logs.e2e-spec.ts | 34 +++++++++++++++++++ .../dashboard/frontend/e2e/cluster/logs.po.ts | 9 +++++ .../frontend/e2e/cluster/osds.e2e-spec.ts | 15 ++++++++ 6 files changed, 99 insertions(+) create mode 100644 src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.e2e-spec.ts create mode 100644 src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.po.ts create mode 100644 src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.e2e-spec.ts create mode 100644 src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.po.ts diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.e2e-spec.ts new file mode 100644 index 0000000000000..c4335ff621928 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.e2e-spec.ts @@ -0,0 +1,19 @@ +import { Helper } from '../helper.po'; +import { CrushMapPage } from './crush-map.po'; + +describe('CRUSH map page', () => { + let page: CrushMapPage; + + beforeAll(() => { + page = new CrushMapPage(); + }); + + afterEach(() => { + Helper.checkConsole(); + }); + + it('should open and show breadcrumb', () => { + page.navigateTo(); + expect(Helper.getBreadcrumbText()).toEqual('CRUSH map'); + }); +}); diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.po.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.po.ts new file mode 100644 index 0000000000000..e4d54c616f70c --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/crush-map.po.ts @@ -0,0 +1,7 @@ +import { browser } from 'protractor'; + +export class CrushMapPage { + navigateTo() { + return browser.get('/#/crush-map'); + } +} diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/hosts.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/hosts.e2e-spec.ts index 9398799dbb4ee..605b63d4d96fd 100644 --- a/src/pybind/mgr/dashboard/frontend/e2e/cluster/hosts.e2e-spec.ts +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/hosts.e2e-spec.ts @@ -16,4 +16,19 @@ describe('Hosts page', () => { page.navigateTo(); expect(Helper.getBreadcrumbText()).toEqual('Hosts'); }); + + it('should show two tabs', () => { + page.navigateTo(); + expect(Helper.getTabsCount()).toEqual(2); + }); + + it('should show hosts list tab at first', () => { + page.navigateTo(); + expect(Helper.getTabText(0)).toEqual('Hosts List'); + }); + + it('should show overall performance as a second tab', () => { + page.navigateTo(); + expect(Helper.getTabText(1)).toEqual('Overall Performance'); + }); }); diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.e2e-spec.ts new file mode 100644 index 0000000000000..243582ee0cee4 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.e2e-spec.ts @@ -0,0 +1,34 @@ +import { Helper } from '../helper.po'; +import { LogsPage } from './logs.po'; + +describe('Logs page', () => { + let page: LogsPage; + + beforeAll(() => { + page = new LogsPage(); + }); + + afterEach(() => { + Helper.checkConsole(); + }); + + it('should open and show breadcrumb', () => { + page.navigateTo(); + expect(Helper.getBreadcrumbText()).toEqual('Logs'); + }); + + it('should show two tabs', () => { + page.navigateTo(); + expect(Helper.getTabsCount()).toEqual(2); + }); + + it('should show cluster logs tab at first', () => { + page.navigateTo(); + expect(Helper.getTabText(0)).toEqual('Cluster Logs'); + }); + + it('should show audit logs as a second tab', () => { + page.navigateTo(); + expect(Helper.getTabText(1)).toEqual('Audit Logs'); + }); +}); diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.po.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.po.ts new file mode 100644 index 0000000000000..146779454cc35 --- /dev/null +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/logs.po.ts @@ -0,0 +1,9 @@ +import { browser } from 'protractor'; + +browser.ignoreSynchronization = true; + +export class LogsPage { + navigateTo() { + return browser.get('/#/logs'); + } +} diff --git a/src/pybind/mgr/dashboard/frontend/e2e/cluster/osds.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/e2e/cluster/osds.e2e-spec.ts index fe97f725e62c3..41fd52f346e26 100644 --- a/src/pybind/mgr/dashboard/frontend/e2e/cluster/osds.e2e-spec.ts +++ b/src/pybind/mgr/dashboard/frontend/e2e/cluster/osds.e2e-spec.ts @@ -16,4 +16,19 @@ describe('OSDs page', () => { page.navigateTo(); expect(Helper.getBreadcrumbText()).toEqual('OSDs'); }); + + it('should show two tabs', () => { + page.navigateTo(); + expect(Helper.getTabsCount()).toEqual(2); + }); + + it('should show OSDs list tab at first', () => { + page.navigateTo(); + expect(Helper.getTabText(0)).toEqual('OSDs List'); + }); + + it('should show overall performance as a second tab', () => { + page.navigateTo(); + expect(Helper.getTabText(1)).toEqual('Overall Performance'); + }); }); -- 2.47.3