wpf/packaging
Jeremy Kuhne 25dd3ab099
Enable xunit testing in VS with the dispatcher (#10023)
* Remove NetCoreReference

This removes the `NetCoreReference` infrastructure and replaces it with `DefaultReferenceExclusion` to remove the one problematic implicit reference to WindowsBase.

Manually picking references was blocking using System.Private.Windows.Core from the WinForms repo. Not having this also greatly simplifies the projects.

This also tweaks the solution to add folders docs and eng items.

Fixes #9168

* Put back test projects in solution

* Enable xunit testing in VS with the dispatcher

This change enables writing and debugging unit tests in the Test Explorer in Visual Studio. I added a new test project for WindowsBase that has a unit test that launches the SplashScreen as an example.

In order to make this happen I had to reference the xunit.stafact package which introduced a number of challenges to overcome. The package has a reference to the desktop sdk and needs to be used in a project that targets `net10.0-windows`, not `net10.0`. To make everything work seamlessly I had to:

- Strip the platform reference
- Apply actual versions from the sdk
- Get rid of AnyCPU and explictly use x86 (everything has a native dependency)
- Enable transitive copying of references for the unit test projects
- Target the 10.0 SDK (would get version confusion otherwise)
- Add an override setting for WinForms which still targets the 9.0 SDK
- Remove other targets that were trying to fixup WindowsBase references from the .NET SDK
-

* Make PresentationBuildTasks always AnyCPU

* Update versions and tweak / simplify some version related stuff

* Attempt to turn on the binlog for the CI

* Update binlog names for both build and test run

* Try 17.12 preview

* Move back off of scout image

* Update versions

* Push back to 9.0

* Uncheck D3DCompiler in ConfigurationManager

* Have ref projects only reference ref projects and move ref and cycle breaker projects to AnyCPU.

* Normalize ARM64 to arm64. Having multiple casings was causing projects to be built multiple times to the same folder.

* Revert RuntimeFrameworkReference.targets changes

* Final cleanup pass

* Tweak SdkReferences.targets

* Respond to feedback
2024-11-12 01:22:54 +05:30
..
Microsoft.DotNet.Arcade.Wpf.Sdk
Microsoft.DotNet.Wpf.GitHub
Microsoft.Dotnet.Wpf.ProjectTemplates
Microsoft.NET.Sdk.WindowsDesktop
Directory.Build.props
Directory.Build.targets