From 2a282caecfb3d128e57d203b7e280fd493cb46ac Mon Sep 17 00:00:00 2001 From: scottsauber Date: Sun, 12 Nov 2023 20:54:32 -0600 Subject: [PATCH] failing test to prove the re-rendered element issue --- .../BlazorE2E/LabelQueryComponent.razor | 8 ++++++++ .../Labels/LabelQueryExtensionsTests.cs | 12 ++++++++++++ 2 files changed, 20 insertions(+) diff --git a/tests/bunit.testassets/BlazorE2E/LabelQueryComponent.razor b/tests/bunit.testassets/BlazorE2E/LabelQueryComponent.razor index 63021c403..eab1782d6 100644 --- a/tests/bunit.testassets/BlazorE2E/LabelQueryComponent.razor +++ b/tests/bunit.testassets/BlazorE2E/LabelQueryComponent.razor @@ -33,6 +33,11 @@ @((MarkupString) $"""<{htmlElement} aria-labelledby="{htmlElement}-with-aria-labelledby">""") } +@* Testing we get back the re-rendered element *@ + + + + @code { readonly List htmlElementsThatCanHaveALabel = new() { @@ -44,4 +49,7 @@ "output", "progress", }; + + private int _count; + public void IncrementCount() => _count++; } diff --git a/tests/bunit.web.query.tests/Labels/LabelQueryExtensionsTests.cs b/tests/bunit.web.query.tests/Labels/LabelQueryExtensionsTests.cs index 44db6a118..ab327504d 100644 --- a/tests/bunit.web.query.tests/Labels/LabelQueryExtensionsTests.cs +++ b/tests/bunit.web.query.tests/Labels/LabelQueryExtensionsTests.cs @@ -85,4 +85,16 @@ public void Test006(string htmlElementWithLabel) input.NodeName.ShouldBe(htmlElementWithLabel, StringCompareShould.IgnoreCase); input.GetAttribute("aria-labelledby").ShouldBe($"{htmlElementWithLabel}-with-aria-labelledby"); } + + [Fact(DisplayName = "Should reflect latest value when component re-renders")] + public void Test007() + { + var cut = RenderComponent(); + + var input = cut.FindByLabelText("Re-rendered Element"); + input.GetAttribute("value").ShouldBe("0"); + + cut.Find("#increment-button").Click(); + input.GetAttribute("value").ShouldBe("1"); + } }