Yavsc.Blogs.Tests will need a fixture too. Lifting the cross-cutting plumbing (Kestrel + self-signed cert + address discovery + lazy init) into a new Yavsc.Tests.Shared project lets the next fixture inherit from it without copying 200+ lines of setup boilerplate, and keeps the Org.Tests fixture focused on its IdentityServer + SMTP seed. * New project src/Yavsc.Tests.Shared with WebHostFixture (abstract) and TestAuthPolicyProvider (test auth bypass via X-Test-Role). * WebServerFixture in Org.Tests now inherits from WebHostFixture; BuildApp + ConfigurePipelineAsync hold only Org-specific work. * Two shared package versions promoted to the root Directory.Packages.props. * Tests still 30/30 green.
21 lines
779 B
XML
21 lines
779 B
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<PropertyGroup>
|
|
<TargetFramework>net10.0</TargetFramework>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<IsPackable>false</IsPackable>
|
|
<RootNamespace>Yavsc.Tests.Shared</RootNamespace>
|
|
<!--
|
|
Shared library of test fixtures (WebHostFixture, auth bypass,
|
|
etc.) consumed by both Yavsc.Org.Tests and Yavsc.Blogs.Tests.
|
|
Not a test project itself: no xUnit, no test runner, no
|
|
TestSdk. The consumer projects own the test execution and
|
|
inherit from the shared base classes.
|
|
-->
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.AspNetCore.Hosting" />
|
|
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" />
|
|
</ItemGroup>
|
|
</Project>
|