Skip to content

Commit 8d5a099

Browse files
authored
[dotnet] [bidi] Make UrlPattern as not nested (#15434)
1 parent d260b33 commit 8d5a099

File tree

3 files changed

+15
-19
lines changed

3 files changed

+15
-19
lines changed

dotnet/src/webdriver/BiDi/Communication/Json/BiDiJsonSerializerContext.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,6 @@ namespace OpenQA.Selenium.BiDi.Communication.Json;
122122
[JsonSerializable(typeof(Modules.BrowsingContext.Origin), TypeInfoPropertyName = "BrowsingContext_Origin")]
123123

124124
[JsonSerializable(typeof(Modules.Network.BytesValue.String), TypeInfoPropertyName = "Network_BytesValue_String")]
125-
[JsonSerializable(typeof(Modules.Network.UrlPattern.String), TypeInfoPropertyName = "Network_UrlPattern_String")]
126125
[JsonSerializable(typeof(Modules.Network.ContinueWithAuthParameters.Default), TypeInfoPropertyName = "Network_ContinueWithAuthParameters_Default")]
127126
[JsonSerializable(typeof(Modules.Network.AddInterceptCommand))]
128127
[JsonSerializable(typeof(Modules.Network.AddInterceptResult))]

dotnet/src/webdriver/BiDi/Modules/Network/UrlPattern.cs

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,27 +22,24 @@
2222
namespace OpenQA.Selenium.BiDi.Modules.Network;
2323

2424
[JsonPolymorphic(TypeDiscriminatorPropertyName = "type")]
25-
[JsonDerivedType(typeof(Pattern), "pattern")]
26-
[JsonDerivedType(typeof(String), "string")]
25+
[JsonDerivedType(typeof(PatternUrlPattern), "pattern")]
26+
[JsonDerivedType(typeof(StringUrlPattern), "string")]
2727
public abstract record UrlPattern
2828
{
29-
public static implicit operator UrlPattern(string value) => new String(value);
30-
31-
public record Pattern : UrlPattern
32-
{
33-
public string? Protocol { get; set; }
29+
public static implicit operator UrlPattern(string value) => new StringUrlPattern(value);
30+
}
3431

35-
public string? Hostname { get; set; }
32+
public record PatternUrlPattern : UrlPattern
33+
{
34+
public string? Protocol { get; set; }
3635

37-
public string? Port { get; set; }
36+
public string? Hostname { get; set; }
3837

39-
public string? Pathname { get; set; }
38+
public string? Port { get; set; }
4039

41-
public string? Search { get; set; }
42-
}
40+
public string? Pathname { get; set; }
4341

44-
public record String(string Pattern) : UrlPattern
45-
{
46-
public new string Pattern { get; } = Pattern;
47-
}
42+
public string? Search { get; set; }
4843
}
44+
45+
public record StringUrlPattern(string Pattern) : UrlPattern;

dotnet/test/common/BiDi/Network/NetworkTest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public async Task CanAddInterceptStringUrlPattern()
4040
await using var intercept = await bidi.Network.InterceptRequestAsync(e => Task.CompletedTask, new()
4141
{
4242
UrlPatterns = [
43-
new UrlPattern.String("http://localhost:4444"),
43+
new StringUrlPattern("http://localhost:4444"),
4444
"http://localhost:4444/"
4545
]
4646
});
@@ -53,7 +53,7 @@ public async Task CanAddInterceptUrlPattern()
5353
{
5454
await using var intercept = await bidi.Network.InterceptRequestAsync(e => Task.CompletedTask, interceptOptions: new()
5555
{
56-
UrlPatterns = [new UrlPattern.Pattern()
56+
UrlPatterns = [new PatternUrlPattern()
5757
{
5858
Hostname = "localhost",
5959
Protocol = "http"

0 commit comments

Comments
 (0)