|Adr-Plus Fields|Values Migrated | |–|–| |ADR|Conditional ConsolePlus reference for tests| |Version|01| |Revision|01| |Scope|| |Domain|| |Created|Proposed (2026-07-22)| |Changed|Accepted (2026-07-22)| |Superseded||
PromptPlus/src/PromptPlus.csproj:69 references ConsolePlus via a
PackageReference (published NuGet), not a ProjectReference. This would
break the planned InternalsVisibleTo for PromptPlus.Tests, because the
resolved assembly would be the published package, not the local build of
ConsolePlus/src.
Use a Configuration-conditional reference in
PromptPlus/src/PromptPlus.csproj:
PackageReference to the published
ConsolePlus.net.ProjectReference to
../../ConsolePlus/src/ConsolePlus.csproj.This follows a pattern the .csproj already uses (the
ItemGroup Condition="'$(Configuration)' == 'Release' ..." at line 62 for
DefaultDocumentation), so it introduces no new mechanism.
<ItemGroup Condition="'$(Configuration)' != 'Debug'">
<PackageReference Include="ConsolePlus.net" Version="0.5.2-Beta" />
</ItemGroup>
<ItemGroup Condition="'$(Configuration)' == 'Debug'">
<ProjectReference Include="..\..\ConsolePlus\src\ConsolePlus.csproj" />
</ItemGroup>
dotnet test runs in Debug by default, so PromptPlus.Tests
automatically pulls the local ConsolePlus build, keeping InternalsVisibleTo
working — no explicit -c needed. Release packaging is unchanged.PackageReference version must be kept current for
Release; a mismatch between the local Debug build and the published package
could mask integration issues — mitigated by CI building/testing against the
local ProjectReference.