Skip to content

Commit

Permalink
Brought back test reporter, this time phoenix-actions, a revamped dor…
Browse files Browse the repository at this point in the history
…ny/test-reporter with test summary
  • Loading branch information
oskardudycz committed Dec 3, 2022
1 parent 82ce320 commit b21fa5a
Show file tree
Hide file tree
Showing 49 changed files with 350 additions and 232 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/build.dotnet.testreport.yml
@@ -0,0 +1,23 @@
name: Test Report

on:
workflow_run:
workflows: ['Build and Test']
types:
- completed

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Publish test results
uses: phoenix-actions/test-reporting@v10
if: success() || failure()
with:
name: Tests Results
artifact: test-results
reporter: dotnet-trx
path: '**/test-results.trx'
output-to: 'step-summary'
fail-on-error: 'false'
9 changes: 8 additions & 1 deletion .github/workflows/build.dotnet.yml
Expand Up @@ -29,7 +29,14 @@ jobs:
run: dotnet build --configuration Release --no-restore

- name: Run tests
run: dotnet test --configuration Release --no-build --filter Category!=SkipCI
run: dotnet test --configuration Release --no-build --filter Category!=SkipCI --logger "trx;LogFileName=test-results.trx

- name: Upload test results
uses: actions/upload-artifact@v2
if: success() || failure()
with:
name: test-results
path: '**/test-results.trx'

- name: Stop containers
if: always()
Expand Down
10 changes: 6 additions & 4 deletions Core.EventStoreDB.Tests/Core.EventStoreDB.Tests.csproj
Expand Up @@ -11,17 +11,19 @@
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\Core.EventStoreDB\Core.EventStoreDB.csproj" />
<ProjectReference Include="..\Core.EventStoreDB\Core.EventStoreDB.csproj"/>
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>

<Import Project="..\Tests.Build.props"/>

</Project>
2 changes: 2 additions & 0 deletions Core.Kafka.Tests/Core.Kafka.Tests.csproj
Expand Up @@ -24,4 +24,6 @@
</PackageReference>
</ItemGroup>

<Import Project="..\Tests.Build.props"/>

</Project>
13 changes: 8 additions & 5 deletions Core.Tests/Core.Tests.csproj
Expand Up @@ -11,17 +11,20 @@
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\Core\Core.csproj" />
<ProjectReference Include="..\Core\Core.csproj"/>
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Marten" Version="6.0.0-alpha.3" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Marten" Version="6.0.0-alpha.3"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>

<Import Project="..\Tests.Build.props"/>

</Project>
Expand Up @@ -11,13 +11,16 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Marten" Version="6.0.0-alpha.3" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Marten" Version="6.0.0-alpha.3"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>

<Import Project="..\Tests.Build.props"/>

</Project>
2 changes: 2 additions & 0 deletions EventSourcing.NetCore.sln
Expand Up @@ -19,6 +19,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
Directory.Build.props = Directory.Build.props
Dockerfile = Dockerfile
Core.Build.props = Core.Build.props
Tests.Build.props = Tests.Build.props
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Core.Tests", "Core.Tests\Core.Tests.csproj", "{E1B97A7B-97C3-4C14-9BE6-ACE0AF45CE61}"
Expand Down Expand Up @@ -202,6 +203,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CI", "CI", "{F078A982-331A-
ProjectSection(SolutionItems) = preProject
.github\workflows\build.dotnet.yml = .github\workflows\build.dotnet.yml
.github\workflows\publish.docker.yml = .github\workflows\publish.docker.yml
.github\workflows\build.dotnet.testreport.yml = .github\workflows\build.dotnet.testreport.yml
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Marten.Integration.Tests", "Marten.Integration.Tests\Marten.Integration.Tests.csproj", "{D9D67A6C-FE95-4864-B8F1-BD2689134590}"
Expand Down
16 changes: 9 additions & 7 deletions Marten.Integration.Tests/Marten.Integration.Tests.csproj
Expand Up @@ -11,22 +11,24 @@
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\Core\Core.csproj" />
<ProjectReference Include="..\Core\Core.csproj"/>
</ItemGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Marten" Version="6.0.0-alpha.3" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Marten" Version="6.0.0-alpha.3"/>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>

<ItemGroup>
<Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
<Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}"/>
</ItemGroup>

<Import Project="..\Tests.Build.props"/>
</Project>
2 changes: 2 additions & 0 deletions Sample/ECommerce/Carts/Carts.Api.Tests/Carts.Api.Tests.csproj
Expand Up @@ -24,4 +24,6 @@
<ProjectReference Include="..\Carts.Api\Carts.Api.csproj" />
</ItemGroup>

<Import Project="..\..\..\..\Tests.Build.props"/>

</Project>
2 changes: 1 addition & 1 deletion Sample/ECommerce/Carts/Carts.Tests/Builders/CartBuilder.cs
Expand Up @@ -5,7 +5,7 @@ namespace Carts.Tests.Builders;

