Skip to content

Commit 926cb9b

Browse files
kblokclaude
andcommitted
fix(test): update ShouldHandleTargets to use dynamic initial target count
Match upstream test behavior: read initialTargetCount dynamically and compare all subsequent counts relative to it, rather than hardcoding 2. Upstream expects 3 or 4 targets at startup; after the setAutoAttach filter change (PR #14821), Chrome attaches Tab + Page per new page (+2) instead of just the Page (+1), so all relative increments now match upstream. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 220f3b9 commit 926cb9b

1 file changed

Lines changed: 8 additions & 7 deletions

File tree

lib/PuppeteerSharp.Tests/TargetManagerTests/TargetManagerTests.cs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,38 +30,39 @@ public TargetManagerTests() : base()
3030
public async Task ShouldHandleTargets()
3131
{
3232
var targetManager = (Browser as CdpBrowser)!.TargetManager;
33-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(2));
33+
var initialTargetCount = targetManager.GetAvailableTargets().Values.Count;
34+
Assert.That(initialTargetCount, Is.GreaterThanOrEqualTo(2));
3435

3536
Assert.That(await Context.PagesAsync(), Is.Empty);
36-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(2));
37+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount));
3738

3839
var page = await Context.NewPageAsync();
3940
Assert.That((await Context.PagesAsync()), Has.Length.EqualTo(1));
40-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(3));
41+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount + 2));
4142

4243
await page.GoToAsync(TestConstants.EmptyPage);
4344
Assert.That((await Context.PagesAsync()), Has.Length.EqualTo(1));
44-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(3));
45+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount + 2));
4546

4647
var frameTask = page.WaitForFrameAsync(target => target.Url == TestConstants.EmptyPage);
4748
await FrameUtils.AttachFrameAsync(page, "frame1", TestConstants.EmptyPage);
4849
await frameTask.WithTimeout();
4950
Assert.That((await Context.PagesAsync()), Has.Length.EqualTo(1));
50-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(3));
51+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount + 2));
5152
Assert.That(page.Frames, Has.Length.EqualTo(2));
5253

5354
frameTask = page.WaitForFrameAsync(target => target.Url == TestConstants.CrossProcessUrl + "/empty.html");
5455
await FrameUtils.AttachFrameAsync(page, "frame2", TestConstants.CrossProcessUrl + "/empty.html");
5556
await frameTask.WithTimeout();
5657
Assert.That((await Context.PagesAsync()), Has.Length.EqualTo(1));
57-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(4));
58+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount + 3));
5859
Assert.That(page.Frames, Has.Length.EqualTo(3));
5960

6061
frameTask = page.WaitForFrameAsync(target => target.Url == TestConstants.CrossProcessUrl + "/empty.html");
6162
await FrameUtils.AttachFrameAsync(page, "frame3", TestConstants.CrossProcessUrl + "/empty.html");
6263
await frameTask.WithTimeout();
6364
Assert.That((await Context.PagesAsync()), Has.Length.EqualTo(1));
64-
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(5));
65+
Assert.That(targetManager.GetAvailableTargets().Values, Has.Count.EqualTo(initialTargetCount + 4));
6566
Assert.That(page.Frames, Has.Length.EqualTo(4));
6667
}
6768
}

0 commit comments

Comments
 (0)