Jint.Tests.Test262.csproj 1.9 KB

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