From: Vitek Karas <10670590+vitek-karas@users.noreply.github.com> Date: Mon, 17 Jul 2023 08:06:52 +0000 (-0700) Subject: Run NativeAOT tests when ILLink changes (#88934) X-Git-Tag: accepted/tizen/unified/riscv/20231226.055536~1004 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2fc318da7d2897a089dafc8cc714437fb55399f1;p=platform%2Fupstream%2Fdotnet%2Fruntime.git Run NativeAOT tests when ILLink changes (#88934) NativeAOT uses code from ILLinker - specifically we share lot of tests. So if these change we want to make sure it didn't break their usage in NativeAOT. The comment change in the tests is to trigger this new rule in the CI - but we can keep the comment regardless. --- diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 4d75c6f..8edd992 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -346,9 +346,11 @@ extends: buildArgs: -s clr.aot+clr.iltools+libs+clr.toolstests -c $(_BuildConfig) -test enablePublishTestResults: true testResultsFormat: 'xunit' + # We want to run AOT tests when illink changes because there's share code and tests from illink which are used by AOT condition: >- or( eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), + eq(dependencies.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), eq(variables['isRollingBuild'], true)) # Build Mono AOT offset headers once, for consumption elsewhere diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/ArrayDataFlow.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/ArrayDataFlow.cs index 8a24181..7f2ccf1 100644 --- a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/ArrayDataFlow.cs +++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/ArrayDataFlow.cs @@ -86,7 +86,7 @@ namespace Mono.Linker.Tests.Cases.DataFlow Type[] arr = new Type[] { typeof (TestType), typeof (TProperties), typeAll }; arr[0].RequiresAll (); arr[1].RequiresPublicProperties (); - arr[1].RequiresPublicFields (); // Should warn + arr[1].RequiresPublicFields (); // Should warn - member types mismatch arr[2].RequiresAll (); arr[3].RequiresPublicMethods (); // Should warn - unknown value at this index }