From 7d92ca56747604dfee9ec129c9ba7e7a3e495941 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Tue, 10 Sep 2024 17:00:23 +0300
Subject: [PATCH 01/22] Some tests for browsing context
---
examples/dotnet/SeleniumDocs/BaseTest.cs | 3 +-
...owsingContextTest.CreateBrowsingContext.cs | 61 +++++++++++++++++++
...wsingContextTest.GetBrowsingContextTree.cs | 28 +++++++++
.../BrowsingContextTest.NavigateToUrl.cs | 33 ++++++++++
.../BrowsingContext/BrowsingContextTest.cs | 8 +++
examples/dotnet/SeleniumDocs/NuGet.config | 1 +
.../dotnet/SeleniumDocs/SeleniumDocs.csproj | 2 +-
7 files changed, 134 insertions(+), 2 deletions(-)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
diff --git a/examples/dotnet/SeleniumDocs/BaseTest.cs b/examples/dotnet/SeleniumDocs/BaseTest.cs
index d09a6d72e9b3..dc7c844e3604 100644
--- a/examples/dotnet/SeleniumDocs/BaseTest.cs
+++ b/examples/dotnet/SeleniumDocs/BaseTest.cs
@@ -37,7 +37,8 @@ protected void StartDriver(string browserVersion = "stable")
{
ChromeOptions options = new ChromeOptions
{
- BrowserVersion = browserVersion
+ BrowserVersion = browserVersion,
+ UseWebSocketUrl = true,
};
driver = new ChromeDriver(options);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs
new file mode 100644
index 000000000000..c3461bfe21b5
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs
@@ -0,0 +1,61 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task OpenNewTab()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+
+ Assert.IsNotNull(browsingContext);
+ }
+
+ [TestMethod]
+ public async Task OpenNewWindow()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+
+ Assert.IsNotNull(browsingContext);
+ }
+
+ [TestMethod]
+ public async Task OpenTabWithReferenceBrowsingContext()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext1 = await driver.AsBidirectionalContextAsync();
+
+ var browsingContext2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = browsingContext1 });
+
+ Assert.IsNotNull(browsingContext2);
+ }
+
+ [TestMethod]
+ public async Task OpenWindowWithReferenceBrowsingContext()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext1 = await driver.AsBidirectionalContextAsync();
+
+ var browsingContext2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window, new() { ReferenceContext = browsingContext1 });
+
+ Assert.IsNotNull(browsingContext2);
+ }
+
+ [TestMethod]
+ public async Task UseExistingWindowHandle()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ Assert.IsNotNull(browsingContext);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
new file mode 100644
index 000000000000..3aa25e574850
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
@@ -0,0 +1,28 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task GetBrowsingContextTree()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var parentBrowsingContext = await driver.AsBidirectionalContextAsync();
+
+ var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = parentBrowsingContext });
+
+ var tree = await bidi.GetBrowsingContextTreeAsync(new() { Root = parentBrowsingContext });
+
+ Assert.IsNotNull(tree);
+ Assert.AreEqual(1, tree.Count);
+ Assert.AreEqual(parentBrowsingContext, tree[0].Context);
+ Assert.IsNotNull(tree[0].Children);
+ Assert.AreEqual(1, tree[0].Children.Count);
+ Assert.AreEqual(browsingContext, tree[0].Children[0].Context);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
new file mode 100644
index 000000000000..15e7ff255c5b
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
@@ -0,0 +1,33 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task NavigateToUrl()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ var info = await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
+
+ Assert.IsNotNull(info);
+ Assert.IsNotNull(info.Navigation);
+ StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
+ }
+
+ [TestMethod]
+ public async Task NavigateToUrlWithReadinessState()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ var info = await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ Assert.IsNotNull(info);
+ Assert.IsNotNull(info.Navigation);
+ StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
new file mode 100644
index 000000000000..3da8a314d919
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
@@ -0,0 +1,8 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+[TestClass]
+public partial class BrowsingContextTest : BaseChromeTest
+{
+}
diff --git a/examples/dotnet/SeleniumDocs/NuGet.config b/examples/dotnet/SeleniumDocs/NuGet.config
index 45c0bc37a95a..49be2fc9f6e0 100644
--- a/examples/dotnet/SeleniumDocs/NuGet.config
+++ b/examples/dotnet/SeleniumDocs/NuGet.config
@@ -2,5 +2,6 @@
+
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 9a46127a58f9..d5d9c7a8eb4e 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -11,7 +11,7 @@
-
+
From 34a0c787f022270b0ef2b96b48ce74df53713e16 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Tue, 10 Sep 2024 18:45:36 +0300
Subject: [PATCH 02/22] More examples
---
...ContextTest.BrowsingContextCreatedEvent.cs | 25 +++++++++
...ntextTest.BrowsingContextDestroyedEvent.cs | 30 ++++++++++
...gContextTest.BrowsingContextLoadedEvent.cs | 27 +++++++++
...owsingContextTest.DomContentLoadedEvent.cs | 27 +++++++++
...wsingContextTest.FragmentNavigatedEvent.cs | 28 ++++++++++
...wsingContextTest.NavigationStartedEvent.cs | 23 ++++++++
.../BrowsingContextTest.UserPromptEvent.cs | 55 +++++++++++++++++++
7 files changed, 215 insertions(+)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
new file mode 100644
index 000000000000..b46b1c3f3461
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
@@ -0,0 +1,25 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task BrowsingContextCreatedEvent()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ BrowsingContextInfo info = null;
+
+ await bidi.OnBrowsingContextCreatedAsync(e => info = e);
+
+ driver.SwitchTo().NewWindow(OpenQA.Selenium.WindowType.Window);
+
+ Assert.IsNotNull(info);
+ Console.WriteLine(info);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs
new file mode 100644
index 000000000000..133abf6e8a64
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs
@@ -0,0 +1,30 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task BrowsingContextDestroyedEvent()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await bidi.OnBrowsingContextDestroyedAsync(tcs.SetResult);
+
+ await browsingContext.CloseAsync();
+
+ var browsingContextInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(browsingContextInfo);
+ Assert.AreEqual(browsingContext, browsingContextInfo.Context);
+ Console.WriteLine(browsingContextInfo);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs
new file mode 100644
index 000000000000..3d7ec3b0a56b
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs
@@ -0,0 +1,27 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task BrowsingContextLoadedEvent()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await browsingContext.OnLoadAsync(tcs.SetResult);
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(navigationInfo);
+ Console.WriteLine(navigationInfo);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs
new file mode 100644
index 000000000000..b11770925e18
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs
@@ -0,0 +1,27 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task DomContentLoadedEvent()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await browsingContext.OnDomContentLoadedAsync(tcs.SetResult);
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(navigationInfo);
+ Console.WriteLine(navigationInfo);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
new file mode 100644
index 000000000000..2d3dc7b35213
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
@@ -0,0 +1,28 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task FragmentNavigatedEvent()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await browsingContext.OnFragmentNavigatedAsync(tcs.SetResult);
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html#linkToAnchorOnThisPage", new() { Wait = ReadinessState.Complete });
+
+ var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(navigationInfo);
+ Console.WriteLine(navigationInfo);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
new file mode 100644
index 000000000000..e5233824973f
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
@@ -0,0 +1,23 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task NavigationStartedEvent()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ NavigationInfo info = null;
+
+ await browsingContext.OnNavigationStartedAsync(e => info = e);
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ Assert.IsNotNull(info);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs
new file mode 100644
index 000000000000..71fe4b13d4b3
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs
@@ -0,0 +1,55 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task UserPromptOpenedEvent()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
+
+ await bidi.OnUserPromptOpenedAsync(tcs.SetResult);
+
+ driver.FindElement(By.Id("prompt")).Click();
+
+ var userPromptOpenedEventArgs = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(userPromptOpenedEventArgs);
+ Console.WriteLine(userPromptOpenedEventArgs);
+ }
+
+ [TestMethod]
+ public async Task UserPromptClosedEvent()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ TaskCompletionSource tcs = new();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
+
+ await bidi.OnUserPromptClosedAsync(tcs.SetResult);
+
+ driver.FindElement(By.Id("prompt")).Click();
+
+ //await browsingContext.HandleUserPromptAsync();
+
+ var userPromptClosedEventArgs = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
+ Assert.IsNotNull(userPromptClosedEventArgs);
+ Console.WriteLine(userPromptClosedEventArgs);
+ }
+}
From 2b3816b31458e263fd2dcbd7dffb5c10b1b2e436 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Tue, 10 Sep 2024 18:49:47 +0300
Subject: [PATCH 03/22] Update BrowsingContextTest.FragmentNavigatedEvent.cs
---
.../BrowsingContextTest.FragmentNavigatedEvent.cs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
index 2d3dc7b35213..8e791bd8e897 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
@@ -2,7 +2,6 @@
using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
-using System.Threading;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -14,6 +13,8 @@ public async Task FragmentNavigatedEvent()
{
var browsingContext = await driver.AsBidirectionalContextAsync();
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
+
TaskCompletionSource tcs = new();
await browsingContext.OnFragmentNavigatedAsync(tcs.SetResult);
From d23ff62622702f06ab4f7fee47cbfcbf7912e507 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Tue, 10 Sep 2024 20:03:10 +0300
Subject: [PATCH 04/22] Task completion source for events
---
.../BrowsingContextTest.BrowsingContextCreatedEvent.cs | 6 ++++--
.../BrowsingContextTest.NavigationStartedEvent.cs | 7 +++++--
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
index b46b1c3f3461..de10b596cbbd 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
@@ -13,12 +13,14 @@ public async Task BrowsingContextCreatedEvent()
{
await using var bidi = await driver.AsBidirectionalAsync();
- BrowsingContextInfo info = null;
+ TaskCompletionSource tcs = new();
- await bidi.OnBrowsingContextCreatedAsync(e => info = e);
+ await bidi.OnBrowsingContextCreatedAsync(tcs.SetResult);
driver.SwitchTo().NewWindow(OpenQA.Selenium.WindowType.Window);
+ var info = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
Assert.IsNotNull(info);
Console.WriteLine(info);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
index e5233824973f..ac811f968dbb 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
@@ -1,6 +1,7 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -12,12 +13,14 @@ public async Task NavigationStartedEvent()
{
var browsingContext = await driver.AsBidirectionalContextAsync();
- NavigationInfo info = null;
+ TaskCompletionSource tcs = new();
- await browsingContext.OnNavigationStartedAsync(e => info = e);
+ await browsingContext.OnNavigationStartedAsync(tcs.SetResult);
await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ var info = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+
Assert.IsNotNull(info);
}
}
From a6b1e440f12d12a8bd269c2a6579a9eeb73517dc Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Thu, 12 Sep 2024 21:50:50 +0300
Subject: [PATCH 05/22] Add more
---
.../BrowsingContextTest.Activate.cs | 19 +++++++++++++++
.../BrowsingContextTest.CloseWindowOrTab.cs | 23 +++++++++++++++++++
.../BrowsingContextTest.NavigateToUrl.cs | 14 +++++++++++
3 files changed, 56 insertions(+)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
new file mode 100644
index 000000000000..f33d6e8d0441
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -0,0 +1,19 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task Activate()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var tab = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+
+ await tab.ActivateAsync();
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
new file mode 100644
index 000000000000..0dfc2b49e0b9
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
@@ -0,0 +1,23 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task CloseWindowOrTab()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var window = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+
+ var tab = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+
+ await window.CloseAsync();
+
+ await tab.CloseAsync();
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
index 15e7ff255c5b..4f34e245d37f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
@@ -30,4 +30,18 @@ public async Task NavigateToUrlWithReadinessState()
Assert.IsNotNull(info.Navigation);
StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
}
+
+ [TestMethod]
+ public async Task Reload()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ var info = await browsingContext.ReloadAsync();
+
+ Assert.IsNotNull(info);
+ Assert.IsNotNull(info.Navigation);
+ StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
+ }
}
From 2a8aa0b8431b8a6819204db16473905801ec17ef Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Sep 2024 11:59:29 +0300
Subject: [PATCH 06/22] Get tree
---
...wsingContextTest.GetBrowsingContextTree.cs | 41 ++++++++++++++-----
.../dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 +-
2 files changed, 33 insertions(+), 12 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
index 3aa25e574850..6c336d06048c 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
@@ -10,19 +10,40 @@ partial class BrowsingContextTest
[TestMethod]
public async Task GetBrowsingContextTree()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
+
+ var contexts = await browsingContext.GetTreeAsync();
+
+ Assert.AreEqual(1, contexts.Count);
+ Assert.IsNotNull(contexts[0].Children);
+ Assert.IsTrue(contexts[0].Children.Count >= 1, "Context should contain iframes as children");
+ }
+
+ [TestMethod]
+ public async Task GetBrowsingContextTreeWithDepth()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
- var parentBrowsingContext = await driver.AsBidirectionalContextAsync();
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
+
+ var contexts = await browsingContext.GetTreeAsync(new() { MaxDepth = 0 });
+
+ Assert.AreEqual(1, contexts.Count);
+ Assert.IsNull(contexts[0].Children, "Context should not contain iframes as children since depth is 0");
+ }
+
+ [TestMethod]
+ public async Task GetAllTopLevelBrowingContexts()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = parentBrowsingContext });
+ var window2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
- var tree = await bidi.GetBrowsingContextTreeAsync(new() { Root = parentBrowsingContext });
+ var contexts = await bidi.GetBrowsingContextTreeAsync();
- Assert.IsNotNull(tree);
- Assert.AreEqual(1, tree.Count);
- Assert.AreEqual(parentBrowsingContext, tree[0].Context);
- Assert.IsNotNull(tree[0].Children);
- Assert.AreEqual(1, tree[0].Children.Count);
- Assert.AreEqual(browsingContext, tree[0].Children[0].Context);
+ Assert.AreEqual(2, contexts.Count);
+ Assert.AreEqual(contexts[1].Context, window2);
}
}
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index d5d9c7a8eb4e..4b09d2d194f6 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From 1ba458946e96c1e638f9535769deb6dd92608a83 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Sep 2024 12:53:17 +0300
Subject: [PATCH 07/22] Group events
---
...ent.cs => BrowsingContextTest.Event.BrowsingContextCreated.cs} | 0
...t.cs => BrowsingContextTest.Event.BrowsingContextDestroyed.cs} | 0
...vent.cs => BrowsingContextTest.Event.BrowsingContextLoaded.cs} | 0
...adedEvent.cs => BrowsingContextTest.Event.DomContentLoaded.cs} | 0
...tedEvent.cs => BrowsingContextTest.Event.FragmentNavigated.cs} | 0
...tedEvent.cs => BrowsingContextTest.Event.NavigationStarted.cs} | 0
...UserPromptEvent.cs => BrowsingContextTest.Event.UserPrompt.cs} | 0
7 files changed, 0 insertions(+), 0 deletions(-)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.BrowsingContextCreatedEvent.cs => BrowsingContextTest.Event.BrowsingContextCreated.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.BrowsingContextDestroyedEvent.cs => BrowsingContextTest.Event.BrowsingContextDestroyed.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.BrowsingContextLoadedEvent.cs => BrowsingContextTest.Event.BrowsingContextLoaded.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.DomContentLoadedEvent.cs => BrowsingContextTest.Event.DomContentLoaded.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.FragmentNavigatedEvent.cs => BrowsingContextTest.Event.FragmentNavigated.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.NavigationStartedEvent.cs => BrowsingContextTest.Event.NavigationStarted.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.UserPromptEvent.cs => BrowsingContextTest.Event.UserPrompt.cs} (100%)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextCreatedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextDestroyedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.BrowsingContextLoadedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.DomContentLoadedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.FragmentNavigatedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigationStartedEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.UserPromptEvent.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
From 2e02cc28ea3ae1eb3e0878690071fd40630c527d Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Sep 2024 15:52:36 +0300
Subject: [PATCH 08/22] Finish examples
---
.../BrowsingContextTest.CaptureScreenshot.cs | 48 +++++++++++++++++++
.../BrowsingContextTest.Close.cs | 29 +++++++++++
.../BrowsingContextTest.CloseWindowOrTab.cs | 23 ---------
...ntext.cs => BrowsingContextTest.Create.cs} | 0
...Tree.cs => BrowsingContextTest.GetTree.cs} | 0
.../BrowsingContextTest.HandleUserPrompt.cs | 25 ++++++++++
...Url.cs => BrowsingContextTest.Navigate.cs} | 40 ++++++++++++++--
.../BrowsingContextTest.Print.cs | 20 ++++++++
.../BrowsingContextTest.Reload.cs | 23 +++++++++
.../BrowsingContextTest.SetViewport.cs | 16 +++++++
10 files changed, 196 insertions(+), 28 deletions(-)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
delete mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.CreateBrowsingContext.cs => BrowsingContextTest.Create.cs} (100%)
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.GetBrowsingContextTree.cs => BrowsingContextTest.GetTree.cs} (100%)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
rename examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/{BrowsingContextTest.NavigateToUrl.cs => BrowsingContextTest.Navigate.cs} (52%)
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
create mode 100644 examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
new file mode 100644
index 000000000000..bb8bdc2d4874
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -0,0 +1,48 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task CaptureScreenshot()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ var screenshot = await browsingContext.CaptureScreenshotAsync();
+
+ Assert.IsNotNull(screenshot);
+ Assert.IsNotNull(screenshot.Data);
+ Assert.IsNotNull(screenshot.AsBytes());
+ }
+
+ [TestMethod]
+ public async Task CaptureViewportScreenshot()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ var screenshot = await browsingContext.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
+
+ Assert.IsNotNull(screenshot);
+ Assert.IsNotNull(screenshot.Data);
+ }
+
+ [TestMethod]
+ public async Task CaptureElementScreenshot()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
+
+ var element = (await browsingContext.LocateNodesAsync(Locator.Css("#checky")))[0];
+
+ //TODO: ShareId is a type, not string
+ var screenshot = await browsingContext.CaptureScreenshotAsync(new() { Clip = new ElementClipRectangle(new(element.SharedId)) });
+
+ Assert.IsNotNull(screenshot);
+ Assert.IsNotNull(screenshot.Data);
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
new file mode 100644
index 000000000000..6e21b03d6f7e
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -0,0 +1,29 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task CloseTab()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+
+ await browsingContext.CloseAsync();
+ }
+
+ [TestMethod]
+ public async Task CloseWindow()
+ {
+ await using var bidi = await driver.AsBidirectionalAsync();
+
+ var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+
+ await browsingContext.CloseAsync();
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
deleted file mode 100644
index 0dfc2b49e0b9..000000000000
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CloseWindowOrTab.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
-using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
-using System.Threading.Tasks;
-
-namespace SeleniumDocs.BiDi.BrowsingContext;
-
-partial class BrowsingContextTest
-{
- [TestMethod]
- public async Task CloseWindowOrTab()
- {
- await using var bidi = await driver.AsBidirectionalAsync();
-
- var window = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
-
- var tab = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
-
- await window.CloseAsync();
-
- await tab.CloseAsync();
- }
-}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CreateBrowsingContext.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
similarity index 100%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetBrowsingContextTree.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
new file mode 100644
index 000000000000..4c9453101d4c
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
@@ -0,0 +1,25 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.Firefox;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task HandleUserPrompt()
+ {
+ // temporary use firefox because of chrome automatically handle prompts
+ using var driver = new FirefoxDriver(new FirefoxOptions() { UseWebSocketUrl = true });
+
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ driver.Url = "https://www.selenium.dev/selenium/web/alerts.html";
+
+ driver.FindElement(By.Id("prompt-with-default")).Click();
+
+ await browsingContext.HandleUserPromptAsync(new() { Accept = true, UserText = "Selenium automates browsers" });
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
similarity index 52%
rename from examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
rename to examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
index 4f34e245d37f..f798fd084c5f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.NavigateToUrl.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
@@ -32,16 +32,46 @@ public async Task NavigateToUrlWithReadinessState()
}
[TestMethod]
- public async Task Reload()
+ public async Task NavigateBack()
{
var browsingContext = await driver.AsBidirectionalContextAsync();
await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
- var info = await browsingContext.ReloadAsync();
+ await browsingContext.NavigateBackAsync();
- Assert.IsNotNull(info);
- Assert.IsNotNull(info.Navigation);
- StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
+ var url = (await browsingContext.GetTreeAsync())[0].Url;
+
+ Assert.AreEqual("about:blank", url);
+ }
+
+ [TestMethod]
+ public async Task NavigateForward()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ await browsingContext.NavigateBackAsync();
+
+ await browsingContext.NavigateForwardAsync();
+
+ var url = (await browsingContext.GetTreeAsync())[0].Url;
+
+ Assert.AreEqual("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", url);
+ }
+
+ [TestMethod]
+ public async Task TraverseHistory()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ await browsingContext.TraverseHistoryAsync(-1);
+
+ var url = (await browsingContext.GetTreeAsync())[0].Url;
+
+ Assert.AreEqual("about:blank", url);
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
new file mode 100644
index 000000000000..8dd81cb56142
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -0,0 +1,20 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task PrintPage()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ var pdf = await browsingContext.PrintAsync(new() { PageRanges = [1, 2, new(3, 5)] });
+
+ Assert.IsNotNull(pdf);
+ Assert.IsNotNull(pdf.Data);
+ Assert.IsNotNull(pdf.ToByteArray());
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
new file mode 100644
index 000000000000..fdc27111332d
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
@@ -0,0 +1,23 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task Reload()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+
+ var info = await browsingContext.ReloadAsync();
+
+ Assert.IsNotNull(info);
+ Assert.IsNotNull(info.Navigation);
+ StringAssert.Contains(info.Url, "/bidi/logEntryAdded.html");
+ }
+}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
new file mode 100644
index 000000000000..cc1401712bf6
--- /dev/null
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -0,0 +1,16 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using System.Threading.Tasks;
+
+namespace SeleniumDocs.BiDi.BrowsingContext;
+
+partial class BrowsingContextTest
+{
+ [TestMethod]
+ public async Task SetViewport()
+ {
+ var browsingContext = await driver.AsBidirectionalContextAsync();
+
+ await browsingContext.SetViewportAsync(new() { Viewport = new(250, 300), DevicePixelRatio = 5 });
+ }
+}
From cf93f36a83c546bef4c75f6c759beaf205c21fdf Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Sep 2024 22:34:43 +0300
Subject: [PATCH 09/22] Simplify browsing context
---
.../BrowsingContextTest.Activate.cs | 2 +-
.../BrowsingContextTest.CaptureScreenshot.cs | 16 ++++-----
.../BrowsingContextTest.Close.cs | 8 ++---
.../BrowsingContextTest.Create.cs | 24 ++++++-------
...ontextTest.Event.BrowsingContextCreated.cs | 2 +-
...textTest.Event.BrowsingContextDestroyed.cs | 14 ++++----
...ContextTest.Event.BrowsingContextLoaded.cs | 6 ++--
...wsingContextTest.Event.DomContentLoaded.cs | 6 ++--
...singContextTest.Event.FragmentNavigated.cs | 8 ++---
...singContextTest.Event.NavigationStarted.cs | 6 ++--
.../BrowsingContextTest.Event.UserPrompt.cs | 10 +++---
.../BrowsingContextTest.GetTree.cs | 16 ++++-----
.../BrowsingContextTest.HandleUserPrompt.cs | 4 +--
.../BrowsingContextTest.Navigate.cs | 34 +++++++++----------
.../BrowsingContextTest.Print.cs | 4 +--
.../BrowsingContextTest.Reload.cs | 6 ++--
.../BrowsingContextTest.SetViewport.cs | 4 +--
.../dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 +--
18 files changed, 87 insertions(+), 87 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index f33d6e8d0441..51d46a003df6 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -12,7 +12,7 @@ public async Task Activate()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var tab = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+ var tab = await bidi.CreateContextAsync(BrowsingContextType.Tab);
await tab.ActivateAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index bb8bdc2d4874..30957d2b0fb5 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -10,21 +10,21 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CaptureScreenshot()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var screenshot = await browsingContext.CaptureScreenshotAsync();
+ var screenshot = await context.CaptureScreenshotAsync();
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
- Assert.IsNotNull(screenshot.AsBytes());
+ Assert.IsNotNull(screenshot.ToByteArray());
}
[TestMethod]
public async Task CaptureViewportScreenshot()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var screenshot = await browsingContext.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
@@ -33,14 +33,14 @@ public async Task CaptureViewportScreenshot()
[TestMethod]
public async Task CaptureElementScreenshot()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
- var element = (await browsingContext.LocateNodesAsync(Locator.Css("#checky")))[0];
+ var element = (await context.LocateNodesAsync(Locator.Css("#checky")))[0];
//TODO: ShareId is a type, not string
- var screenshot = await browsingContext.CaptureScreenshotAsync(new() { Clip = new ElementClipRectangle(new(element.SharedId)) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ElementClipRectangle(new(element.SharedId)) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index 6e21b03d6f7e..f9ca95e4d89d 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -12,9 +12,9 @@ public async Task CloseTab()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+ var context = await bidi.CreateContextAsync(BrowsingContextType.Tab);
- await browsingContext.CloseAsync();
+ await context.CloseAsync();
}
[TestMethod]
@@ -22,8 +22,8 @@ public async Task CloseWindow()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+ var context = await bidi.CreateContextAsync(BrowsingContextType.Window);
- await browsingContext.CloseAsync();
+ await context.CloseAsync();
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index c3461bfe21b5..ef5f903a65ce 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -12,9 +12,9 @@ public async Task OpenNewTab()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab);
+ var context = await bidi.CreateContextAsync(BrowsingContextType.Tab);
- Assert.IsNotNull(browsingContext);
+ Assert.IsNotNull(context);
}
[TestMethod]
@@ -22,9 +22,9 @@ public async Task OpenNewWindow()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+ var context = await bidi.CreateContextAsync(BrowsingContextType.Window);
- Assert.IsNotNull(browsingContext);
+ Assert.IsNotNull(context);
}
[TestMethod]
@@ -32,11 +32,11 @@ public async Task OpenTabWithReferenceBrowsingContext()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext1 = await driver.AsBidirectionalContextAsync();
+ var context1 = await driver.AsBidirectionalContextAsync();
- var browsingContext2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = browsingContext1 });
+ var context2 = await bidi.CreateContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = context1 });
- Assert.IsNotNull(browsingContext2);
+ Assert.IsNotNull(context2);
}
[TestMethod]
@@ -44,18 +44,18 @@ public async Task OpenWindowWithReferenceBrowsingContext()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext1 = await driver.AsBidirectionalContextAsync();
+ var context1 = await driver.AsBidirectionalContextAsync();
- var browsingContext2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window, new() { ReferenceContext = browsingContext1 });
+ var context2 = await bidi.CreateContextAsync(BrowsingContextType.Window, new() { ReferenceContext = context1 });
- Assert.IsNotNull(browsingContext2);
+ Assert.IsNotNull(context2);
}
[TestMethod]
public async Task UseExistingWindowHandle()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- Assert.IsNotNull(browsingContext);
+ Assert.IsNotNull(context);
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index de10b596cbbd..7f8c7521242a 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -15,7 +15,7 @@ public async Task BrowsingContextCreatedEvent()
TaskCompletionSource tcs = new();
- await bidi.OnBrowsingContextCreatedAsync(tcs.SetResult);
+ await bidi.OnContextCreatedAsync(tcs.SetResult);
driver.SwitchTo().NewWindow(OpenQA.Selenium.WindowType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index 133abf6e8a64..f383b9233fa5 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -13,18 +13,18 @@ public async Task BrowsingContextDestroyedEvent()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await bidi.OnBrowsingContextDestroyedAsync(tcs.SetResult);
+ await bidi.OnContextDestroyedAsync(tcs.SetResult);
- await browsingContext.CloseAsync();
+ await context.CloseAsync();
- var browsingContextInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
+ var contextInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
- Assert.IsNotNull(browsingContextInfo);
- Assert.AreEqual(browsingContext, browsingContextInfo.Context);
- Console.WriteLine(browsingContextInfo);
+ Assert.IsNotNull(contextInfo);
+ Assert.AreEqual(context, contextInfo.Context);
+ Console.WriteLine(contextInfo);
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
index 3d7ec3b0a56b..f13d40e48151 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
@@ -11,13 +11,13 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextLoadedEvent()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await browsingContext.OnLoadAsync(tcs.SetResult);
+ await context.OnLoadAsync(tcs.SetResult);
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
index b11770925e18..9a4b21b1b8fa 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
@@ -11,13 +11,13 @@ partial class BrowsingContextTest
[TestMethod]
public async Task DomContentLoadedEvent()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await browsingContext.OnDomContentLoadedAsync(tcs.SetResult);
+ await context.OnDomContentLoadedAsync(tcs.SetResult);
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
index 8e791bd8e897..8208fd3befdf 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
@@ -11,15 +11,15 @@ partial class BrowsingContextTest
[TestMethod]
public async Task FragmentNavigatedEvent()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
TaskCompletionSource tcs = new();
- await browsingContext.OnFragmentNavigatedAsync(tcs.SetResult);
+ await context.OnFragmentNavigatedAsync(tcs.SetResult);
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html#linkToAnchorOnThisPage", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html#linkToAnchorOnThisPage", new() { Wait = ReadinessState.Complete });
var navigationInfo = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
index ac811f968dbb..cfcea66f5e4e 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
@@ -11,13 +11,13 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigationStartedEvent()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await browsingContext.OnNavigationStartedAsync(tcs.SetResult);
+ await context.OnNavigationStartedAsync(tcs.SetResult);
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
var info = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index 71fe4b13d4b3..a9ab567a5054 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -14,11 +14,11 @@ public async Task UserPromptOpenedEvent()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
await bidi.OnUserPromptOpenedAsync(tcs.SetResult);
@@ -35,17 +35,17 @@ public async Task UserPromptClosedEvent()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
await bidi.OnUserPromptClosedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
- //await browsingContext.HandleUserPromptAsync();
+ //await context.HandleUserPromptAsync();
var userPromptClosedEventArgs = await tcs.Task.WaitAsync(TimeSpan.FromSeconds(5));
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 6c336d06048c..921dc4a7438f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -10,11 +10,11 @@ partial class BrowsingContextTest
[TestMethod]
public async Task GetBrowsingContextTree()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
- var contexts = await browsingContext.GetTreeAsync();
+ var contexts = await context.GetTreeAsync();
Assert.AreEqual(1, contexts.Count);
Assert.IsNotNull(contexts[0].Children);
@@ -24,11 +24,11 @@ public async Task GetBrowsingContextTree()
[TestMethod]
public async Task GetBrowsingContextTreeWithDepth()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
- var contexts = await browsingContext.GetTreeAsync(new() { MaxDepth = 0 });
+ var contexts = await context.GetTreeAsync(new() { MaxDepth = 0 });
Assert.AreEqual(1, contexts.Count);
Assert.IsNull(contexts[0].Children, "Context should not contain iframes as children since depth is 0");
@@ -39,9 +39,9 @@ public async Task GetAllTopLevelBrowingContexts()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var window2 = await bidi.CreateBrowsingContextAsync(BrowsingContextType.Window);
+ var window2 = await bidi.CreateContextAsync(BrowsingContextType.Window);
- var contexts = await bidi.GetBrowsingContextTreeAsync();
+ var contexts = await bidi.GetTreeAsync();
Assert.AreEqual(2, contexts.Count);
Assert.AreEqual(contexts[1].Context, window2);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
index 4c9453101d4c..9839083adc51 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
@@ -14,12 +14,12 @@ public async Task HandleUserPrompt()
// temporary use firefox because of chrome automatically handle prompts
using var driver = new FirefoxDriver(new FirefoxOptions() { UseWebSocketUrl = true });
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/alerts.html";
driver.FindElement(By.Id("prompt-with-default")).Click();
- await browsingContext.HandleUserPromptAsync(new() { Accept = true, UserText = "Selenium automates browsers" });
+ await context.HandleUserPromptAsync(new() { Accept = true, UserText = "Selenium automates browsers" });
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
index f798fd084c5f..815e57ffe67f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
@@ -10,9 +10,9 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigateToUrl()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var info = await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
+ var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
Assert.IsNotNull(info);
Assert.IsNotNull(info.Navigation);
@@ -22,9 +22,9 @@ public async Task NavigateToUrl()
[TestMethod]
public async Task NavigateToUrlWithReadinessState()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var info = await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
Assert.IsNotNull(info);
Assert.IsNotNull(info.Navigation);
@@ -34,13 +34,13 @@ public async Task NavigateToUrlWithReadinessState()
[TestMethod]
public async Task NavigateBack()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
- await browsingContext.NavigateBackAsync();
+ await context.NavigateBackAsync();
- var url = (await browsingContext.GetTreeAsync())[0].Url;
+ var url = (await context.GetTreeAsync())[0].Url;
Assert.AreEqual("about:blank", url);
}
@@ -48,15 +48,15 @@ public async Task NavigateBack()
[TestMethod]
public async Task NavigateForward()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
- await browsingContext.NavigateBackAsync();
+ await context.NavigateBackAsync();
- await browsingContext.NavigateForwardAsync();
+ await context.NavigateForwardAsync();
- var url = (await browsingContext.GetTreeAsync())[0].Url;
+ var url = (await context.GetTreeAsync())[0].Url;
Assert.AreEqual("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", url);
}
@@ -64,13 +64,13 @@ public async Task NavigateForward()
[TestMethod]
public async Task TraverseHistory()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
- await browsingContext.TraverseHistoryAsync(-1);
+ await context.TraverseHistoryAsync(-1);
- var url = (await browsingContext.GetTreeAsync())[0].Url;
+ var url = (await context.GetTreeAsync())[0].Url;
Assert.AreEqual("about:blank", url);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
index 8dd81cb56142..b209c0f94ed4 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -9,9 +9,9 @@ partial class BrowsingContextTest
[TestMethod]
public async Task PrintPage()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var pdf = await browsingContext.PrintAsync(new() { PageRanges = [1, 2, new(3, 5)] });
+ var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, new(3, 5)] });
Assert.IsNotNull(pdf);
Assert.IsNotNull(pdf.Data);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
index fdc27111332d..28173eb19ac9 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
@@ -10,11 +10,11 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Reload()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
+ await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
- var info = await browsingContext.ReloadAsync();
+ var info = await context.ReloadAsync();
Assert.IsNotNull(info);
Assert.IsNotNull(info.Navigation);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
index cc1401712bf6..0f0016bc5d5f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -9,8 +9,8 @@ partial class BrowsingContextTest
[TestMethod]
public async Task SetViewport()
{
- var browsingContext = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- await browsingContext.SetViewportAsync(new() { Viewport = new(250, 300), DevicePixelRatio = 5 });
+ await context.SetViewportAsync(new() { Viewport = new(250, 300), DevicePixelRatio = 5 });
}
}
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 4b09d2d194f6..1d56ea0bd6ba 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From a108d99e9d7fac89d3fa0d8c4318f98efbb1f005 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Sep 2024 23:09:43 +0300
Subject: [PATCH 10/22] Add example how to print 7.. pages
---
.../BiDi/BrowsingContext/BrowsingContextTest.Print.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
index b209c0f94ed4..2946daf698d1 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -11,7 +11,7 @@ public async Task PrintPage()
{
var context = await driver.AsBidirectionalContextAsync();
- var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, new(3, 5)] });
+ var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, 3..5, new(3, 5), 7..] });
Assert.IsNotNull(pdf);
Assert.IsNotNull(pdf.Data);
From adda703bcf42ab85e3906a19b11dd3d1f3a159ee Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sun, 15 Sep 2024 11:54:09 +0300
Subject: [PATCH 11/22] Simplify browsing context type
---
.../BiDi/BrowsingContext/BrowsingContextTest.Activate.cs | 2 +-
.../BiDi/BrowsingContext/BrowsingContextTest.Close.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 8 ++++----
.../BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs | 2 +-
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 ++--
5 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index 51d46a003df6..873711af74fe 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -12,7 +12,7 @@ public async Task Activate()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var tab = await bidi.CreateContextAsync(BrowsingContextType.Tab);
+ var tab = await bidi.CreateContextAsync(ContextType.Tab);
await tab.ActivateAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index f9ca95e4d89d..3611e94b240c 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -12,7 +12,7 @@ public async Task CloseTab()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var context = await bidi.CreateContextAsync(BrowsingContextType.Tab);
+ var context = await bidi.CreateContextAsync(ContextType.Tab);
await context.CloseAsync();
}
@@ -22,7 +22,7 @@ public async Task CloseWindow()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var context = await bidi.CreateContextAsync(BrowsingContextType.Window);
+ var context = await bidi.CreateContextAsync(ContextType.Window);
await context.CloseAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index ef5f903a65ce..4b8355dcae83 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -12,7 +12,7 @@ public async Task OpenNewTab()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var context = await bidi.CreateContextAsync(BrowsingContextType.Tab);
+ var context = await bidi.CreateContextAsync(ContextType.Tab);
Assert.IsNotNull(context);
}
@@ -22,7 +22,7 @@ public async Task OpenNewWindow()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var context = await bidi.CreateContextAsync(BrowsingContextType.Window);
+ var context = await bidi.CreateContextAsync(ContextType.Window);
Assert.IsNotNull(context);
}
@@ -34,7 +34,7 @@ public async Task OpenTabWithReferenceBrowsingContext()
var context1 = await driver.AsBidirectionalContextAsync();
- var context2 = await bidi.CreateContextAsync(BrowsingContextType.Tab, new() { ReferenceContext = context1 });
+ var context2 = await bidi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
@@ -46,7 +46,7 @@ public async Task OpenWindowWithReferenceBrowsingContext()
var context1 = await driver.AsBidirectionalContextAsync();
- var context2 = await bidi.CreateContextAsync(BrowsingContextType.Window, new() { ReferenceContext = context1 });
+ var context2 = await bidi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 921dc4a7438f..34e6c979e045 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -39,7 +39,7 @@ public async Task GetAllTopLevelBrowingContexts()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var window2 = await bidi.CreateContextAsync(BrowsingContextType.Window);
+ var window2 = await bidi.CreateContextAsync(ContextType.Window);
var contexts = await bidi.GetTreeAsync();
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 1d56ea0bd6ba..d6499a7c5092 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From 12f9167a50ac0ff7abd74185173e43148f712ba3 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sun, 15 Sep 2024 21:25:38 +0300
Subject: [PATCH 12/22] BiDi is exposed from browsing context
---
.../BrowsingContext/BrowsingContextTest.Activate.cs | 7 ++-----
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 8 ++------
.../BrowsingContextTest.Event.UserPrompt.cs | 10 ++++------
.../BrowsingContext/BrowsingContextTest.GetTree.cs | 4 ++--
.../BrowsingContext/BrowsingContextTest.SetViewport.cs | 2 +-
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 2 +-
6 files changed, 12 insertions(+), 21 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index 873711af74fe..f8f6ef98816d 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -1,6 +1,5 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium.BiDi;
-using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -10,10 +9,8 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Activate()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ var context = await driver.AsBidirectionalContextAsync();
- var tab = await bidi.CreateContextAsync(ContextType.Tab);
-
- await tab.ActivateAsync();
+ await context.ActivateAsync();
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index 4b8355dcae83..6f0866322104 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -30,11 +30,9 @@ public async Task OpenNewWindow()
[TestMethod]
public async Task OpenTabWithReferenceBrowsingContext()
{
- await using var bidi = await driver.AsBidirectionalAsync();
-
var context1 = await driver.AsBidirectionalContextAsync();
- var context2 = await bidi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
+ var context2 = await context1.BiDi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
@@ -42,11 +40,9 @@ public async Task OpenTabWithReferenceBrowsingContext()
[TestMethod]
public async Task OpenWindowWithReferenceBrowsingContext()
{
- await using var bidi = await driver.AsBidirectionalAsync();
-
var context1 = await driver.AsBidirectionalContextAsync();
- var context2 = await bidi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
+ var context2 = await context1.BiDi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index a9ab567a5054..5ec69c929b4e 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -12,15 +12,14 @@ partial class BrowsingContextTest
[TestMethod]
public async Task UserPromptOpenedEvent()
{
- await using var bidi = await driver.AsBidirectionalAsync();
-
var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
- await bidi.OnUserPromptOpenedAsync(tcs.SetResult);
+ //TODO; THhis event can be a part of context
+ await context.BiDi.OnUserPromptOpenedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
@@ -33,15 +32,14 @@ public async Task UserPromptOpenedEvent()
[TestMethod]
public async Task UserPromptClosedEvent()
{
- await using var bidi = await driver.AsBidirectionalAsync();
-
var context = await driver.AsBidirectionalContextAsync();
TaskCompletionSource tcs = new();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
- await bidi.OnUserPromptClosedAsync(tcs.SetResult);
+ //TODO; THhis event can be a part of context
+ await context.BiDi.OnUserPromptClosedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 34e6c979e045..1ce71c3fbd29 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -39,11 +39,11 @@ public async Task GetAllTopLevelBrowingContexts()
{
await using var bidi = await driver.AsBidirectionalAsync();
- var window2 = await bidi.CreateContextAsync(ContextType.Window);
+ var window = await bidi.CreateContextAsync(ContextType.Window);
var contexts = await bidi.GetTreeAsync();
Assert.AreEqual(2, contexts.Count);
- Assert.AreEqual(contexts[1].Context, window2);
+ Assert.AreEqual(contexts[1].Context, window);
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
index 0f0016bc5d5f..552da6ba5310 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -11,6 +11,6 @@ public async Task SetViewport()
{
var context = await driver.AsBidirectionalContextAsync();
- await context.SetViewportAsync(new() { Viewport = new(250, 300), DevicePixelRatio = 5 });
+ await context.SetViewportAsync(new() { Viewport = new(Width: 250, Height: 300), DevicePixelRatio = 5 });
}
}
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index d6499a7c5092..b5483eb44083 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -11,7 +11,7 @@
-
+
From 0cd9dc3744dc9e4834ac6070ad0cb1148251d022 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Mon, 16 Sep 2024 22:08:33 +0300
Subject: [PATCH 13/22] Consistent AsBiDirectional naming
---
.../BrowsingContext/BrowsingContextTest.Activate.cs | 2 +-
.../BrowsingContextTest.CaptureScreenshot.cs | 6 +++---
.../BiDi/BrowsingContext/BrowsingContextTest.Close.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 10 +++++-----
...BrowsingContextTest.Event.BrowsingContextCreated.cs | 2 +-
...owsingContextTest.Event.BrowsingContextDestroyed.cs | 4 ++--
.../BrowsingContextTest.Event.BrowsingContextLoaded.cs | 2 +-
.../BrowsingContextTest.Event.DomContentLoaded.cs | 2 +-
.../BrowsingContextTest.Event.FragmentNavigated.cs | 2 +-
.../BrowsingContextTest.Event.NavigationStarted.cs | 2 +-
.../BrowsingContextTest.Event.UserPrompt.cs | 4 ++--
.../BrowsingContext/BrowsingContextTest.GetTree.cs | 6 +++---
.../BrowsingContextTest.HandleUserPrompt.cs | 2 +-
.../BrowsingContext/BrowsingContextTest.Navigate.cs | 10 +++++-----
.../BiDi/BrowsingContext/BrowsingContextTest.Print.cs | 2 +-
.../BiDi/BrowsingContext/BrowsingContextTest.Reload.cs | 2 +-
.../BrowsingContext/BrowsingContextTest.SetViewport.cs | 2 +-
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 2 +-
18 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index f8f6ef98816d..136871120415 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Activate()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.ActivateAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index 30957d2b0fb5..90eafbfd8b19 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CaptureScreenshot()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
var screenshot = await context.CaptureScreenshotAsync();
@@ -22,7 +22,7 @@ public async Task CaptureScreenshot()
[TestMethod]
public async Task CaptureViewportScreenshot()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
@@ -33,7 +33,7 @@ public async Task CaptureViewportScreenshot()
[TestMethod]
public async Task CaptureElementScreenshot()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index 3611e94b240c..7aba06a3d805 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CloseTab()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task CloseTab()
[TestMethod]
public async Task CloseWindow()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index 6f0866322104..93707170ec11 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task OpenNewTab()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task OpenNewTab()
[TestMethod]
public async Task OpenNewWindow()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
@@ -30,7 +30,7 @@ public async Task OpenNewWindow()
[TestMethod]
public async Task OpenTabWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBidirectionalContextAsync();
+ var context1 = await driver.AsBiDirectionalContextAsync();
var context2 = await context1.BiDi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
@@ -40,7 +40,7 @@ public async Task OpenTabWithReferenceBrowsingContext()
[TestMethod]
public async Task OpenWindowWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBidirectionalContextAsync();
+ var context1 = await driver.AsBiDirectionalContextAsync();
var context2 = await context1.BiDi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
@@ -50,7 +50,7 @@ public async Task OpenWindowWithReferenceBrowsingContext()
[TestMethod]
public async Task UseExistingWindowHandle()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
Assert.IsNotNull(context);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index 7f8c7521242a..cf3bf5fdf3fd 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextCreatedEvent()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index f383b9233fa5..9338106f967b 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -11,9 +11,9 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextDestroyedEvent()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
index f13d40e48151..56b2d84a81af 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextLoadedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
index 9a4b21b1b8fa..94f92f4bdf67 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task DomContentLoadedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
index 8208fd3befdf..75c84f4c086b 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task FragmentNavigatedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
index cfcea66f5e4e..27e35577ec01 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigationStartedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index 5ec69c929b4e..b99081aa3487 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -12,7 +12,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task UserPromptOpenedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
@@ -32,7 +32,7 @@ public async Task UserPromptOpenedEvent()
[TestMethod]
public async Task UserPromptClosedEvent()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 1ce71c3fbd29..024d9c982ec9 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task GetBrowsingContextTree()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
@@ -24,7 +24,7 @@ public async Task GetBrowsingContextTree()
[TestMethod]
public async Task GetBrowsingContextTreeWithDepth()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
@@ -37,7 +37,7 @@ public async Task GetBrowsingContextTreeWithDepth()
[TestMethod]
public async Task GetAllTopLevelBrowingContexts()
{
- await using var bidi = await driver.AsBidirectionalAsync();
+ await using var bidi = await driver.AsBiDirectionalAsync();
var window = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
index 9839083adc51..5641d6643d3a 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
@@ -14,7 +14,7 @@ public async Task HandleUserPrompt()
// temporary use firefox because of chrome automatically handle prompts
using var driver = new FirefoxDriver(new FirefoxOptions() { UseWebSocketUrl = true });
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/alerts.html";
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
index 815e57ffe67f..5a775287d58c 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigateToUrl()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
@@ -22,7 +22,7 @@ public async Task NavigateToUrl()
[TestMethod]
public async Task NavigateToUrlWithReadinessState()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -34,7 +34,7 @@ public async Task NavigateToUrlWithReadinessState()
[TestMethod]
public async Task NavigateBack()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -48,7 +48,7 @@ public async Task NavigateBack()
[TestMethod]
public async Task NavigateForward()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -64,7 +64,7 @@ public async Task NavigateForward()
[TestMethod]
public async Task TraverseHistory()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
index 2946daf698d1..1143c9614719 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task PrintPage()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, 3..5, new(3, 5), 7..] });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
index 28173eb19ac9..218d426557d4 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Reload()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
index 552da6ba5310..3bbe255cad95 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task SetViewport()
{
- var context = await driver.AsBidirectionalContextAsync();
+ var context = await driver.AsBiDirectionalContextAsync();
await context.SetViewportAsync(new() { Viewport = new(Width: 250, Height: 300), DevicePixelRatio = 5 });
}
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index b5483eb44083..0e2a3e43c915 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -11,7 +11,7 @@
-
+
From c3d85b947a59a4962f66dde93f78525dc709c234 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Mon, 16 Sep 2024 22:29:17 +0300
Subject: [PATCH 14/22] Make it even shorter
---
.../BrowsingContext/BrowsingContextTest.Activate.cs | 2 +-
.../BrowsingContextTest.CaptureScreenshot.cs | 6 +++---
.../BiDi/BrowsingContext/BrowsingContextTest.Close.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 10 +++++-----
...BrowsingContextTest.Event.BrowsingContextCreated.cs | 2 +-
...owsingContextTest.Event.BrowsingContextDestroyed.cs | 4 ++--
.../BrowsingContextTest.Event.BrowsingContextLoaded.cs | 2 +-
.../BrowsingContextTest.Event.DomContentLoaded.cs | 2 +-
.../BrowsingContextTest.Event.FragmentNavigated.cs | 2 +-
.../BrowsingContextTest.Event.NavigationStarted.cs | 2 +-
.../BrowsingContextTest.Event.UserPrompt.cs | 4 ++--
.../BrowsingContext/BrowsingContextTest.GetTree.cs | 6 +++---
.../BrowsingContextTest.HandleUserPrompt.cs | 2 +-
.../BrowsingContext/BrowsingContextTest.Navigate.cs | 10 +++++-----
.../BiDi/BrowsingContext/BrowsingContextTest.Print.cs | 2 +-
.../BiDi/BrowsingContext/BrowsingContextTest.Reload.cs | 2 +-
.../BrowsingContext/BrowsingContextTest.SetViewport.cs | 2 +-
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 2 +-
18 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index 136871120415..d061f54f93fa 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Activate()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.ActivateAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index 90eafbfd8b19..262f11f35d3f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CaptureScreenshot()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
var screenshot = await context.CaptureScreenshotAsync();
@@ -22,7 +22,7 @@ public async Task CaptureScreenshot()
[TestMethod]
public async Task CaptureViewportScreenshot()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
@@ -33,7 +33,7 @@ public async Task CaptureViewportScreenshot()
[TestMethod]
public async Task CaptureElementScreenshot()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index 7aba06a3d805..493cbacaedb2 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CloseTab()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task CloseTab()
[TestMethod]
public async Task CloseWindow()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index 93707170ec11..4baae38cb5fb 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task OpenNewTab()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task OpenNewTab()
[TestMethod]
public async Task OpenNewWindow()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
@@ -30,7 +30,7 @@ public async Task OpenNewWindow()
[TestMethod]
public async Task OpenTabWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBiDirectionalContextAsync();
+ var context1 = await driver.AsBiDiContextAsync();
var context2 = await context1.BiDi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
@@ -40,7 +40,7 @@ public async Task OpenTabWithReferenceBrowsingContext()
[TestMethod]
public async Task OpenWindowWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBiDirectionalContextAsync();
+ var context1 = await driver.AsBiDiContextAsync();
var context2 = await context1.BiDi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
@@ -50,7 +50,7 @@ public async Task OpenWindowWithReferenceBrowsingContext()
[TestMethod]
public async Task UseExistingWindowHandle()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
Assert.IsNotNull(context);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index cf3bf5fdf3fd..b9cd1731be3c 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextCreatedEvent()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index 9338106f967b..909cc334e0c3 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -11,9 +11,9 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextDestroyedEvent()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
index 56b2d84a81af..86482178ad21 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextLoadedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
index 94f92f4bdf67..d6fbae5e8aaf 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task DomContentLoadedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
index 75c84f4c086b..c95a1939e8c7 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task FragmentNavigatedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
index 27e35577ec01..f952dabe8425 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigationStartedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index b99081aa3487..28c0b005faa5 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -12,7 +12,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task UserPromptOpenedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
@@ -32,7 +32,7 @@ public async Task UserPromptOpenedEvent()
[TestMethod]
public async Task UserPromptClosedEvent()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 024d9c982ec9..f5be588a54d9 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task GetBrowsingContextTree()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
@@ -24,7 +24,7 @@ public async Task GetBrowsingContextTree()
[TestMethod]
public async Task GetBrowsingContextTreeWithDepth()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
@@ -37,7 +37,7 @@ public async Task GetBrowsingContextTreeWithDepth()
[TestMethod]
public async Task GetAllTopLevelBrowingContexts()
{
- await using var bidi = await driver.AsBiDirectionalAsync();
+ await using var bidi = await driver.AsBiDiAsync();
var window = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
index 5641d6643d3a..b609ab05291d 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
@@ -14,7 +14,7 @@ public async Task HandleUserPrompt()
// temporary use firefox because of chrome automatically handle prompts
using var driver = new FirefoxDriver(new FirefoxOptions() { UseWebSocketUrl = true });
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
driver.Url = "https://www.selenium.dev/selenium/web/alerts.html";
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
index 5a775287d58c..bd04d02a3948 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigateToUrl()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
@@ -22,7 +22,7 @@ public async Task NavigateToUrl()
[TestMethod]
public async Task NavigateToUrlWithReadinessState()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -34,7 +34,7 @@ public async Task NavigateToUrlWithReadinessState()
[TestMethod]
public async Task NavigateBack()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -48,7 +48,7 @@ public async Task NavigateBack()
[TestMethod]
public async Task NavigateForward()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
@@ -64,7 +64,7 @@ public async Task NavigateForward()
[TestMethod]
public async Task TraverseHistory()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
index 1143c9614719..03c739ee3b8b 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task PrintPage()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, 3..5, new(3, 5), 7..] });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
index 218d426557d4..65e252750345 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Reload()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
index 3bbe255cad95..8442a6e4653f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -9,7 +9,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task SetViewport()
{
- var context = await driver.AsBiDirectionalContextAsync();
+ var context = await driver.AsBiDiContextAsync();
await context.SetViewportAsync(new() { Viewport = new(Width: 250, Height: 300), DevicePixelRatio = 5 });
}
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 0e2a3e43c915..cf34bd8677df 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -11,7 +11,7 @@
-
+
From 0e4bd13e0a9fcb5a8b20021ae623acab34911eda Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Fri, 20 Sep 2024 18:43:12 +0300
Subject: [PATCH 15/22] Use stable selenium
---
examples/dotnet/SeleniumDocs/NuGet.config | 1 -
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 ++--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/NuGet.config b/examples/dotnet/SeleniumDocs/NuGet.config
index 49be2fc9f6e0..45c0bc37a95a 100644
--- a/examples/dotnet/SeleniumDocs/NuGet.config
+++ b/examples/dotnet/SeleniumDocs/NuGet.config
@@ -2,6 +2,5 @@
-
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index cf34bd8677df..6ba36e852ca5 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From 04704a147df259a9bb994a1e5f62304af13c81ea Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Fri, 20 Sep 2024 21:46:35 +0300
Subject: [PATCH 16/22] Do no show that BiDi object is disposable
---
.../BiDi/BrowsingContext/BrowsingContextTest.Close.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 4 ++--
.../BrowsingContextTest.Event.BrowsingContextCreated.cs | 2 +-
.../BrowsingContextTest.Event.BrowsingContextDestroyed.cs | 2 +-
.../BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs | 2 +-
5 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index 493cbacaedb2..c306fd4eadd5 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CloseTab()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task CloseTab()
[TestMethod]
public async Task CloseWindow()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index 4baae38cb5fb..27cac86e9916 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -10,7 +10,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task OpenNewTab()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Tab);
@@ -20,7 +20,7 @@ public async Task OpenNewTab()
[TestMethod]
public async Task OpenNewWindow()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var context = await bidi.CreateContextAsync(ContextType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index b9cd1731be3c..af1090d31ded 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextCreatedEvent()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index 909cc334e0c3..24c9a31f73cc 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -11,7 +11,7 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextDestroyedEvent()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var context = await driver.AsBiDiContextAsync();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index f5be588a54d9..8d3a9feceba8 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -37,7 +37,7 @@ public async Task GetBrowsingContextTreeWithDepth()
[TestMethod]
public async Task GetAllTopLevelBrowingContexts()
{
- await using var bidi = await driver.AsBiDiAsync();
+ var bidi = await driver.AsBiDiAsync();
var window = await bidi.CreateContextAsync(ContextType.Window);
From a5bf483858ad392920c41ecd058f546871718425 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Fri, 20 Sep 2024 22:57:59 +0300
Subject: [PATCH 17/22] No sandbox to be able to print a page
---
examples/dotnet/SeleniumDocs/BaseTest.cs | 3 +++
1 file changed, 3 insertions(+)
diff --git a/examples/dotnet/SeleniumDocs/BaseTest.cs b/examples/dotnet/SeleniumDocs/BaseTest.cs
index dc7c844e3604..6ddd5c3a4ae7 100644
--- a/examples/dotnet/SeleniumDocs/BaseTest.cs
+++ b/examples/dotnet/SeleniumDocs/BaseTest.cs
@@ -40,6 +40,9 @@ protected void StartDriver(string browserVersion = "stable")
BrowserVersion = browserVersion,
UseWebSocketUrl = true,
};
+
+ options.AddArgument("--no-sandbox");
+
driver = new ChromeDriver(options);
}
From 90aa4c1b3597a6e51af54841694b6b1d6148a67a Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Thu, 31 Oct 2024 21:56:01 +0300
Subject: [PATCH 18/22] Upgrade
---
.../BrowsingContextTest.CaptureScreenshot.cs | 6 +++---
.../BiDi/BrowsingContext/BrowsingContextTest.Close.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.Create.cs | 8 ++++----
.../BrowsingContextTest.Event.BrowsingContextCreated.cs | 2 +-
.../BrowsingContextTest.Event.BrowsingContextDestroyed.cs | 2 +-
.../BrowsingContextTest.Event.UserPrompt.cs | 4 ++--
.../BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs | 4 ++--
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 ++--
8 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index 262f11f35d3f..0d2b7b10ad21 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -24,7 +24,7 @@ public async Task CaptureViewportScreenshot()
{
var context = await driver.AsBiDiContextAsync();
- var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Box(5, 5, 10, 10) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
@@ -37,10 +37,10 @@ public async Task CaptureElementScreenshot()
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
- var element = (await context.LocateNodesAsync(Locator.Css("#checky")))[0];
+ var element = (await context.LocateNodesAsync(new Locator.Css("#checky")))[0];
//TODO: ShareId is a type, not string
- var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ElementClipRectangle(new(element.SharedId)) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Element(new(element.SharedId)) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index c306fd4eadd5..c83498c152d8 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -12,7 +12,7 @@ public async Task CloseTab()
{
var bidi = await driver.AsBiDiAsync();
- var context = await bidi.CreateContextAsync(ContextType.Tab);
+ var context = await bidi.BrowsingContext.CreateAsync(ContextType.Tab);
await context.CloseAsync();
}
@@ -22,7 +22,7 @@ public async Task CloseWindow()
{
var bidi = await driver.AsBiDiAsync();
- var context = await bidi.CreateContextAsync(ContextType.Window);
+ var context = await bidi.BrowsingContext.CreateAsync(ContextType.Window);
await context.CloseAsync();
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index 27cac86e9916..a598036c64b3 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -12,7 +12,7 @@ public async Task OpenNewTab()
{
var bidi = await driver.AsBiDiAsync();
- var context = await bidi.CreateContextAsync(ContextType.Tab);
+ var context = await bidi.BrowsingContext.CreateAsync(ContextType.Tab);
Assert.IsNotNull(context);
}
@@ -22,7 +22,7 @@ public async Task OpenNewWindow()
{
var bidi = await driver.AsBiDiAsync();
- var context = await bidi.CreateContextAsync(ContextType.Window);
+ var context = await bidi.BrowsingContext.CreateAsync(ContextType.Window);
Assert.IsNotNull(context);
}
@@ -32,7 +32,7 @@ public async Task OpenTabWithReferenceBrowsingContext()
{
var context1 = await driver.AsBiDiContextAsync();
- var context2 = await context1.BiDi.CreateContextAsync(ContextType.Tab, new() { ReferenceContext = context1 });
+ var context2 = await context1.BiDi.BrowsingContext.CreateAsync(ContextType.Tab, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
@@ -42,7 +42,7 @@ public async Task OpenWindowWithReferenceBrowsingContext()
{
var context1 = await driver.AsBiDiContextAsync();
- var context2 = await context1.BiDi.CreateContextAsync(ContextType.Window, new() { ReferenceContext = context1 });
+ var context2 = await context1.BiDi.BrowsingContext.CreateAsync(ContextType.Window, new() { ReferenceContext = context1 });
Assert.IsNotNull(context2);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index af1090d31ded..fd3971d19fa8 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -15,7 +15,7 @@ public async Task BrowsingContextCreatedEvent()
TaskCompletionSource tcs = new();
- await bidi.OnContextCreatedAsync(tcs.SetResult);
+ await bidi.BrowsingContext.OnContextCreatedAsync(tcs.SetResult);
driver.SwitchTo().NewWindow(OpenQA.Selenium.WindowType.Window);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index 24c9a31f73cc..5e1af05acfbe 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -17,7 +17,7 @@ public async Task BrowsingContextDestroyedEvent()
TaskCompletionSource tcs = new();
- await bidi.OnContextDestroyedAsync(tcs.SetResult);
+ await bidi.BrowsingContext.OnContextDestroyedAsync(tcs.SetResult);
await context.CloseAsync();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index 28c0b005faa5..becb7e132660 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -19,7 +19,7 @@ public async Task UserPromptOpenedEvent()
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
//TODO; THhis event can be a part of context
- await context.BiDi.OnUserPromptOpenedAsync(tcs.SetResult);
+ await context.BiDi.BrowsingContext.OnUserPromptOpenedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
@@ -39,7 +39,7 @@ public async Task UserPromptClosedEvent()
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
//TODO; THhis event can be a part of context
- await context.BiDi.OnUserPromptClosedAsync(tcs.SetResult);
+ await context.BiDi.BrowsingContext.OnUserPromptClosedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index 8d3a9feceba8..a9ad13348cc6 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -39,9 +39,9 @@ public async Task GetAllTopLevelBrowingContexts()
{
var bidi = await driver.AsBiDiAsync();
- var window = await bidi.CreateContextAsync(ContextType.Window);
+ var window = await bidi.BrowsingContext.CreateAsync(ContextType.Window);
- var contexts = await bidi.GetTreeAsync();
+ var contexts = await bidi.BrowsingContext.GetTreeAsync();
Assert.AreEqual(2, contexts.Count);
Assert.AreEqual(contexts[1].Context, window);
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 6ba36e852ca5..8fc8a52cb115 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From 6ef220a2156b25610ee7f43be243402d985dcb8e Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 14 Dec 2024 15:12:02 +0300
Subject: [PATCH 19/22] Simplify capture element screenshot
---
.../BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs | 3 +--
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 ++--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index 0d2b7b10ad21..5f84d2690169 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -39,8 +39,7 @@ public async Task CaptureElementScreenshot()
var element = (await context.LocateNodesAsync(new Locator.Css("#checky")))[0];
- //TODO: ShareId is a type, not string
- var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Element(new(element.SharedId)) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Element(element) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 25fdea77e910..75e464abb5b3 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From b93f3c2d8a938b31dcc0c1572f829fc76e9cd2c2 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 22 Mar 2025 13:23:25 +0300
Subject: [PATCH 20/22] Actualize to 4.30
---
.../BrowsingContext/BrowsingContextTest.Activate.cs | 3 ---
.../BrowsingContextTest.CaptureScreenshot.cs | 7 -------
.../BrowsingContext/BrowsingContextTest.Close.cs | 5 -----
.../BrowsingContext/BrowsingContextTest.Create.cs | 6 +++---
...wsingContextTest.Event.BrowsingContextCreated.cs | 3 ---
...ingContextTest.Event.BrowsingContextDestroyed.cs | 5 -----
...owsingContextTest.Event.BrowsingContextLoaded.cs | 3 ---
.../BrowsingContextTest.Event.DomContentLoaded.cs | 3 ---
.../BrowsingContextTest.Event.FragmentNavigated.cs | 3 ---
.../BrowsingContextTest.Event.NavigationStarted.cs | 3 ---
.../BrowsingContextTest.Event.UserPrompt.cs | 5 -----
.../BrowsingContext/BrowsingContextTest.GetTree.cs | 6 ------
.../BrowsingContextTest.HandleUserPrompt.cs | 4 +++-
.../BrowsingContext/BrowsingContextTest.Navigate.cs | 11 -----------
.../BrowsingContext/BrowsingContextTest.Print.cs | 3 ---
.../BrowsingContext/BrowsingContextTest.Reload.cs | 3 ---
.../BrowsingContextTest.SetViewport.cs | 3 ---
.../BiDi/BrowsingContext/BrowsingContextTest.cs | 13 +++++++++++++
18 files changed, 19 insertions(+), 70 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
index d061f54f93fa..65fbf2742075 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Activate.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -9,8 +8,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Activate()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.ActivateAsync();
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index 5f84d2690169..dffa262fbbee 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System.Threading.Tasks;
@@ -10,8 +9,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CaptureScreenshot()
{
- var context = await driver.AsBiDiContextAsync();
-
var screenshot = await context.CaptureScreenshotAsync();
Assert.IsNotNull(screenshot);
@@ -22,8 +19,6 @@ public async Task CaptureScreenshot()
[TestMethod]
public async Task CaptureViewportScreenshot()
{
- var context = await driver.AsBiDiContextAsync();
-
var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Box(5, 5, 10, 10) });
Assert.IsNotNull(screenshot);
@@ -33,8 +28,6 @@ public async Task CaptureViewportScreenshot()
[TestMethod]
public async Task CaptureElementScreenshot()
{
- var context = await driver.AsBiDiContextAsync();
-
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
var element = (await context.LocateNodesAsync(new Locator.Css("#checky")))[0];
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
index c83498c152d8..cc048f96d044 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Close.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System.Threading.Tasks;
@@ -10,8 +9,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task CloseTab()
{
- var bidi = await driver.AsBiDiAsync();
-
var context = await bidi.BrowsingContext.CreateAsync(ContextType.Tab);
await context.CloseAsync();
@@ -20,8 +17,6 @@ public async Task CloseTab()
[TestMethod]
public async Task CloseWindow()
{
- var bidi = await driver.AsBiDiAsync();
-
var context = await bidi.BrowsingContext.CreateAsync(ContextType.Window);
await context.CloseAsync();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
index a598036c64b3..cff30acced7b 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Create.cs
@@ -30,7 +30,7 @@ public async Task OpenNewWindow()
[TestMethod]
public async Task OpenTabWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBiDiContextAsync();
+ var context1 = context;
var context2 = await context1.BiDi.BrowsingContext.CreateAsync(ContextType.Tab, new() { ReferenceContext = context1 });
@@ -40,7 +40,7 @@ public async Task OpenTabWithReferenceBrowsingContext()
[TestMethod]
public async Task OpenWindowWithReferenceBrowsingContext()
{
- var context1 = await driver.AsBiDiContextAsync();
+ var context1 = context;
var context2 = await context1.BiDi.BrowsingContext.CreateAsync(ContextType.Window, new() { ReferenceContext = context1 });
@@ -50,7 +50,7 @@ public async Task OpenWindowWithReferenceBrowsingContext()
[TestMethod]
public async Task UseExistingWindowHandle()
{
- var context = await driver.AsBiDiContextAsync();
+ var context = (await bidi.BrowsingContext.GetTreeAsync())[0].Context;
Assert.IsNotNull(context);
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
index fd3971d19fa8..94f58ecba264 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextCreated.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextCreatedEvent()
{
- var bidi = await driver.AsBiDiAsync();
-
TaskCompletionSource tcs = new();
await bidi.BrowsingContext.OnContextCreatedAsync(tcs.SetResult);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
index 5e1af05acfbe..f74d3f1e555e 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextDestroyed.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,10 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextDestroyedEvent()
{
- var bidi = await driver.AsBiDiAsync();
-
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await bidi.BrowsingContext.OnContextDestroyedAsync(tcs.SetResult);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
index 86482178ad21..fb5c12c3f43f 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.BrowsingContextLoaded.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task BrowsingContextLoadedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await context.OnLoadAsync(tcs.SetResult);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
index d6fbae5e8aaf..8745016d758e 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.DomContentLoaded.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task DomContentLoadedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await context.OnDomContentLoadedAsync(tcs.SetResult);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
index c95a1939e8c7..0c5f080c1ed3 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.FragmentNavigated.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task FragmentNavigatedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/linked_image.html", new() { Wait = ReadinessState.Complete });
TaskCompletionSource tcs = new();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
index f952dabe8425..e8d2d5ccc160 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.NavigationStarted.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -11,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigationStartedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await context.OnNavigationStartedAsync(tcs.SetResult);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index becb7e132660..512dc1fe6669 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -1,6 +1,5 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System;
using System.Threading.Tasks;
@@ -12,8 +11,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task UserPromptOpenedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
@@ -32,8 +29,6 @@ public async Task UserPromptOpenedEvent()
[TestMethod]
public async Task UserPromptClosedEvent()
{
- var context = await driver.AsBiDiContextAsync();
-
TaskCompletionSource tcs = new();
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
index a9ad13348cc6..7eb40ec9f2e2 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.GetTree.cs
@@ -10,8 +10,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task GetBrowsingContextTree()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
var contexts = await context.GetTreeAsync();
@@ -24,8 +22,6 @@ public async Task GetBrowsingContextTree()
[TestMethod]
public async Task GetBrowsingContextTreeWithDepth()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/iframes.html", new() { Wait = ReadinessState.Complete });
var contexts = await context.GetTreeAsync(new() { MaxDepth = 0 });
@@ -37,8 +33,6 @@ public async Task GetBrowsingContextTreeWithDepth()
[TestMethod]
public async Task GetAllTopLevelBrowingContexts()
{
- var bidi = await driver.AsBiDiAsync();
-
var window = await bidi.BrowsingContext.CreateAsync(ContextType.Window);
var contexts = await bidi.BrowsingContext.GetTreeAsync();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
index b609ab05291d..516918cb90f5 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.HandleUserPrompt.cs
@@ -14,7 +14,9 @@ public async Task HandleUserPrompt()
// temporary use firefox because of chrome automatically handle prompts
using var driver = new FirefoxDriver(new FirefoxOptions() { UseWebSocketUrl = true });
- var context = await driver.AsBiDiContextAsync();
+ var bidi = await driver.AsBiDiAsync();
+
+ var context = (await bidi.BrowsingContext.GetTreeAsync())[0].Context;
driver.Url = "https://www.selenium.dev/selenium/web/alerts.html";
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
index bd04d02a3948..c00b18b0839c 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Navigate.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System.Threading.Tasks;
@@ -10,8 +9,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task NavigateToUrl()
{
- var context = await driver.AsBiDiContextAsync();
-
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html");
Assert.IsNotNull(info);
@@ -22,8 +19,6 @@ public async Task NavigateToUrl()
[TestMethod]
public async Task NavigateToUrlWithReadinessState()
{
- var context = await driver.AsBiDiContextAsync();
-
var info = await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
Assert.IsNotNull(info);
@@ -34,8 +29,6 @@ public async Task NavigateToUrlWithReadinessState()
[TestMethod]
public async Task NavigateBack()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
await context.NavigateBackAsync();
@@ -48,8 +41,6 @@ public async Task NavigateBack()
[TestMethod]
public async Task NavigateForward()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
await context.NavigateBackAsync();
@@ -64,8 +55,6 @@ public async Task NavigateForward()
[TestMethod]
public async Task TraverseHistory()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
await context.TraverseHistoryAsync(-1);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
index 03c739ee3b8b..07056fd63cec 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Print.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -9,8 +8,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task PrintPage()
{
- var context = await driver.AsBiDiContextAsync();
-
var pdf = await context.PrintAsync(new() { PageRanges = [1, 2, 3..5, new(3, 5), 7..] });
Assert.IsNotNull(pdf);
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
index 65e252750345..963ce3f34212 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Reload.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using OpenQA.Selenium.BiDi.Modules.BrowsingContext;
using System.Threading.Tasks;
@@ -10,8 +9,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task Reload()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.NavigateAsync("https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html", new() { Wait = ReadinessState.Complete });
var info = await context.ReloadAsync();
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
index 8442a6e4653f..9bba6128cc3d 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.SetViewport.cs
@@ -1,5 +1,4 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
-using OpenQA.Selenium.BiDi;
using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
@@ -9,8 +8,6 @@ partial class BrowsingContextTest
[TestMethod]
public async Task SetViewport()
{
- var context = await driver.AsBiDiContextAsync();
-
await context.SetViewportAsync(new() { Viewport = new(Width: 250, Height: 300), DevicePixelRatio = 5 });
}
}
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
index 3da8a314d919..530ea1ff27cb 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.cs
@@ -1,8 +1,21 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
+using OpenQA.Selenium.BiDi;
+using System.Threading.Tasks;
namespace SeleniumDocs.BiDi.BrowsingContext;
[TestClass]
public partial class BrowsingContextTest : BaseChromeTest
{
+ private OpenQA.Selenium.BiDi.BiDi bidi;
+
+ private OpenQA.Selenium.BiDi.Modules.BrowsingContext.BrowsingContext context;
+
+ [TestInitialize]
+ public async Task InitializeBidi()
+ {
+ bidi = await driver.AsBiDiAsync();
+
+ context = (await bidi.BrowsingContext.GetTreeAsync())[0].Context;
+ }
}
From 9a9bbd7474c2b8279f444ac039e239f08e27ee58 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 22 Mar 2025 13:26:18 +0300
Subject: [PATCH 21/22] Break some of them
---
.../BrowsingContextTest.CaptureScreenshot.cs | 6 +++---
examples/dotnet/SeleniumDocs/SeleniumDocs.csproj | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
index dffa262fbbee..590d36a8737b 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.CaptureScreenshot.cs
@@ -19,7 +19,7 @@ public async Task CaptureScreenshot()
[TestMethod]
public async Task CaptureViewportScreenshot()
{
- var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Box(5, 5, 10, 10) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new BoxClipRectangle(5, 5, 10, 10) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
@@ -30,9 +30,9 @@ public async Task CaptureElementScreenshot()
{
driver.Url = "https://www.selenium.dev/selenium/web/formPage.html";
- var element = (await context.LocateNodesAsync(new Locator.Css("#checky")))[0];
+ var element = (await context.LocateNodesAsync(new CssLocator("#checky")))[0];
- var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ClipRectangle.Element(element) });
+ var screenshot = await context.CaptureScreenshotAsync(new() { Clip = new ElementClipRectangle(element) });
Assert.IsNotNull(screenshot);
Assert.IsNotNull(screenshot.Data);
diff --git a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
index 264303d3d127..6bdbfb77b2ec 100644
--- a/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
+++ b/examples/dotnet/SeleniumDocs/SeleniumDocs.csproj
@@ -10,8 +10,8 @@
-
-
+
+
From f121c9efae0af31d833953c6561fcb23d39bab87 Mon Sep 17 00:00:00 2001
From: Nikolay Borisenko <22616990+nvborisenko@users.noreply.github.com>
Date: Sat, 22 Mar 2025 13:39:15 +0300
Subject: [PATCH 22/22] Simplify
---
.../BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
index 512dc1fe6669..0b6415ffa368 100644
--- a/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
+++ b/examples/dotnet/SeleniumDocs/BiDi/BrowsingContext/BrowsingContextTest.Event.UserPrompt.cs
@@ -16,7 +16,7 @@ public async Task UserPromptOpenedEvent()
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
//TODO; THhis event can be a part of context
- await context.BiDi.BrowsingContext.OnUserPromptOpenedAsync(tcs.SetResult);
+ await bidi.BrowsingContext.OnUserPromptOpenedAsync(tcs.SetResult);
driver.FindElement(By.Id("prompt")).Click();
@@ -34,8 +34,8 @@ public async Task UserPromptClosedEvent()
await context.NavigateAsync("https://www.selenium.dev/selenium/web/alerts.html", new() { Wait = ReadinessState.Complete });
//TODO; THhis event can be a part of context
- await context.BiDi.BrowsingContext.OnUserPromptClosedAsync(tcs.SetResult);
-
+ await bidi.BrowsingContext.OnUserPromptClosedAsync(tcs.SetResult);
+
driver.FindElement(By.Id("prompt")).Click();
//await context.HandleUserPromptAsync();