internal class CartBuilder
{
private Func<ShoppingCart> build = () => new ShoppingCart();
private Func<ShoppingCart> build = () => new ShoppingCart();

public CartBuilder Opened()
{
Expand Down
16 changes: 9 additions & 7 deletions Sample/ECommerce/Carts/Carts.Tests/Carts.Tests.csproj
Expand Up @@ -5,21 +5,23 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="NSubstitute" Version="4.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="NSubstitute" Version="4.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0" />
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0"/>
</ItemGroup>


<ItemGroup>
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj" />
<ProjectReference Include="..\Carts\Carts.csproj" />
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj"/>
<ProjectReference Include="..\Carts\Carts.csproj"/>
</ItemGroup>

<Import Project="..\..\..\..\Tests.Build.props"/>

</Project>
Expand Up @@ -31,4 +31,4 @@ public void ForValidParams_ShouldCreateCartWithPendingStatus()
clientId
);
}
}
}
Expand Up @@ -12,7 +12,6 @@ internal static class CartExtensions
Guid id,
Guid clientId)
{

shoppingCart.Id.Should().Be(id);
shoppingCart.ClientId.Should().Be(clientId);
shoppingCart.Status.Should().Be(ShoppingCartStatus.Pending);
Expand Down
Expand Up @@ -2,8 +2,8 @@

namespace Carts.Tests.Stubs.Ids;

public class FakeIdGenerator : IIdGenerator
public class FakeIdGenerator: IIdGenerator
{
public Guid? LastGeneratedId { get; private set; }
public Guid New() => (LastGeneratedId = Guid.NewGuid()).Value;
}
}
Expand Up @@ -6,11 +6,12 @@ namespace Carts.Tests.Stubs.Products;
internal class FakeProductPriceCalculator: IProductPriceCalculator
{
public const decimal FakePrice = 13;

public IReadOnlyList<PricedProductItem> Calculate(params ProductItem[] productItems)
{
return productItems
.Select(pi =>
PricedProductItem.Create(pi, FakePrice))
.ToList();
}
}
}
Expand Up @@ -3,13 +3,13 @@

namespace Carts.Tests.Stubs.Repositories;

public class FakeRepository<T> : IMartenRepository<T> where T : class, IAggregate
public class FakeRepository<T>: IMartenRepository<T> where T : class, IAggregate
{
public Dictionary<Guid, T> Aggregates { get; private set; }

public FakeRepository(params T[] aggregates)
{
Aggregates = aggregates.ToDictionary(ks=> ks.Id, vs => vs);
Aggregates = aggregates.ToDictionary(ks => ks.Id, vs => vs);
}

public Task<T?> Find(Guid id, CancellationToken cancellationToken)
Expand All @@ -23,13 +23,15 @@ public async Task<long> Add(T aggregate, CancellationToken cancellationToken = d
return await Task.FromResult(aggregate.Version);
}

public async Task<long> Update(T aggregate, long? expectedVersion = null, CancellationToken cancellationToken = default)
public async Task<long> Update(T aggregate, long? expectedVersion = null,
CancellationToken cancellationToken = default)
{
Aggregates[aggregate.Id] = aggregate;
return await Task.FromResult(aggregate.Version);
}

public async Task<long> Delete(T aggregate, long? expectedVersion = null, CancellationToken cancellationToken = default)
public async Task<long> Delete(T aggregate, long? expectedVersion = null,
CancellationToken cancellationToken = default)
{
Aggregates.Remove(aggregate.Id);
return await Task.FromResult(aggregate.Version);
Expand Down
26 changes: 14 additions & 12 deletions Sample/ECommerce/Orders/Orders.Api.Tests/Orders.Api.Tests.csproj
Expand Up @@ -5,23 +5,25 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="NSubstitute" Version="4.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0"/>
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="7.0.0"/>
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="NSubstitute" Version="4.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj" />
<ProjectReference Include="..\Orders.Api\Orders.Api.csproj" />
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj"/>
<ProjectReference Include="..\Orders.Api\Orders.Api.csproj"/>
</ItemGroup>

<Import Project="..\..\..\..\Tests.Build.props"/>

</Project>
2 changes: 2 additions & 0 deletions Sample/ECommerce/Orders/Orders.Tests/Orders.Tests.csproj
Expand Up @@ -22,4 +22,6 @@
<ProjectReference Include="..\Orders\Orders.csproj" />
</ItemGroup>

<Import Project="..\..\..\..\Tests.Build.props"/>

</Project>
Expand Up @@ -5,23 +5,25 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.8.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
<PackageReference Include="NSubstitute" Version="4.4.0" />
<PackageReference Include="xunit" Version="2.4.2" />
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0" />
<PackageReference Include="FluentAssertions" Version="6.8.0"/>
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0"/>
<PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="7.0.0"/>
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0"/>
<PackageReference Include="NSubstitute" Version="4.4.0"/>
<PackageReference Include="xunit" Version="2.4.2"/>
<PackageReference Include="Microsoft.AspNetCore.TestHost" Version="7.0.0"/>
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj" />
<ProjectReference Include="..\Payments.Api\Payments.Api.csproj" />
<ProjectReference Include="..\..\..\..\Core.Testing\Core.Testing.csproj"/>
<ProjectReference Include="..\Payments.Api\Payments.Api.csproj"/>
</ItemGroup>

<Import Project="..\..\..\..\Tests.Build.props"/>

</Project>

0 comments on commit b21fa5a

Please sign in to comment.