import * as path from "path"; import * as assert from "assert"; import TestServer from "./lib/TestServer"; import { Builder, Lanthan } from "lanthan"; import { WebDriver, Key } from "selenium-webdriver"; import Page from "./lib/Page"; describe("console test", () => { const server = new TestServer().receiveContent( "/", `Hello, world!` ); let lanthan: Lanthan; let webdriver: WebDriver; let page: Page; before(async () => { lanthan = await Builder.forBrowser("firefox") .spyAddon(path.join(__dirname, "..")) .build(); webdriver = lanthan.getWebDriver(); await server.start(); }); after(async () => { await server.stop(); if (lanthan) { await lanthan.quit(); } }); beforeEach(async () => { page = await Page.navigateTo(webdriver, server.url()); }); it("open console with :", async () => { await page.sendKeys(":"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), ""); }); it("open console with open command by o", async () => { await page.sendKeys("o"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), "open "); }); it("open console with open command and current URL by O", async () => { await page.sendKeys(Key.SHIFT, "o"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), `open ${server.url()}`); }); it("open console with tabopen command by t", async () => { await page.sendKeys("t"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), "tabopen "); }); it("open console with tabopen command and current URL by T", async () => { await page.sendKeys(Key.SHIFT, "t"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), `tabopen ${server.url()}`); }); it("open console with winopen command by w", async () => { await page.sendKeys("w"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), `winopen `); }); it("open console with winopen command and current URL by W", async () => { await page.sendKeys(Key.SHIFT, "W"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), `winopen ${server.url()}`); }); it("open console with buffer command by b", async () => { await page.sendKeys("b"); const console = await page.getConsole(); assert.strictEqual(await console.currentValue(), `buffer `); }); it("open console with addbookmark command with title by a", async () => { await page.sendKeys("a"); const console = await page.getConsole(); assert.strictEqual( await console.currentValue(), `addbookmark Hello, world!` ); }); });