aboutsummaryrefslogtreecommitdiff
path: root/e2e/lib/JSONOptionPage.ts
diff options
context:
space:
mode:
Diffstat (limited to 'e2e/lib/JSONOptionPage.ts')
-rw-r--r--e2e/lib/JSONOptionPage.ts22
1 files changed, 22 insertions, 0 deletions
diff --git a/e2e/lib/JSONOptionPage.ts b/e2e/lib/JSONOptionPage.ts
new file mode 100644
index 0000000..ac1ae3d
--- /dev/null
+++ b/e2e/lib/JSONOptionPage.ts
@@ -0,0 +1,22 @@
+import { Lanthan } from 'lanthan';
+import { WebDriver, By } from 'selenium-webdriver';
+
+export default class JSONOptionPage {
+ private webdriver: WebDriver;
+
+ constructor(lanthan: Lanthan) {
+ this.webdriver = lanthan.getWebDriver();
+ }
+
+ async updateSettings(value: string): Promise<void> {
+ let textarea = await this.webdriver.findElement(By.css('textarea'));
+ await this.webdriver.executeScript(`document.querySelector('textarea').value = '${value}'`)
+ await textarea.sendKeys(' ');
+ await this.webdriver.executeScript(() => document.querySelector('textarea')!!.blur());
+ }
+
+ async getErrorMessage(): Promise<string> {
+ let error = await this.webdriver.findElement(By.css('.settings-ui-input-error'));
+ return error.getText();
+ }
+}