From 833e67d63590e77aa26bd036e6988517e80d230b Mon Sep 17 00:00:00 2001 From: Egil Hansen Date: Fri, 8 May 2020 11:29:22 +0000 Subject: [PATCH] Code clean up --- .../ComponentParameterBuilderTests.cs | 2 -- .../ComponentParameterBuilder.cs | 4 ++-- .../BlazorE2E/ComponentRenderingTest.cs | 19 +++++++++++++------ .../ComponentTestFixtureTest.cs | 1 + .../Extensions/Internal/ElementFactory.cs | 3 +-- src/bunit.web/RazorTesting/Fixture.cs | 2 +- src/bunit.web/Rendering/RenderedComponent.cs | 4 +--- src/bunit.web/Rendering/RenderedFragment.cs | 8 +++----- 8 files changed, 22 insertions(+), 21 deletions(-) rename src/bunit.core/{Rendering => }/ComponentParameterBuilder.cs (99%) diff --git a/src/bunit.core.tests/ComponentParameterBuilderTests.cs b/src/bunit.core.tests/ComponentParameterBuilderTests.cs index c3376cfa6..2419e656d 100644 --- a/src/bunit.core.tests/ComponentParameterBuilderTests.cs +++ b/src/bunit.core.tests/ComponentParameterBuilderTests.cs @@ -1,7 +1,5 @@ using System; using System.Threading.Tasks; - -using Bunit.Rendering; using Bunit.TestAssets.SampleComponents; using Microsoft.AspNetCore.Components; diff --git a/src/bunit.core/Rendering/ComponentParameterBuilder.cs b/src/bunit.core/ComponentParameterBuilder.cs similarity index 99% rename from src/bunit.core/Rendering/ComponentParameterBuilder.cs rename to src/bunit.core/ComponentParameterBuilder.cs index 9b8c99053..31fac9c1a 100644 --- a/src/bunit.core/Rendering/ComponentParameterBuilder.cs +++ b/src/bunit.core/ComponentParameterBuilder.cs @@ -5,12 +5,12 @@ using System.Linq.Expressions; using System.Reflection; using System.Threading.Tasks; - +using Bunit.Rendering; using Microsoft.AspNetCore.Components; using EC = Microsoft.AspNetCore.Components.EventCallback; -namespace Bunit.Rendering +namespace Bunit { /// /// A builder to set a value for strongly typed ComponentParameters. diff --git a/src/bunit.web.tests/BlazorE2E/ComponentRenderingTest.cs b/src/bunit.web.tests/BlazorE2E/ComponentRenderingTest.cs index 4e08cafc0..9d85a3073 100644 --- a/src/bunit.web.tests/BlazorE2E/ComponentRenderingTest.cs +++ b/src/bunit.web.tests/BlazorE2E/ComponentRenderingTest.cs @@ -24,11 +24,6 @@ namespace Bunit.BlazorE2E /// public class ComponentRenderingTest : ComponentTestFixture { - public ComponentRenderingTest(ITestOutputHelper output) - { - Services.AddXunitLogger(output); - } - [Fact] public void CanRenderTextOnlyComponent() { @@ -605,7 +600,19 @@ public void CanDispatchAsyncWorkToSyncContext() cut.Find("#run-async-with-dispatch").Click(); - cut.WaitForAssertion(() => Assert.Equal("First Second Third Fourth Fifth", result.TextContent.Trim()), timeout: TimeSpan.FromSeconds(2)); + cut.WaitForAssertion(() => + { + // In some cases, the original assert wont work, since the sync context might not be idle, + // which results in this order: First Third Second Fourth Fifth + // Assert.Equal("First Second Third Fourth Fifth", result.TextContent.Trim()) + + Assert.Contains("First", result.TextContent); + Assert.Contains("Second", result.TextContent); + Assert.Contains("Third", result.TextContent); + Assert.Contains("Fourth", result.TextContent); + Assert.Contains("Fifth", result.TextContent); + + }, timeout: TimeSpan.FromSeconds(2)); } // Test removed since it does not have any value in this context. diff --git a/src/bunit.web.tests/ComponentTestFixtureTest.cs b/src/bunit.web.tests/ComponentTestFixtureTest.cs index 4a7dd44f8..ac8080d1b 100644 --- a/src/bunit.web.tests/ComponentTestFixtureTest.cs +++ b/src/bunit.web.tests/ComponentTestFixtureTest.cs @@ -2,6 +2,7 @@ using System.Diagnostics.CodeAnalysis; using Bunit.Mocking.JSInterop; +using Bunit.Rendering; using Bunit.TestAssets.SampleComponents; using Shouldly; diff --git a/src/bunit.web/Extensions/Internal/ElementFactory.cs b/src/bunit.web/Extensions/Internal/ElementFactory.cs index b71384ef0..f7c32c9ef 100644 --- a/src/bunit.web/Extensions/Internal/ElementFactory.cs +++ b/src/bunit.web/Extensions/Internal/ElementFactory.cs @@ -4,8 +4,7 @@ namespace Bunit { - internal sealed class ElementFactory : IElementFactory - where TElement : class, IElement + internal sealed class ElementFactory : IElementFactory where TElement : class, IElement { private readonly IRenderedFragment _testTarget; private readonly string _cssSelector; diff --git a/src/bunit.web/RazorTesting/Fixture.cs b/src/bunit.web/RazorTesting/Fixture.cs index 29d562147..01e055104 100644 --- a/src/bunit.web/RazorTesting/Fixture.cs +++ b/src/bunit.web/RazorTesting/Fixture.cs @@ -5,7 +5,7 @@ using Bunit.Extensions; using Bunit.RazorTesting; - +using Bunit.Rendering; using Microsoft.AspNetCore.Components; namespace Bunit diff --git a/src/bunit.web/Rendering/RenderedComponent.cs b/src/bunit.web/Rendering/RenderedComponent.cs index eb319bb28..485f8fcdd 100644 --- a/src/bunit.web/Rendering/RenderedComponent.cs +++ b/src/bunit.web/Rendering/RenderedComponent.cs @@ -1,11 +1,9 @@ using System; using System.Collections.Generic; -using Bunit.Rendering; - using Microsoft.AspNetCore.Components; -namespace Bunit +namespace Bunit.Rendering { /// internal class RenderedComponent : RenderedFragment, IRenderedComponent where TComponent : IComponent diff --git a/src/bunit.web/Rendering/RenderedFragment.cs b/src/bunit.web/Rendering/RenderedFragment.cs index 568da397c..f8fccd3c9 100644 --- a/src/bunit.web/Rendering/RenderedFragment.cs +++ b/src/bunit.web/Rendering/RenderedFragment.cs @@ -8,12 +8,11 @@ using Bunit.Diffing; using Bunit.Extensions; -using Bunit.Rendering; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; -namespace Bunit +namespace Bunit.Rendering { /// /// Represents an abstract with base functionality. @@ -154,9 +153,8 @@ private void HandleComponentRender(RenderEvent renderEvent) // that the markup has changed and they should rerun their queries. HandleChangesToMarkup(renderEvent); - - //// Then it is safe to tell anybody waiting on updates or changes to the rendered fragment - //// that they can redo their assertions or continue processing. + // Then it is safe to tell anybody waiting on updates or changes to the rendered fragment + // that they can redo their assertions or continue processing. OnAfterRender?.Invoke(); } }