Infra fixes for bugs uncovered by testing of the JIT/Methodical merged tests (#67393)
authorTomáš Rylek <trylek@microsoft.com>
Sat, 2 Apr 2022 09:25:50 +0000 (11:25 +0200)
committerGitHub <noreply@github.com>
Sat, 2 Apr 2022 09:25:50 +0000 (11:25 +0200)
commit7e70f3ec68b5c67285227ffb22f1f8dbc05becc2
tree16e4101ddfd86ca9e0b91d8d92b9ff4e1fdbf8b2
parent0dc0bee06fe4661b25b1cb7c4a146da65ccbda22
Infra fixes for bugs uncovered by testing of the JIT/Methodical merged tests (#67393)

* Move copying of merged wrapper native components to copynative step

* Move export of test exclusion file before ILLink changing CORE_ROOT

* Fix file mode for test execution bash scripts

* Add out-of-proc test folders to Helix work item payloads

* Fix Helix publishing in the presence of out-of-process tests

* Use a marker file triggered off of a project property to determine which files to skip running the Mono AOT compiler on (some tests fail at AOT time, so we need this to work around that limitation)

* Pass runtimeVariant to the Core_Root construction for the test exclusion list creation

* Don't write the output element when there's no test output. This causes issues with Helix test uploading.

* Write xunit results the way xharness expects to read them for wasm so we correctly report failures and don't report a test harness failure.

* Fix GeneratedTestRunner to build.

* Fix copying native wrappers for merged test runners.

Pre-emptively mark another test as RequiresProcessIsolation as I stumbled upon it while fixing this

* Fix copying of native test components to merged wrapper outputs

Due to Pri0 / Pri1 test grouping we may end up building the
wrapper in a different group than its components. Make sure that
we populate all native components of merged wrapper dependencies
before we copy them over to the merged wrapper output folder.

* Exclude wasm support files.

Co-authored-by: Jeremy Koritzinsky <jekoritz@microsoft.com>
36 files changed:
eng/pipelines/common/templates/runtimes/run-test-job.yml
src/tests/Common/CLRTest.Execute.Bash.targets
src/tests/Common/CLRTest.Execute.Batch.targets
src/tests/Common/Directory.Build.targets
src/tests/Common/XHarnessRunnerLibrary/GeneratedTestRunner.cs
src/tests/Common/XHarnessRunnerLibrary/RunnerEntryPoint.cs
src/tests/Common/XUnitWrapperLibrary/TestSummary.cs
src/tests/Common/helixpublishwitharcade.proj
src/tests/Directory.Build.targets
src/tests/Exceptions/ForeignThread/ForeignThreadExceptions.csproj
src/tests/Interop/DisabledRuntimeMarshalling/DisabledRuntimeMarshalling_Disabled_NativeAssemblyEnabled.csproj
src/tests/Interop/SuppressGCTransition/SuppressGCTransitionTest.csproj
src/tests/Interop/UnmanagedCallersOnly/UnmanagedCallersOnlyTest.csproj
src/tests/JIT/Directed/callconv/Directory.Build.props [new file with mode: 0644]
src/tests/JIT/Directed/pinning/object-pin/CMakeLists.txt
src/tests/JIT/Directed/pinvoke/CMakeLists.txt
src/tests/JIT/HardwareIntrinsics/General/Vector256_1/Vector256_1_r.csproj
src/tests/JIT/Methodical/ELEMENT_TYPE_IU/u_conv_il_r.ilproj
src/tests/JIT/Methodical/eh/deadcode/deadoponerrorinfunclet_il_d.ilproj
src/tests/JIT/Methodical/eh/deadcode/deadoponerrorinfunclet_il_r.ilproj
src/tests/JIT/Methodical/flowgraph/dev10_bug679008/helper.ilproj
src/tests/JIT/Methodical/structs/systemvbringup/CMakeLists.txt
src/tests/JIT/Performance/CodeQuality/Roslyn/CscBench.csproj
src/tests/JIT/Regression/VS-ia64-JIT/V1.2-M02/b108129/CMakeLists.txt
src/tests/JIT/jit64/hfa/main/dll/CMakeLists.txt
src/tests/JIT/jit64/localloc/ehverify/eh07_large.ilproj
src/tests/JIT/jit64/mcc/interop/CMakeLists.txt
src/tests/JIT/opt/virtualstubdispatch/bigvtbl/Directory.Build.props [new file with mode: 0644]
src/tests/Loader/NativeLibs/FromNativePaths.csproj
src/tests/Loader/classloader/RefFields/Validate.csproj
src/tests/Loader/classloader/explicitlayout/NestedStructs/case03.csproj
src/tests/Loader/classloader/explicitlayout/NestedStructs/case04.csproj
src/tests/Loader/classloader/explicitlayout/NestedStructs/case05.csproj
src/tests/Loader/classloader/explicitlayout/objrefandnonobjrefoverlap/Directory.Build.props [new file with mode: 0644]
src/tests/baseservices/typeequivalence/simple/Simple.csproj
src/tests/build.proj