Skip to content

Commit e38829b

Browse files
committed
[bidi] Add/enable code examples available in 4.18
1 parent 6c53365 commit e38829b

File tree

6 files changed

+62
-3
lines changed

6 files changed

+62
-3
lines changed

examples/java/src/test/java/dev/selenium/bidirectional/webdriver_bidi/ActionsTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@ void canPerformInputActions() {
5151
}
5252

5353
@Test
54-
@Disabled
5554
void canPerformReleaseAction() {
5655
driver.get("https://www.selenium.dev/selenium/web/bidi/release_action.html");
5756

examples/java/src/test/java/dev/selenium/bidirectional/webdriver_bidi/BrowsingContextInspectorTest.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,4 +163,23 @@ void canListenToUserPromptClosedEvent()
163163
Assertions.assertEquals(context.getId(), userPromptClosed.getBrowsingContextId());
164164
}
165165
}
166+
167+
@Test
168+
void canListenToBrowsingContextDestroyedEvent()
169+
throws ExecutionException, InterruptedException, TimeoutException {
170+
try (BrowsingContextInspector inspector = new BrowsingContextInspector(driver)) {
171+
CompletableFuture<BrowsingContextInfo> future = new CompletableFuture<>();
172+
173+
inspector.onBrowsingContextDestroyed(future::complete);
174+
175+
String windowHandle = driver.switchTo().newWindow(WindowType.WINDOW).getWindowHandle();
176+
177+
driver.close();
178+
179+
BrowsingContextInfo browsingContextInfo = future.get(5, TimeUnit.SECONDS);
180+
181+
Assertions.assertEquals(windowHandle, browsingContextInfo.getId());
182+
Assertions.assertTrue(browsingContextInfo.getUrl().contains("about:blank"));
183+
}
184+
}
166185
}

examples/java/src/test/java/dev/selenium/bidirectional/webdriver_bidi/BrowsingContextTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ void textSetViewportWithDevicePixelRatio() {
313313
}
314314

315315
@Test
316-
void canPrintPage() {
316+
void testPrintPage() {
317317
BrowsingContext browsingContext = new BrowsingContext(driver, driver.getWindowHandle());
318318

319319
driver.get("https://www.selenium.dev/selenium/web/formPage.html");

examples/javascript/test/bidirectional/browsingContextInspector.spec.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,5 +100,23 @@ suite(function (env) {
100100
assert.equal(navigationInfo.browsingContextId, browsingContext.id)
101101
assert.strictEqual(navigationInfo.url.includes('linkToAnchorOnThisPage'), true)
102102
})
103+
104+
it('can listen to browsing context destroyed event', async function () {
105+
let contextInfo = null
106+
const browsingContextInspector = await BrowsingContextInspector(driver)
107+
await browsingContextInspector.onBrowsingContextDestroyed((entry) => {
108+
contextInfo = entry
109+
})
110+
111+
await driver.switchTo().newWindow('window')
112+
113+
const windowHandle = await driver.getWindowHandle()
114+
await driver.close()
115+
116+
assert.equal(contextInfo.id, windowHandle)
117+
assert.equal(contextInfo.url, 'about:blank')
118+
assert.equal(contextInfo.children, null)
119+
assert.equal(contextInfo.parentBrowsingContext, null)
120+
})
103121
})
104122
}, {browsers: ['firefox']})

examples/javascript/test/bidirectional/input.spec.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,28 @@ suite(function (env) {
3838
assert(text.includes('oquefort parmigiano cheddar'))
3939
})
4040
})
41+
42+
it('can execute release in browsing context', async function () {
43+
const browsingContextId = await driver.getWindowHandle()
44+
const input = await Input(driver)
45+
await driver.get('https://www.selenium.dev/selenium/web/bidi/release_action.html')
46+
47+
let inputTextBox = await driver.findElement(By.id('keys'))
48+
49+
await driver.executeScript('arguments[0].focus()', inputTextBox)
50+
51+
const actions = await driver.actions().keyDown('a').keyDown('b').getSequences()
52+
53+
await input.perform(browsingContextId, actions)
54+
55+
await driver.executeScript('resetEvents()')
56+
57+
await input.release(browsingContextId)
58+
59+
const events = await driver.executeScript('return allEvents.events')
60+
61+
assert.strictEqual(events[0].code, 'KeyB')
62+
assert.strictEqual(events[1].code, 'KeyA')
63+
})
4164
})
4265
}, {browsers: ['firefox']})

examples/javascript/test/bidirectional/network_events.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ suite(function (env) {
6363
assert.equal(beforeRequestEvent.request.cookies[1].value.value, 'dosa')
6464
})
6565

66-
xit('can redirect http equiv', async function () {
66+
it('can redirect http equiv', async function () {
6767
let beforeRequestEvent = []
6868
const network = await NetworkInspector(driver)
6969
await network.beforeRequestSent(function (event) {

0 commit comments

Comments
 (0)