From 70ed31f35e1323706b26406ac6471679007051d9 Mon Sep 17 00:00:00 2001 From: Shin'ya Ueoka Date: Sun, 17 Jun 2018 15:43:53 +0900 Subject: Rewrite e2e tests with async/await --- e2e/contents/navigate.test.js | 200 +++++++++++++++--------------------------- 1 file changed, 73 insertions(+), 127 deletions(-) (limited to 'e2e/contents/navigate.test.js') diff --git a/e2e/contents/navigate.test.js b/e2e/contents/navigate.test.js index b3f5f32..d36b167 100644 --- a/e2e/contents/navigate.test.js +++ b/e2e/contents/navigate.test.js @@ -7,150 +7,96 @@ import { CLIENT_URL } from '../web-server/url'; describe("navigate test", () => { let targetWindow; - before(() => { - return windows.create().then((win) => { - targetWindow = win; - return tabs.create(targetWindow.id, CLIENT_URL); - }); + before(async () => { + targetWindow = await windows.create(); + await tabs.create(targetWindow.id, CLIENT_URL); }); - after(() => { - return windows.remove(targetWindow.id); + after(async () => { + await windows.remove(targetWindow.id); }); - it('goes to parent', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, 'g'); - }).then(() => { - return keys.press(targetTab.id, 'u'); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/a/b/'); - }); + it('goes to parent', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c'); + await keys.press(tab.id, 'g'); + await keys.press(tab.id, 'u'); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/a/b/'); }); - it('removes hash', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c#navigate').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, 'g'); - }).then(() => { - return keys.press(targetTab.id, 'u'); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/a/b/c#'); - }); + it('removes hash', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c#navigate'); + await keys.press(tab.id, 'g'); + await keys.press(tab.id, 'u'); + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/a/b/c#'); }); - it('goes to root', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, 'g'); - }).then(() => { - return keys.press(targetTab.id, 'U', { shiftKey: true }); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/'); - }); + it('goes to root', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/a/b/c'); + await keys.press(tab.id, 'g'); + await keys.press(tab.id, 'U', { shiftKey: true }); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/'); }); - it('goes back and forward in history', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/#navigate').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, 'g'); - }).then(() => { - return keys.press(targetTab.id, 'u'); - }).then(() => { - return keys.press(targetTab.id, 'H', { shiftKey: true }); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url, 'go back in history').to.be.equal(CLIENT_URL + '/#navigate'); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return keys.press(targetTab.id, 'L', { shiftKey: true }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url, 'go next in history').to.be.equal(CLIENT_URL + '/#'); - }); + it('goes back and forward in history', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/#navigate'); + await keys.press(tab.id, 'g'); + await keys.press(tab.id, 'u'); + await keys.press(tab.id, 'H', { shiftKey: true }); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url, 'go back in history').to.be.equal(CLIENT_URL + '/#navigate'); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + await keys.press(tab.id, 'L', { shiftKey: true }); + + tab = await tabs.get(tab.id); + expect(tab.url, 'go next in history').to.be.equal(CLIENT_URL + '/#'); }); - it('goes previous page by ', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/a-pagenation?page=10').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, '['); - }).then(() => { - return keys.press(targetTab.id, '['); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/a-pagenation?page=9'); - }); + it('goes previous page by ', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/a-pagenation?page=10'); + await keys.press(tab.id, '['); + await keys.press(tab.id, '['); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/a-pagenation?page=9'); }) - it('goes next page by ', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/a-pagenation?page=10').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, ']'); - }).then(() => { - return keys.press(targetTab.id, ']'); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/a-pagenation?page=11'); - }); + it('goes next page by ', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/a-pagenation?page=10'); + await keys.press(tab.id, ']'); + await keys.press(tab.id, ']'); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/a-pagenation?page=11'); }) - it('goes previous page by ', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/link-pagenation?page=10').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, '['); - }).then(() => { - return keys.press(targetTab.id, '['); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/link-pagenation?page=9'); - }); + it('goes previous page by ', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/link-pagenation?page=10'); + await keys.press(tab.id, '['); + await keys.press(tab.id, '['); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/link-pagenation?page=9'); }) - it('goes next page by ', () => { - let targetTab; - return tabs.create(targetWindow.id, CLIENT_URL + '/link-pagenation?page=10').then((tab) => { - targetTab = tab; - return keys.press(targetTab.id, ']'); - }).then(() => { - return keys.press(targetTab.id, ']'); - }).then(() => { - return new Promise(resolve => { setTimeout(() => resolve(), 10) }); - }).then(() => { - return tabs.get(targetTab.id); - }).then((tab) => { - expect(tab.url).to.be.equal(CLIENT_URL + '/link-pagenation?page=11'); - }); + it('goes next page by ', async () => { + let tab = await tabs.create(targetWindow.id, CLIENT_URL + '/link-pagenation?page=10'); + await keys.press(tab.id, ']'); + await keys.press(tab.id, ']'); + await new Promise(resolve => { setTimeout(() => resolve(), 10) }); + + tab = await tabs.get(tab.id); + expect(tab.url).to.be.equal(CLIENT_URL + '/link-pagenation?page=11'); }) }); -- cgit v1.2.3