]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Added breadcrumb and tab tests to Pools menu 25572/head
authorNathan Weinberg <nathan2@stwmd.net>
Tue, 8 Jan 2019 16:16:04 +0000 (10:16 -0600)
committerNathan Weinberg <nathan2@stwmd.net>
Tue, 8 Jan 2019 16:16:04 +0000 (10:16 -0600)
Fixes: https://tracker.ceph.com/issues/37667
Signed-off-by: Nathan Weinberg <nweinber@redhat.com>
src/pybind/mgr/dashboard/frontend/e2e/helper.po.ts
src/pybind/mgr/dashboard/frontend/e2e/pools/pools.e2e-spec.ts [new file with mode: 0644]
src/pybind/mgr/dashboard/frontend/e2e/pools/pools.po.ts [new file with mode: 0644]

index 9241f66d9fdff6cbd4b9dc62971a10f869dedd16..7ff26b315b9402f931b56b4652a16149e2a15e4e 100644 (file)
@@ -1,4 +1,4 @@
-import { $, browser } from 'protractor';
+import { $, $$, browser } from 'protractor';
 
 export class Helper {
   static EC = browser.ExpectedConditions;
@@ -31,4 +31,14 @@ export class Helper {
   static getBreadcrumbText() {
     return $('.breadcrumb-item.active').getText();
   }
+
+  static getTabText(idx) {
+    return $$('.nav.nav-tabs li')
+      .get(idx)
+      .getText();
+  }
+
+  static getTabsCount() {
+    return $$('.nav.nav-tabs li').count();
+  }
 }
diff --git a/src/pybind/mgr/dashboard/frontend/e2e/pools/pools.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/e2e/pools/pools.e2e-spec.ts
new file mode 100644 (file)
index 0000000..3b826eb
--- /dev/null
@@ -0,0 +1,34 @@
+import { Helper } from '../helper.po';
+import { PoolsPage } from './pools.po';
+
+describe('Pools page', () => {
+  let page: PoolsPage;
+
+  beforeAll(() => {
+    page = new PoolsPage();
+  });
+
+  afterEach(() => {
+    Helper.checkConsole();
+  });
+
+  it('should open and show breadcrumb', () => {
+    page.navigateTo();
+    expect(Helper.getBreadcrumbText()).toEqual('Pools');
+  });
+
+  it('should show two tabs', () => {
+    page.navigateTo();
+    expect(Helper.getTabsCount()).toEqual(2);
+  });
+
+  it('should show pools list tab at first', () => {
+    page.navigateTo();
+    expect(Helper.getTabText(0)).toEqual('Pools 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/pools/pools.po.ts b/src/pybind/mgr/dashboard/frontend/e2e/pools/pools.po.ts
new file mode 100644 (file)
index 0000000..3682c67
--- /dev/null
@@ -0,0 +1,7 @@
+import { browser } from 'protractor';
+
+export class PoolsPage {
+  navigateTo() {
+    return browser.get('/#/pool');
+  }
+}