Skip to content

Commit 478d56c

Browse files
radicalCopilot
andcommitted
Exclude tests/**/TestFixtures/**/*.csproj from Arcade build enumeration
The Stabilization Check job invokes Arcade's pack pipeline, which enumerates ProjectToBuild from `tests/**/*.csproj` (eng/Build.props line 69). That enumeration was picking up the static-analyzer fixture projects under tests/Infrastructure.Tests/TestSelector/TestFixtures/. Those .csproj files are deliberate test fixtures consumed as text by TestSelector's analyzer tests (IgnorePathFilterTests, NuGetDependentTestDetectorTests, etc.) — they're never meant to be built. Their adjacent Directory.Build.targets neuters Build/Rebuild/ Restore/Pack/Test as no-ops, which is enough for `build.sh -build` but not for `build.sh -pack`: the NuGet Pack target still attempts to read the assembly output (e.g. ConditionalPackableProject.dll) and fails with NU5026 because Build was a no-op. Filter the fixtures out of the test-project enumeration so Arcade never tries to build or pack them. The TestSelector tool's own testProjectPatterns config already excludes `tests/**/TestFixtures/**` from its discovery, so this brings the build infrastructure in line with the same convention. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent b62d87a commit 478d56c

1 file changed

Lines changed: 2 additions & 1 deletion

File tree

eng/Build.props

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@
6666
included in the build at all. This is useful for cases like when we are
6767
just building the packages, and don't need to build the test projects. -->
6868
<ItemGroup Condition="'$(SkipManagedBuild)' != 'true' and '$(SkipTestProjects)' != 'true' and '$(BuildBundleDepsOnly)' != 'true'">
69-
<ProjectToBuild Include="$(RepoRoot)tests\**\*.csproj" />
69+
<ProjectToBuild Include="$(RepoRoot)tests\**\*.csproj"
70+
Exclude="$(RepoRoot)tests\**\TestFixtures\**\*.csproj" />
7071
</ItemGroup>
7172

7273
<ItemGroup Condition="'$(SkipNativeBuild)' == 'true'">

0 commit comments

Comments
 (0)