diff --git a/src/mono/wasm/build/WasmApp.Native.targets b/src/mono/wasm/build/WasmApp.Native.targets
index 69facc5d7204a..bef847836fe23 100644
--- a/src/mono/wasm/build/WasmApp.Native.targets
+++ b/src/mono/wasm/build/WasmApp.Native.targets
@@ -240,7 +240,7 @@
@@ -257,7 +257,7 @@
@@ -265,6 +265,20 @@
+
+
+ <_MonoRuntimeComponentDontLink Include="libmono-component-diagnostics_tracing-static.a"/>
+
+
+ <_MonoRuntimeComponentDontLink Include="libmono-component-hot_reload-static.a"/>
+ <_MonoRuntimeComponentDontLink Include="libmono-component-debugger-static.a"/>
+
+
+ <_MonoRuntimeComponentDontLink Include="libmono-component-hot_reload-stub-static.a"/>
+ <_MonoRuntimeComponentDontLink Include="libmono-component-debugger-stub-static.a"/>
+
+
+
<_EmBuilder Condition="$([MSBuild]::IsOSPlatform('WINDOWS'))">embuilder.bat
@@ -368,7 +382,7 @@
diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets
index 9c96d759a228a..c2b85155c210c 100644
--- a/src/mono/wasm/build/WasmApp.targets
+++ b/src/mono/wasm/build/WasmApp.targets
@@ -14,7 +14,7 @@
- $(WasmBuildNative) - Whenever to build the native executable. Defaults to false.
- $(WasmNativeStrip) - Whenever to strip the native executable. Defaults to true.
- $(WasmLinkIcalls) - Whenever to link out unused icalls. Defaults to $(WasmBuildNative).
- - $(RunAOTCompilation) - Defaults to false.
+ - $( ) - Defaults to false.
- $(WasmDebugLevel)
> 0 enables debugging and sets the debug log level to debug_level
diff --git a/src/mono/wasm/data/aot-tests/Directory.Build.props b/src/mono/wasm/data/aot-tests/Directory.Build.props
index 6b0501e8f631f..4691912010ac1 100644
--- a/src/mono/wasm/data/aot-tests/Directory.Build.props
+++ b/src/mono/wasm/data/aot-tests/Directory.Build.props
@@ -1,11 +1,16 @@
+
+ $(CORE_ROOT)/build/
+
+
$(HELIX_CORRELATION_PAYLOAD)\build\
- <_WasmTargetsDir>$(WasmBuildSupportDir)\wasm\
- $(WasmBuildSupportDir)\emsdk\
+ <_WasmTargetsDir>$(WasmBuildSupportDir)\wasm\
+ $(WasmBuildSupportDir)\emsdk\
+
<_WasmTargetsDir Condition="'$(_WasmTargetsDir)' == '' and '$(RuntimeSrcDir)' != ''">$(RuntimeSrcDir)\src\mono\wasm\build\
<_WasmTargetsDir Condition="'$(_WasmTargetsDir)' != ''">$([MSBuild]::EnsureTrailingSlash($(_WasmTargetsDir)))
diff --git a/src/tests/Common/CLRTest.Execute.Bash.targets b/src/tests/Common/CLRTest.Execute.Bash.targets
index 8873259373470..1f520d682e1da 100644
--- a/src/tests/Common/CLRTest.Execute.Bash.targets
+++ b/src/tests/Common/CLRTest.Execute.Bash.targets
@@ -287,7 +287,7 @@ fi
"$CORE_ROOT/corerun" $(CoreRunArgs) ${__DotEnvArg}
-
+
+
diff --git a/src/tests/Common/Directory.Build.targets b/src/tests/Common/Directory.Build.targets
index 009a19e92c775..c3269363859aa 100644
--- a/src/tests/Common/Directory.Build.targets
+++ b/src/tests/Common/Directory.Build.targets
@@ -16,6 +16,8 @@
true
false
true
+ $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'mono', 'wasm', 'emsdk'))
+ $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'microsoft.netcore.app.runtime.$(PackageRID)', '$(Configuration)'))
@@ -120,49 +122,63 @@
+
+ Include="$(EmSdkDir)\**"
+ TargetDir="build/emsdk/"/>
-
+ Include="$(ArtifactsBinDir)\MonoTargetsTasks\Debug\$(NetCoreAppToolCurrent)\**"
+ TargetDir="build/MonoTargetsTasks/"/>
+
+ <_RuntimePackFiles Include="$(MicrosoftNetCoreAppRuntimePackDir)\**\*" TargetDir="build/microsoft.netcore.app.runtime.browser-wasm/%(RecursiveDir)/" />
+
+
+
+
-
+ TargetDir="build/WasmAppBuilder/"/>
-
+
+
+
+
+ TargetDir="build/wasm/"/>
+
+
+
+
diff --git a/src/tests/Common/dir.traversal.targets b/src/tests/Common/dir.traversal.targets
index 92e397771152c..80f0455aaf522 100644
--- a/src/tests/Common/dir.traversal.targets
+++ b/src/tests/Common/dir.traversal.targets
@@ -3,9 +3,14 @@
- $(MSBuildProjectDefaultTargets)
+ $(MSBuildProjectDefaultTargets)
+ Publish
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ true
+ true
+ net6.0
+ browser-wasm
+
+
\ No newline at end of file
diff --git a/src/tests/Common/wasm-test-runner/WasmTestRunner.proj b/src/tests/Common/wasm-test-runner/WasmTestRunner.proj
index ab92b77866e3c..b6edcf7d417f8 100644
--- a/src/tests/Common/wasm-test-runner/WasmTestRunner.proj
+++ b/src/tests/Common/wasm-test-runner/WasmTestRunner.proj
@@ -1,41 +1,51 @@
-
-
+
+
false
- $(CORE_ROOT)\runtimepack-non-existant
- $(CORE_ROOT)\runtimepack
- $(NetCoreAppCurrent)
+
+ net6.0
$(MSBuildThisFileDirectory)\obj\$(Configuration)\wasm
$(TestBinDir)/WasmApp/
+ browser-wasm
99.0
true
true
+ simple
- $(CORE_ROOT)\WasmAppBuilder\WasmAppBuilder.dll
- $(CORE_ROOT)\MonoAOTCompiler\MonoAOTCompiler.dll
- $(CORE_ROOT)\MonoTargetsTasks\MonoTargetsTasks.dll
- BuildApp;$(WasmBuildAppDependsOn)
+ $(HELIX_WORKITEM_ROOT)\wasm_build\
+ $(MSBuildThisFileDirectory)..\wasm_build\
+
+ $(TestRootDir)\obj\
+ true
+ browser-wasm
+ $(TestBinDir)\publish\
+ true
-
+
+ PrepareForWasmBuildApp;$(WasmBuildAppDependsOn)
+
+
+
- $(TestAssemblyFileName)
+ $(OriginalPublishDir)WasmTestRunner.dll
$(AppDir)
$(CORE_ROOT)\runtime-test\runtime-test.js
- true
+ false
true
true
+ $(TestBinDir)/publish;$(TestBinDir)/publish/refs;$(MicrosoftNetCoreAppRuntimePackDir)/native/
+
+
-
-
-
-
-
-
+
+
+
+
@@ -43,5 +53,5 @@
-
+
diff --git a/src/tests/Directory.Build.targets b/src/tests/Directory.Build.targets
index 26c8ae6aa3e63..79a4339486245 100644
--- a/src/tests/Directory.Build.targets
+++ b/src/tests/Directory.Build.targets
@@ -264,6 +264,11 @@
true
+
+ false
+ false
+
+
true
@@ -275,6 +280,8 @@
+
+
@@ -357,6 +364,10 @@
Include="@(RuntimeFiles)"
TargetDir="runtimepack/native/"/>
+
+
@@ -384,7 +395,7 @@
TargetDir="MonoTargetsTasks/"/>
+ TargetDir="wasm/"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ true
+ false
+ true
+
+ Exe
+ browser-wasm
+ true
+ true
+ net6.0
+
+
+
+
+
diff --git a/src/tests/build.proj b/src/tests/build.proj
index f8f67ff905e33..faa43b67afceb 100644
--- a/src/tests/build.proj
+++ b/src/tests/build.proj
@@ -446,6 +446,7 @@
$(GroupBuildCmd) "/p:__SkipRestorePackages=1"
$(GroupBuildCmd) /nodeReuse:false
$(GroupBuildCmd) /maxcpucount
+ $(GroupBuildCmd) "/bl:$(__TestGroupToBuild)_build.binlog"
diff --git a/src/tests/simple/simple.cs b/src/tests/simple/simple.cs
new file mode 100644
index 0000000000000..40c760b1f6216
--- /dev/null
+++ b/src/tests/simple/simple.cs
@@ -0,0 +1,16 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+
+namespace TestRunningMono
+{
+ class Program
+ {
+ public static int Main(string[] args)
+ {
+ const int Pass = 100, Fail = 1;
+ return Pass;
+ }
+ }
+}
+
diff --git a/src/tests/simple/simple.csproj b/src/tests/simple/simple.csproj
new file mode 100644
index 0000000000000..315b02049cdc4
--- /dev/null
+++ b/src/tests/simple/simple.csproj
@@ -0,0 +1,10 @@
+
+
+ Exe
+ false
+
+
+
+
+
+