diff options
author | Shin'ya UEOKA <ueokande@i-beam.org> | 2019-09-27 10:02:12 +0000 |
---|---|---|
committer | Shin'ya UEOKA <ueokande@i-beam.org> | 2019-09-29 00:13:04 +0000 |
commit | 1b92be636008e9211f460479e246331ba4a1f8f1 (patch) | |
tree | 8dbba51444f5f52ad91f0357d2d7035298394452 /e2e/mark.test.ts | |
parent | 4a4b5e13031898440421cef7230c2742e6cd226a (diff) |
Use TestServer on e2e
Diffstat (limited to 'e2e/mark.test.ts')
-rw-r--r-- | e2e/mark.test.ts | 39 |
1 files changed, 13 insertions, 26 deletions
diff --git a/e2e/mark.test.ts b/e2e/mark.test.ts index 0dc0306..ecc1035 100644 --- a/e2e/mark.test.ts +++ b/e2e/mark.test.ts @@ -1,53 +1,40 @@ -import express from 'express'; import * as path from 'path'; import * as assert from 'assert'; -import * as http from 'http'; +import TestServer from './lib/TestServer'; import eventually from './eventually'; import { Builder, Lanthan } from 'lanthan'; import { WebDriver } from 'selenium-webdriver'; import Page from './lib/Page'; -const newApp = () => { - let app = express(); - app.get('/', (_req, res) => { - res.send(`<!DOCTYPEhtml> -<html lang="en"> - <body style="width:10000px; height:10000px"></body> -</html">`); - }); - return app; -}; - describe("mark test", () => { - const port = 12321; - let http: http.Server; + let server = new TestServer().receiveContent('/', + `<!DOCTYPE html><html lang="en"><body style="width:10000px; height:10000px"></body></html">`, + ); let lanthan: Lanthan; let webdriver: WebDriver; let browser: any; before(async() => { - http = newApp().listen(port); - lanthan = await Builder .forBrowser('firefox') .spyAddon(path.join(__dirname, '..')) .build(); webdriver = lanthan.getWebDriver(); browser = lanthan.getWebExtBrowser(); + + await server.start() }); after(async() => { + await server.stop(); if (lanthan) { await lanthan.quit(); } - if (http) { - http.close(); - } }); it('should set a local mark and jump to it', async () => { - let page = await Page.navigateTo(webdriver, `http://127.0.0.1:${port}`); + let page = await Page.navigateTo(webdriver, server.url()); await page.scrollTo(200, 200); await page.sendKeys('m', 'a'); await page.scrollTo(500, 500); @@ -60,7 +47,7 @@ describe("mark test", () => { }); it('should set a global mark and jump to it', async () => { - let page = await Page.navigateTo(webdriver, `http://127.0.0.1:${port}#first`); + let page = await Page.navigateTo(webdriver, server.url('/#first')); await page.scrollTo(200, 200); await page.sendKeys('m', 'A'); await page.scrollTo(500, 500); @@ -71,7 +58,7 @@ describe("mark test", () => { assert.equal(await page.getScrollY(), 200); }); - await browser.tabs.create({ url: `http://127.0.0.1:${port}#second` }); + await browser.tabs.create({ url: server.url('/#second') }); page = await Page.currentContext(webdriver); await page.sendKeys('\'', 'A'); @@ -86,12 +73,12 @@ describe("mark test", () => { }); it('set a global mark and creates new tab from gone', async () => { - let page = await Page.navigateTo(webdriver, `http://127.0.0.1:${port}#first`); + let page = await Page.navigateTo(webdriver, server.url('/#first')); await page.scrollTo(500, 500); await page.sendKeys('m', 'A'); let tab = (await browser.tabs.query({ active: true }))[0]; - await browser.tabs.create({ url: `http://127.0.0.1:${port}#second` }); + await browser.tabs.create({ url: server.url('/#second') }); await browser.tabs.remove(tab.id); let handles: string[]; @@ -101,7 +88,7 @@ describe("mark test", () => { }); await webdriver.switchTo().window(handles!![0]); - page = await Page.navigateTo(webdriver, `http://127.0.0.1:${port}#second`); + page = await Page.navigateTo(webdriver, server.url('/#second')); await page.sendKeys('\'', 'A'); await eventually(async() => { |