diff options
author | Shin'ya Ueoka <ueokande@i-beam.org> | 2020-05-02 17:25:56 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-02 17:25:56 +0900 |
commit | 5df0537bcf65a341e79852b1b30379c73318529c (patch) | |
tree | aee5efe52412855f620cb514a13a2c14373f27b7 /e2e/completion_buffers.test.ts | |
parent | 685f2b7b69218b06b5bb676069e35f79c5048c9b (diff) | |
parent | 75abd90ecb8201ad845b266f96220d8adfe19b2d (diff) |
Merge pull request #749 from ueokande/qa-0.28
QA 0.28
Diffstat (limited to 'e2e/completion_buffers.test.ts')
-rw-r--r-- | e2e/completion_buffers.test.ts | 161 |
1 files changed, 83 insertions, 78 deletions
diff --git a/e2e/completion_buffers.test.ts b/e2e/completion_buffers.test.ts index ac24753..57603f6 100644 --- a/e2e/completion_buffers.test.ts +++ b/e2e/completion_buffers.test.ts @@ -1,32 +1,34 @@ -import * as assert from 'assert'; -import * as path from 'path'; +import * as assert from "assert"; +import * as path from "path"; -import { Request, Response } from 'express' -import TestServer from './lib/TestServer'; -import eventually from './eventually'; -import { Builder, Lanthan } from 'lanthan'; -import { WebDriver } from 'selenium-webdriver'; -import Page from './lib/Page'; +import { Request, Response } from "express"; +import TestServer from "./lib/TestServer"; +import eventually from "./eventually"; +import { Builder, Lanthan } from "lanthan"; +import { WebDriver } from "selenium-webdriver"; +import Page from "./lib/Page"; describe("completion on buffer/bdelete/bdeletes", () => { - const server = new TestServer().handle('/*', (req: Request, res: Response) => { - res.send(` + const server = new TestServer().handle( + "/*", + (req: Request, res: Response) => { + res.send(` <!DOCTYPE html> <html lang="en"> <head> <title>title_${req.path.slice(1)}</title> </head> </html>`); - }); + } + ); let lanthan: Lanthan; let webdriver: WebDriver; let browser: any; let page: Page; - before(async() => { - lanthan = await Builder - .forBrowser('firefox') - .spyAddon(path.join(__dirname, '..')) + before(async () => { + lanthan = await Builder.forBrowser("firefox") + .spyAddon(path.join(__dirname, "..")) .build(); webdriver = lanthan.getWebDriver(); browser = lanthan.getWebExtBrowser(); @@ -34,26 +36,29 @@ describe("completion on buffer/bdelete/bdeletes", () => { await server.start(); }); - after(async() => { + after(async () => { await server.stop(); if (lanthan) { await lanthan.quit(); } }); - beforeEach(async() => { + beforeEach(async () => { const tabs = await browser.tabs.query({}); for (const tab of tabs.slice(1)) { await browser.tabs.remove(tab.id); } - await browser.tabs.update(tabs[0].id, { url: server.url('/site1'), pinned: true }); - await browser.tabs.create({ url:server.url('/site2'), pinned: true }); + await browser.tabs.update(tabs[0].id, { + url: server.url("/site1"), + pinned: true, + }); + await browser.tabs.create({ url: server.url("/site2"), pinned: true }); for (let i = 3; i <= 5; ++i) { - await browser.tabs.create({ url: server.url('/site' + i) }); + await browser.tabs.create({ url: server.url("/site" + i) }); } - await eventually(async() => { + await eventually(async () => { const handles = await webdriver.getAllWindowHandles(); assert.strictEqual(handles.length, 5); await webdriver.switchTo().window(handles[2]); @@ -62,114 +67,114 @@ describe("completion on buffer/bdelete/bdeletes", () => { page = await Page.currentContext(webdriver); }); - it('should all tabs by "buffer" command with empty params', async() => { + it('should all tabs by "buffer" command with empty params', async () => { const console = await page.showConsole(); - await console.inputKeys('buffer '); + await console.inputKeys("buffer "); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 6); - assert.deepStrictEqual(items[0], { type: 'title', text: 'Buffers' }); - assert.ok(items[1].text.startsWith('1:')); - assert.ok(items[2].text.startsWith('2:')); - assert.ok(items[3].text.startsWith('3:')); - assert.ok(items[4].text.startsWith('4:')); - assert.ok(items[5].text.startsWith('5:')); - - assert.ok(items[3].text.includes('%')); - assert.ok(items[5].text.includes('#')); + assert.deepStrictEqual(items[0], { type: "title", text: "Buffers" }); + assert.ok(items[1].text.startsWith("1:")); + assert.ok(items[2].text.startsWith("2:")); + assert.ok(items[3].text.startsWith("3:")); + assert.ok(items[4].text.startsWith("4:")); + assert.ok(items[5].text.startsWith("5:")); + + assert.ok(items[3].text.includes("%")); + assert.ok(items[5].text.includes("#")); }); }); - it('should filter items with URLs by keywords on "buffer" command', async() => { + it('should filter items with URLs by keywords on "buffer" command', async () => { const console = await page.showConsole(); - await console.inputKeys('buffer title_site2'); + await console.inputKeys("buffer title_site2"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); - assert.deepStrictEqual(items[0], { type: 'title', text: 'Buffers' }); - assert.ok(items[1].text.startsWith('2:')); - assert.ok(items[1].text.includes('title_site2')); - assert.ok(items[1].text.includes(server.url('/site2'))); + assert.deepStrictEqual(items[0], { type: "title", text: "Buffers" }); + assert.ok(items[1].text.startsWith("2:")); + assert.ok(items[1].text.includes("title_site2")); + assert.ok(items[1].text.includes(server.url("/site2"))); }); }); - it('should filter items with titles by keywords on "buffer" command', async() => { + it('should filter items with titles by keywords on "buffer" command', async () => { const console = await page.showConsole(); - await console.inputKeys('buffer /site2'); + await console.inputKeys("buffer /site2"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); - assert.deepStrictEqual(items[0], { type: 'title', text: 'Buffers' }); - assert.ok(items[1].text.startsWith('2:')); + assert.deepStrictEqual(items[0], { type: "title", text: "Buffers" }); + assert.ok(items[1].text.startsWith("2:")); }); }); - it('should show one item by number on "buffer" command', async() => { + it('should show one item by number on "buffer" command', async () => { const console = await page.showConsole(); - await console.inputKeys('buffer 2'); + await console.inputKeys("buffer 2"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 2); - assert.deepStrictEqual(items[0], { type: 'title', text: 'Buffers' }); - assert.ok(items[1].text.startsWith('2:')); + assert.deepStrictEqual(items[0], { type: "title", text: "Buffers" }); + assert.ok(items[1].text.startsWith("2:")); }); }); - it('should show unpinned tabs "bdelete" command', async() => { + it('should show unpinned tabs "bdelete" command', async () => { const console = await page.showConsole(); - await console.inputKeys('bdelete site'); + await console.inputKeys("bdelete site"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 4); - assert.ok(items[1].text.includes('site3')); - assert.ok(items[2].text.includes('site4')); - assert.ok(items[3].text.includes('site5')); + assert.ok(items[1].text.includes("site3")); + assert.ok(items[2].text.includes("site4")); + assert.ok(items[3].text.includes("site5")); }); }); - it('should show unpinned tabs "bdeletes" command', async() => { + it('should show unpinned tabs "bdeletes" command', async () => { const console = await page.showConsole(); - await console.inputKeys('bdeletes site'); + await console.inputKeys("bdeletes site"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 4); - assert.ok(items[1].text.includes('site3')); - assert.ok(items[2].text.includes('site4')); - assert.ok(items[3].text.includes('site5')); + assert.ok(items[1].text.includes("site3")); + assert.ok(items[2].text.includes("site4")); + assert.ok(items[3].text.includes("site5")); }); }); - it('should show both pinned and unpinned tabs "bdelete!" command', async() => { + it('should show both pinned and unpinned tabs "bdelete!" command', async () => { const console = await page.showConsole(); - await console.inputKeys('bdelete! site'); + await console.inputKeys("bdelete! site"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 6); - assert.ok(items[1].text.includes('site1')); - assert.ok(items[2].text.includes('site2')); - assert.ok(items[3].text.includes('site3')); - assert.ok(items[4].text.includes('site4')); - assert.ok(items[5].text.includes('site5')); + assert.ok(items[1].text.includes("site1")); + assert.ok(items[2].text.includes("site2")); + assert.ok(items[3].text.includes("site3")); + assert.ok(items[4].text.includes("site4")); + assert.ok(items[5].text.includes("site5")); }); }); - it('should show both pinned and unpinned tabs "bdeletes!" command', async() => { + it('should show both pinned and unpinned tabs "bdeletes!" command', async () => { const console = await page.showConsole(); - await console.inputKeys('bdeletes! site'); + await console.inputKeys("bdeletes! site"); - await eventually(async() => { + await eventually(async () => { const items = await console.getCompletions(); assert.strictEqual(items.length, 6); - assert.ok(items[1].text.includes('site1')); - assert.ok(items[2].text.includes('site2')); - assert.ok(items[3].text.includes('site3')); - assert.ok(items[4].text.includes('site4')); - assert.ok(items[5].text.includes('site5')); + assert.ok(items[1].text.includes("site1")); + assert.ok(items[2].text.includes("site2")); + assert.ok(items[3].text.includes("site3")); + assert.ok(items[4].text.includes("site4")); + assert.ok(items[5].text.includes("site5")); }); }); }); |