UNPKG

@nova-ui/dashboards

Version:

Nova Dashboards is a framework designed to provide feature developers with a common solution for presenting data coming from various sources within a single view, as well as a set of predefined widget visualizations that are 100% configuration-driven and

69 lines 3.01 kB
"use strict"; // © 2022 SolarWinds Worldwide, LLC. All rights reserved. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to // deal in the Software without restriction, including without limitation the // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or // sell copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. Object.defineProperty(exports, "__esModule", { value: true }); exports.TestPage = void 0; const protractor_1 = require("protractor"); const atoms_1 = require("@nova-ui/bits/sdk/atoms"); const dashboard_atom_1 = require("./dashboard.atom"); class TestPage { constructor() { this.root = (0, protractor_1.element)(protractor_1.by.className("dashboard-test-harness")); this.chbEditMode = this.root.element(protractor_1.by.id("edit-mode")); this.chbDsError = this.root.element(protractor_1.by.id("ds-error")); this.chbDarkTheme = this.root.element(protractor_1.by.id("dark-theme")); } get dashboard() { return atoms_1.Atom.findIn(dashboard_atom_1.DashboardAtom, this.root); } async enableEditMode() { return this.updateSelectable(this.chbEditMode, true); } async disableEditMode() { return this.updateSelectable(this.chbEditMode, false); } async enableDataSourceErrors() { return this.updateSelectable(this.chbDsError, true); } async disableDataSourceErrors() { return this.updateSelectable(this.chbDsError, false); } async enableDarkTheme() { return this.updateSelectable(this.chbDarkTheme, true); } async disableDarkTheme() { return this.updateSelectable(this.chbDarkTheme, false); } async resetMousePosition() { return protractor_1.browser.actions().mouseMove({ x: 0, y: 0 }).perform(); } async editWidget(title) { return (await this.dashboard.getWidgetByHeaderTitleText(title))?.header.clickEdit(); } async updateSelectable(input, value) { const currentValue = await input.isSelected(); if (currentValue === value) { return; } return input.click(); } } exports.TestPage = TestPage; //# sourceMappingURL=test.po.js.map