]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mgr/dashboard: migrate E2E monitors to async/await
authorPatrick Seidensal <pseidensal@suse.com>
Mon, 19 Aug 2019 10:36:14 +0000 (12:36 +0200)
committerPatrick Seidensal <pseidensal@suse.com>
Wed, 28 Aug 2019 07:38:48 +0000 (09:38 +0200)
Fixes: https://tracker.ceph.com/issues/40693
Signed-off-by: Patrick Seidensal <pseidensal@suse.com>
src/pybind/mgr/dashboard/frontend/e2e/cluster/monitors.e2e-spec.ts
src/pybind/mgr/dashboard/frontend/e2e/helper.po.ts
src/pybind/mgr/dashboard/frontend/e2e/page-helper.po.ts

index e9b47bd16aba3bde9ee904d126e116d61a140891..f1146b5ac32530143ca7036e4bee7d2bfc519312 100644 (file)
@@ -7,51 +7,51 @@ describe('Monitors page', () => {
     monitors = new Helper().monitors;
   });
 
-  afterEach(() => {
-    Helper.checkConsole();
+  afterEach(async () => {
+    await Helper.checkConsole();
   });
 
   describe('breadcrumb test', () => {
-    beforeAll(() => {
-      monitors.navigateTo();
+    beforeAll(async () => {
+      await monitors.navigateTo();
     });
 
-    it('should open and show breadcrumb', () => {
-      expect(monitors.getBreadcrumbText()).toEqual('Monitors');
+    it('should open and show breadcrumb', async () => {
+      expect(await monitors.getBreadcrumbText()).toEqual('Monitors');
     });
   });
 
   describe('fields check', () => {
-    beforeAll(() => {
-      monitors.navigateTo();
+    beforeAll(async () => {
+      await monitors.navigateTo();
     });
 
-    it('should check status table is present', () => {
+    it('should check status table is present', async () => {
       // check for table header 'Status'
       expect(
-        monitors
+        await monitors
           .getLegends()
           .get(0)
           .getText()
       ).toMatch('Status');
 
       // check for fields in table
-      expect(monitors.getStatusTable().getText()).toMatch('Cluster ID');
-      expect(monitors.getStatusTable().getText()).toMatch('monmap modified');
-      expect(monitors.getStatusTable().getText()).toMatch('monmap epoch');
-      expect(monitors.getStatusTable().getText()).toMatch('quorum con');
-      expect(monitors.getStatusTable().getText()).toMatch('quorum mon');
-      expect(monitors.getStatusTable().getText()).toMatch('required con');
-      expect(monitors.getStatusTable().getText()).toMatch('required mon');
+      expect(await monitors.getStatusTable().getText()).toMatch('Cluster ID');
+      expect(await monitors.getStatusTable().getText()).toMatch('monmap modified');
+      expect(await monitors.getStatusTable().getText()).toMatch('monmap epoch');
+      expect(await monitors.getStatusTable().getText()).toMatch('quorum con');
+      expect(await monitors.getStatusTable().getText()).toMatch('quorum mon');
+      expect(await monitors.getStatusTable().getText()).toMatch('required con');
+      expect(await monitors.getStatusTable().getText()).toMatch('required mon');
     });
 
-    it('should check In Quorum and Not In Quorum tables are present', () => {
+    it('should check In Quorum and Not In Quorum tables are present', async () => {
       // check for there to be two tables
-      expect(monitors.getDataTable().count()).toEqual(2);
+      expect(await monitors.getDataTable().count()).toEqual(2);
 
       // check for table header 'In Quorum'
       expect(
-        monitors
+        await monitors
           .getLegends()
           .get(1)
           .getText()
@@ -59,7 +59,7 @@ describe('Monitors page', () => {
 
       // check for table header 'Not In Quorum'
       expect(
-        monitors
+        await monitors
           .getLegends()
           .get(2)
           .getText()
@@ -67,25 +67,25 @@ describe('Monitors page', () => {
 
       // verify correct columns on In Quorum table
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(0)
           .getText()
       ).toMatch('Name');
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(0)
           .getText()
       ).toMatch('Rank');
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(0)
           .getText()
       ).toMatch('Public Address');
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(0)
           .getText()
@@ -93,19 +93,19 @@ describe('Monitors page', () => {
 
       // verify correct columns on Not In Quorum table
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(1)
           .getText()
       ).toMatch('Name');
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(1)
           .getText()
       ).toMatch('Rank');
       expect(
-        monitors
+        await monitors
           .getDataTableHeaders()
           .get(1)
           .getText()
index 4b76fdc3a768a0def22bd8eec53052a42dc53099..38ea45b457ae63ce3f0fe3d444dfccb2764d1106 100644 (file)
@@ -1,5 +1,6 @@
 import { browser } from 'protractor';
 import { ImagesPageHelper } from './block/images.po';
+import { MonitorsPageHelper } from './cluster/monitors.po';
 import { OSDsPageHelper } from './cluster/osds.po';
 import { FilesystemsPageHelper } from './filesystems/filesystems.po';
 import { NfsPageHelper } from './nfs/nfs.po';
@@ -25,6 +26,7 @@ export class Helper {
   nfs: NfsPageHelper;
   filesystems: FilesystemsPageHelper;
   osds: OSDsPageHelper;
+  monitors: MonitorsPageHelper;
 
   constructor() {
     this.pools = new PoolPageHelper();
@@ -39,6 +41,7 @@ export class Helper {
     this.nfs = new NfsPageHelper();
     this.filesystems = new FilesystemsPageHelper();
     this.osds = new OSDsPageHelper();
+    this.monitors = new MonitorsPageHelper();
   }
 
   /**
index 2649cf5d3d25a40af4c84a45915a903800a52c49..6e2067e8139fa6bc268050ec9909249a904172e9 100644 (file)
@@ -1,4 +1,13 @@
-import { $, $$, browser, by, element, ElementFinder, protractor } from 'protractor';
+import {
+  $,
+  $$,
+  browser,
+  by,
+  element,
+  ElementArrayFinder,
+  ElementFinder,
+  protractor
+} from 'protractor';
 
 interface Pages {
   index: string;
@@ -156,23 +165,29 @@ export abstract class PageHelper {
     const url = this.pages[page];
     return browser.get(url);
   }
-  //
-  // getDataTable() {
-  //   return $$('cd-table');
-  // }
-  //
-  // getStatusTable() {
-  //   // Grabs striped tables
-  //   return $$('.table.table-striped');
-  // }
-  //
-  // getLegends() {
-  //   // Grabs legends above tables
-  //   return $$('legend');
-  // }
-  //
-  // getDataTableHeaders() {
-  //   // Gets column headers of table
-  //   return $$('.datatable-header');
-  // }
+
+  getDataTable(): ElementArrayFinder {
+    return $$('cd-table');
+  }
+
+  /**
+   * Grabs striped tables
+   */
+  getStatusTable(): ElementArrayFinder {
+    return $$('.table.table-striped');
+  }
+
+  /**
+   * Grabs legends above tables
+   */
+  getLegends(): ElementArrayFinder {
+    return $$('legend');
+  }
+
+  /**
+   * Gets column headers of table
+   */
+  getDataTableHeaders(): ElementArrayFinder {
+    return $$('.datatable-header');
+  }
 }