Jint.Tests.Test262.csproj 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <Project Sdk="Microsoft.NET.Sdk">
  2. <PropertyGroup>
  3. <TargetFramework>net9.0</TargetFramework>
  4. <AssemblyOriginatorKeyFile>..\Jint\Jint.snk</AssemblyOriginatorKeyFile>
  5. <SignAssembly>true</SignAssembly>
  6. <IsPackable>false</IsPackable>
  7. <NoWarn>$(NoWarn);CS8002</NoWarn>
  8. <GeneratedTestSuiteDir>Generated</GeneratedTestSuiteDir>
  9. <EnableNUnitRunner>true</EnableNUnitRunner>
  10. <OutputType>Exe</OutputType>
  11. </PropertyGroup>
  12. <ItemGroup>
  13. <ProjectReference Include="..\Jint\Jint.csproj" />
  14. </ItemGroup>
  15. <ItemGroup>
  16. <PackageReference Include="Acornima.Extras" />
  17. <PackageReference Include="Microsoft.NET.Test.Sdk" />
  18. <PackageReference Include="Newtonsoft.Json" />
  19. <PackageReference Include="NUnit" />
  20. <PackageReference Include="NUnit3TestAdapter" />
  21. <PackageReference Include="Test262Harness" />
  22. </ItemGroup>
  23. <ItemGroup>
  24. <Using Include="NUnit.Framework" />
  25. </ItemGroup>
  26. <ItemGroup>
  27. <Content Include=".config\dotnet-tools.json" />
  28. </ItemGroup>
  29. <!-- Based on the idea presented at https://mhut.ch/journal/2015/06/30/build-time-code-generation-in-msbuild -->
  30. <Target Name="GenerateTestSuite" DependsOnTargets="_GenerateTestSuite" BeforeTargets="BeforeBuild" Condition="!Exists($([System.IO.Path]::Combine($(MSBuildThisFileDirectory), $(GeneratedTestSuiteDir))))">
  31. <ItemGroup>
  32. <Compile Include="$(GeneratedTestSuiteDir)\**\*.cs" />
  33. </ItemGroup>
  34. </Target>
  35. <Target Name="_GenerateTestSuite">
  36. <Exec Command="dotnet tool restore" />
  37. <Exec Command="dotnet test262 generate" />
  38. </Target>
  39. <Target Name="DeleteTestSuite" DependsOnTargets="_DeleteTestSuite" AfterTargets="AfterClean" Condition="Exists($([System.IO.Path]::Combine($(MSBuildThisFileDirectory), $(GeneratedTestSuiteDir))))">
  40. <RemoveDir Directories="$(GeneratedTestSuiteDir)" />
  41. </Target>
  42. <Target Name="_DeleteTestSuite">
  43. <ItemGroup>
  44. <Compile Remove="$(GeneratedTestSuiteDir)\**\*.cs" />
  45. </ItemGroup>
  46. </Target>
  47. </Project>