Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run wasm tests on Helix #37752

Merged
merged 120 commits into from
Jun 25, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
be7b233
Add XHarness Helix SDK support
premun Jun 5, 2020
066bafa
Try to build mono libraries
premun Jun 5, 2020
ebbf08b
Try to build mono libraries
premun Jun 5, 2020
83d7cab
Address some of Santiago's feedback from Jo's PR
premun Jun 5, 2020
1379eef
Merge runtime.yml from master
premun Jun 5, 2020
98377f1
Build iOSx64 libraries
premun Jun 5, 2020
495c602
Try to build mono product
premun Jun 5, 2020
c571262
Try to build mono product
premun Jun 5, 2020
636bc66
Merge master
premun Jun 5, 2020
9d9da07
Do not build AllSubsets
premun Jun 5, 2020
21d5ebc
Remove dead code
premun Jun 5, 2020
df64e06
Revert: Do not built AllSubsets
premun Jun 5, 2020
553147d
Disable test archivation
premun Jun 5, 2020
9e7d3f2
Improvements for local test running
directhex Jun 5, 2020
138706f
Merge branch 'prvysoky/use-helix-sdk' of github.com:premun/runtime in…
directhex Jun 5, 2020
2a2243d
Return dead code
premun Jun 5, 2020
030511c
Reintroduce whitespace errors
directhex Jun 5, 2020
d1a4226
Bump Helix SDK and keep trailing slashes
premun Jun 8, 2020
d3366ae
Revert "Bump Helix SDK and keep trailing slashes"
premun Jun 8, 2020
16168da
Try building 2 app bundles
premun Jun 8, 2020
64da851
Try a cleaner `.app` find in msbuild, from @akoeplinger
directhex Jun 8, 2020
506afd2
Revert "Try a cleaner `.app` find in msbuild, from @akoeplinger"
directhex Jun 8, 2020
6778369
Do not archiveTests on iOS, it causes tests to be included twice
directhex Jun 8, 2020
f3252fd
Revert "Revert "Try a cleaner `.app` find in msbuild, from @akoepling…
directhex Jun 8, 2020
2743b13
Turn on all the tests on iOS
directhex Jun 8, 2020
8a2c248
Merge remote-tracking branch 'origin/master' into prvysoky/use-helix-sdk
directhex Jun 8, 2020
6f6731e
Remove Android changes, to keep scope of PR smaller
directhex Jun 8, 2020
e6a94dd
Update global.json
directhex Jun 8, 2020
8f07f4c
Update src/libraries/sendtohelix.proj
directhex Jun 8, 2020
3d73fc6
Remove useless archiveTests=false
directhex Jun 8, 2020
0e0403f
Update src/libraries/sendtohelix.proj
directhex Jun 8, 2020
01cc2b1
Merge remote-tracking branch 'origin/master' into prvysoky/use-helix-sdk
premun Jun 9, 2020
aee9b85
Fix runtime-packs dir
premun Jun 9, 2020
3f2f23c
Revert changes in yml to use new mono build workflow
safern Jun 9, 2020
bcc7dcc
Merge remote-tracking branch 'dotnet/master' into prvysoky/use-helix-sdk
safern Jun 9, 2020
ffb1b02
Add iOS x64 testing to new collapsed build model
safern Jun 9, 2020
1e9eb5d
Just run System.Buffers.Tests to make testing faster
safern Jun 9, 2020
0b6b5a5
Set helixQueuesTemplate in the right place
safern Jun 9, 2020
7c23cd7
Set XHarness version in Version.props
premun Jun 10, 2020
1671125
Roll back to XHarness that supports Xcode 11.4
premun Jun 10, 2020
1f9c3cf
Cleanup
safern Jun 10, 2020
413e135
Merge remote-tracking branch 'origin/master' into prvysoky/use-helix-sdk
premun Jun 11, 2020
82ff98a
Add XHarness CLI to Version.Details.xml
premun Jun 11, 2020
5f97549
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 11, 2020
a5e7bb3
Only test System.Buffers for now
directhex Jun 11, 2020
6b62ca3
Try enabling testing for Wasm
directhex Jun 11, 2020
9cfa895
Move Wasm run to template which calls Helix
directhex Jun 11, 2020
6fb4ff2
Set a helix queue for wasm
directhex Jun 11, 2020
03b5001
Ensure we archive tests on WebAssembly
directhex Jun 11, 2020
cd18d9a
Be careful about using TargetsMobile, which is true on Wasm(?)
directhex Jun 11, 2020
1b74d80
Override artifact directory on wasm
directhex Jun 11, 2020
12603f1
Let's install dotnet and xharness for wasm
directhex Jun 11, 2020
9f9f758
fixup
directhex Jun 11, 2020
335b0ce
HELIX_CORRELATION_PAYLOAD is readonly in docker
directhex Jun 11, 2020
9e47f39
Handle xharness directory
directhex Jun 11, 2020
248316a
Fiddle Helix launcher to run test suite
directhex Jun 11, 2020
bee0215
Cleanup RunTests script generation for wasm
safern Jun 11, 2020
a80a5d1
Give runtime.js executable permisions
safern Jun 11, 2020
6ead7f8
Fix ArchiveTest target to run after app bundle is created
safern Jun 12, 2020
a7b7b8f
Pre-install XHarness CLI using the Helix SDK
premun Jun 15, 2020
a3a8ded
Pre-install XHarness CLI using the Helix SDK
premun Jun 15, 2020
8fda27d
Revert "Pre-install XHarness CLI using the Helix SDK"
premun Jun 15, 2020
b3d4c70
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 15, 2020
17767b3
Turn on all tests on wasm
directhex Jun 15, 2020
8ad3678
Skip test suite which hangs
directhex Jun 15, 2020
d279758
Disable test suites which don't emit result XML
directhex Jun 15, 2020
36a876f
Skip all tests which don't pass yet
directhex Jun 16, 2020
18ead20
Increase timeout on global-build-job
directhex Jun 16, 2020
bd09ec0
Normalise on Windows path seperators
directhex Jun 16, 2020
44499ad
Merge branch 'wasm-helix-sdk' of github.com:directhex/runtime into wa…
directhex Jun 16, 2020
12284ec
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 16, 2020
9f124aa
Remove another test suite which doesn't pass any more
directhex Jun 16, 2020
a7a668c
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 16, 2020
27f8227
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 17, 2020
582d247
Try using HelixPreCommand Include, not a big HelixPreCommands string
directhex Jun 17, 2020
0706453
ItemGroup not PropertyGroup
directhex Jun 17, 2020
ec073af
Typo
directhex Jun 17, 2020
dec8dac
More typos
directhex Jun 17, 2020
ce3fd5d
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 17, 2020
03acee5
Remove iOS changes, and prepare for un-drafting
directhex Jun 17, 2020
1c74889
More fixups
directhex Jun 17, 2020
ce51fd4
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 17, 2020
5bbf116
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 18, 2020
90f9046
Move directory zip definition to the right place
directhex Jun 18, 2020
112d702
Put dependency back how it was (gotta figure out why it's bad though)
directhex Jun 18, 2020
4e52d5c
Fix circular dependency issue
akoeplinger Jun 18, 2020
ffe2fc3
Sequence ArchiveTests correctly for browser
safern Jun 18, 2020
2e2d618
Deal with nits from Alex
directhex Jun 18, 2020
680582a
Refresh list of failing tests
directhex Jun 18, 2020
7a165e4
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 18, 2020
8ce3964
Define msbuildScript in global-build jobs (i.e. wasm)
directhex Jun 18, 2020
ef84e2f
Add cleanup in helix.yml missed on merge with master
safern Jun 18, 2020
270c30d
Don't compress teshost for Browser
safern Jun 18, 2020
b021230
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 19, 2020
0dd57f0
non-building tests now build
directhex Jun 19, 2020
42958de
Use Helix SDK to install xharness
directhex Jun 19, 2020
75d2cb5
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 19, 2020
afaffb8
Revert "Use Helix SDK to install xharness"
directhex Jun 19, 2020
2c8e3bb
Enable System.Console
directhex Jun 19, 2020
ab99533
Skip another suite, which maybe only started being included via depen…
directhex Jun 19, 2020
a1216c5
Move timeoutInMinutes to the right place
directhex Jun 19, 2020
94d4c08
Merge branch 'master' into wasm-helix-sdk
akoeplinger Jun 22, 2020
a2e630b
Reenable test projects that pass now
akoeplinger Jun 22, 2020
5b7e592
Update src/libraries/sendtohelixhelp.proj
directhex Jun 22, 2020
25d1eac
Fixup for Premek's change
directhex Jun 22, 2020
2221b51
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 23, 2020
9eb9753
ActiveIssue on Crypto test in Format.Cbor
directhex Jun 23, 2020
ee4c2f8
Another ActiveIssue on Cbor Crypto test
akoeplinger Jun 23, 2020
6745a0f
Merge remote-tracking branch 'upstream/master' into wasm-helix-sdk
akoeplinger Jun 23, 2020
069a428
Merge remote-tracking branch 'origin/master' into wasm-helix-sdk
directhex Jun 24, 2020
7737d7b
Merge remote-tracking branch 'upstream/master' into wasm-helix-sdk
akoeplinger Jun 24, 2020
80c1930
Enable three more testsuites that pass now
akoeplinger Jun 24, 2020
42644a6
Reenable System.Reflection.Emit.ILGeneration
akoeplinger Jun 24, 2020
bf2f9a1
Revert "Revert "Use Helix SDK to install xharness""
directhex Jun 24, 2020
3cdf5e7
Run wasm tests in bare Ubuntu 20.04 queue, not in Docker
directhex Jun 24, 2020
dd894da
Merge remote-tracking branch 'upstream/master' into wasm-helix-sdk
akoeplinger Jun 25, 2020
64323dd
Reenable two more test suites
akoeplinger Jun 25, 2020
d062ba2
Merge remote-tracking branch 'upstream/master' into wasm-helix-sdk
akoeplinger Jun 25, 2020
2686b84
Reenable three more test suites
akoeplinger Jun 25, 2020
4172524
Merge branch 'wasm-helix-sdk' of github.com:directhex/runtime into wa…
directhex Jun 25, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -178,5 +178,9 @@
<Uri>https://github.com/dotnet/xharness</Uri>
<Sha>19aa97963aa11b4818f3e3487b913244efa4ff0f</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.XHarness.CLI" Version="1.0.0-prerelease.20322.1">
<Uri>https://github.com/dotnet/xharness</Uri>
<Sha>19aa97963aa11b4818f3e3487b913244efa4ff0f</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
1 change: 1 addition & 0 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@
<!-- Testing -->
<MicrosoftNETTestSdkVersion>16.7.0-release-20200612-02</MicrosoftNETTestSdkVersion>
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>1.0.0-prerelease.20322.1</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
<MicrosoftDotNetXHarnessCLIVersion>1.0.0-prerelease.20322.1</MicrosoftDotNetXHarnessCLIVersion>
<XUnitVersion>2.4.1</XUnitVersion>
<XUnitRunnerVisualStudioVersion>2.4.2</XUnitRunnerVisualStudioVersion>
<CoverletCollectorVersion>1.3.0</CoverletCollectorVersion>
Expand Down
4 changes: 4 additions & 0 deletions eng/pipelines/common/global-build-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ parameters:
pool: ''
condition: true
isOfficialBuild: false
runtimeFlavor: 'coreclr'
helixQueues: ''
extraStepsTemplate: ''
extraStepsParameters: {}

Expand Down Expand Up @@ -81,6 +83,8 @@ jobs:
osSubgroup: ${{ parameters.osSubgroup }}
archType: ${{ parameters.archType }}
buildConfig: ${{ parameters.buildConfig }}
runtimeFlavor: ${{ parameters.runtimeFlavor }}
helixQueues: ${{ parameters.helixQueues }}
${{ insert }}: ${{ parameters.extraStepsParameters }}

- task: PublishBuildArtifacts@1
Expand Down
11 changes: 4 additions & 7 deletions eng/pipelines/libraries/build-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -174,14 +174,11 @@ jobs:
- ${{ if eq(parameters.runTests, true) }}:
- template: /eng/pipelines/libraries/helix.yml
parameters:
targetOS: ${{ parameters.osGroup }}
archGroup: ${{ parameters.archType }}
configuration: ${{ parameters.buildConfig }}
helixQueues: ${{ join('+', parameters.helixQueues) }}
msbuildScript: $(_msbuildCommand)
framework: ${{ parameters.framework }}
osGroup: ${{ parameters.osGroup }}
archType: ${{ parameters.archType }}
buildConfig: ${{ parameters.buildConfig }}
helixQueues: ${{ parameters.helixQueues }}
testScope: ${{ parameters.testScope }}
creator: dotnet-bot
helixToken: ''
testRunNamePrefixSuffix: $(_testRunNamePrefixSuffix)
extraHelixArguments: $(_extraHelixArguments)
4 changes: 4 additions & 0 deletions eng/pipelines/libraries/helix-queues-setup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -144,4 +144,8 @@ jobs:
- ${{ if eq(parameters.platform, 'Windows_NT_arm64') }}:
- Windows.10.Arm64.Open

# WebAssembly
- ${{ if eq(parameters.platform, 'Browser_wasm') }}:
- Ubuntu.2004.Amd64.Open

${{ insert }}: ${{ parameters.jobParameters }}
18 changes: 8 additions & 10 deletions eng/pipelines/libraries/helix.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
parameters:
runtimeFlavor: ''
archGroup: ''
configuration: ''
archType: ''
buildConfig: ''
creator: ''
framework: ''
helixQueues: ''
msbuildScript: ''
targetOS: ''
osGroup: ''
testRunNamePrefixSuffix: ''
testScope: 'innerloop' # innerloop | outerloop | all
interpreter: ''
Expand All @@ -15,12 +13,12 @@ parameters:
scenarios: ''

steps:
- script: ${{ parameters.msbuildScript }}
- script: $(_msbuildCommand)
$(Build.SourcesDirectory)/src/libraries/sendtohelix.proj
/p:RuntimeFlavor=${{ parameters.runtimeFlavor }}
/p:TargetArchitecture=${{ parameters.archGroup }}
/p:Configuration=${{ parameters.configuration }}
/p:TargetOS=${{ parameters.targetOS }}
/p:TargetArchitecture=${{ parameters.archType }}
/p:Configuration=${{ parameters.buildConfig }}
/p:TargetOS=${{ parameters.osGroup }}
/p:MonoEnableInterpreter=${{ parameters.interpreter }}
/p:TestScope=${{ parameters.testScope }}
/p:TestRunNamePrefixSuffix=${{ parameters.testRunNamePrefixSuffix }}
Expand All @@ -32,5 +30,5 @@ steps:
condition: and(succeeded(), ${{ parameters.condition }})
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
HelixTargetQueues: ${{ parameters.helixQueues }} # Pass queues to MSBuild as env var to avoid need of escaping them
HelixTargetQueues: ${{ join('+', parameters.helixQueues) }} # Pass queues to MSBuild as env var to avoid need of escaping them
_Scenarios: ${{ join(',', parameters.scenarios) }} # Pass scenarios to MSBuild as env var to avoid need of escaping comma separated list
11 changes: 4 additions & 7 deletions eng/pipelines/libraries/run-test-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -92,16 +92,13 @@ jobs:
- template: /eng/pipelines/libraries/helix.yml
parameters:
runtimeFlavor: ${{ parameters.runtimeFlavor }}
targetOS: ${{ parameters.osGroup }}
archGroup: ${{ parameters.archType }}
configuration: ${{ parameters.buildConfig }}
helixQueues: ${{ join('+', parameters.helixQueues) }}
msbuildScript: $(_msbuildCommand)
framework: ${{ parameters.framework }}
osGroup: ${{ parameters.osGroup }}
archType: ${{ parameters.archType }}
buildConfig: ${{ parameters.buildConfig }}
helixQueues: ${{ parameters.helixQueues }}
testScope: ${{ parameters.testScope }}
interpreter: ${{ parameters.interpreter }}
creator: dotnet-bot
helixToken: ''
testRunNamePrefixSuffix: $(_testRunNamePrefixSuffix)
extraHelixArguments: $(_extraHelixArguments)

Expand Down
28 changes: 27 additions & 1 deletion eng/pipelines/runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,6 @@ jobs:
- tvOS_x64
- iOS_arm64
- iOS_x86
- Browser_wasm
- Linux_arm
jobParameters:
testGroup: innerloop
Expand Down Expand Up @@ -283,6 +282,33 @@ jobs:
eq(dependencies.checkout.outputs['SetPathVars_installer.containsChange'], true),
eq(variables['isFullMatrix'], true))

#
# Build the whole product using Mono and run tests
#
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/common/global-build-job.yml
helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
buildConfig: Release
runtimeFlavor: mono
platforms:
- Browser_wasm
jobParameters:
testGroup: innerloop
nameSuffix: AllSubsets_Mono
buildArgs: -s mono+libs+installer+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true
timeoutInMinutes: 120
extraStepsTemplate: /eng/pipelines/libraries/helix.yml
extraStepsParameters:
creator: dotnet-bot
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should add support to condition the extra steps... I can imagine the tests being executed when there is an installer only change. I think it would only make sense to run wasm tests if libraries or mono tests change, but build if libraries, mono or installer changes.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would only make sense to run wasm tests if libraries or mono tests change, but build if libraries, mono or installer changes.

Not sure if I understood you correctly here, but we do need to run the wasm tests if the libraries or mono implementation changes, not just the tests.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I mean is run the tests if mono or libraries change only, don’t run the tests if only installer is changed. We can do that in a follow up PR though

condition: >-
or(
eq(dependencies.checkout.outputs['SetPathVars_libraries.containsChange'], true),
eq(dependencies.checkout.outputs['SetPathVars_mono.containsChange'], true),
eq(dependencies.checkout.outputs['SetPathVars_installer.containsChange'], true),
eq(variables['isFullMatrix'], true))

#
# Build Mono and Installer on LLVMJIT mode
#
Expand Down
11 changes: 6 additions & 5 deletions eng/testing/WasmRunnerTemplate.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
#!/usr/bin/env bash

EXECUTION_DIR=$(dirname $0)
JAVASCRIPT_ENGINE=$1

cd $EXECUTION_DIR

XHARNESS_OUT="$EXECUTION_DIR/xharness-output"

dotnet xharness wasm test --engine=$JAVASCRIPT_ENGINE \
--js-file=runtime.js -v \
--output-directory=$XHARNESS_OUT \
-- --enable-gc --run WasmTestRunner.dll ${@:2}
if [ ! -x "$(command -v xharness)" ]; then
HARNESS_RUNNER="dotnet"
fi

# RunCommands defined in tests.mobile.targets
[[RunCommands]]

_exitCode=$?

Expand Down
11 changes: 10 additions & 1 deletion eng/testing/tests.mobile.targets
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,15 @@
<JSEngine Condition="'$(TargetOS)' == 'Browser' and '$(JSEngine)' == ''">V8</JSEngine>
</PropertyGroup>

<ItemGroup>
<RunScriptCommands Include="TARGET_ARCH=$(TargetArchitecture)" />
</ItemGroup>
directhex marked this conversation as resolved.
Show resolved Hide resolved

<PropertyGroup Condition="'$(TargetOS)' == 'Browser'">
<!-- We need to set this in order to get extensibility on xunit category traits and other arguments we pass down to xunit via MSBuild properties -->
<RunScriptCommand>$HARNESS_RUNNER xharness wasm test --engine=$(JSEngine) --js-file=runtime.js -v --output-directory=$XHARNESS_OUT -- --enable-gc --run WasmTestRunner.dll $(AssemblyName).dll</RunScriptCommand>
</PropertyGroup>

<!-- Generate a self-contained app bundle for Android with tests. -->
<UsingTask Condition="'$(TargetOS)' == 'Android'"
TaskName="AndroidAppBuilderTask"
Expand Down Expand Up @@ -156,5 +165,5 @@
<Target Name="PublishTestAsSelfContained"
Condition="'$(IsCrossTargetingBuild)' != 'true'"
AfterTargets="Build"
DependsOnTargets="UpdateRuntimePack;Publish;BundleTestAppleApp;BundleTestAndroidApp;BundleTestWasmApp" />
DependsOnTargets="UpdateRuntimePack;Publish;BundleTestAppleApp;BundleTestAndroidApp;BundleTestWasmApp;ArchiveTests" />
</Project>
21 changes: 18 additions & 3 deletions eng/testing/tests.targets
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,30 @@
<RunScriptCommands Include="set DEVPATH=%RUNTIME_PATH%" />
</ItemGroup>

<PropertyGroup>
<ArchiveTestsAfterTargets>PrepareForRun</ArchiveTestsAfterTargets>

<!-- For browser we need to hook up the target with DependsOnTargets in PublishTestAsSelfContained
because we do a Publish which runs after Build, if we run after PrepareForRun we would generated
an empty zip because we haven't published the selfcontained app. -->
<ArchiveTestsAfterTargets Condition="'$(TargetOS)' == 'Browser'" />
</PropertyGroup>

<!-- Archive test binaries. -->
<Target Name="ArchiveTests"
Condition="'$(ArchiveTests)' == 'true' and '$(IgnoreForCI)' != 'true'"
AfterTargets="PrepareForRun"
Condition="'$(ArchiveTests)' == 'true' and '$(IgnoreForCI)' != 'true' and ('$(TargetsMobile)' != 'true' or '$(TargetOS)' == 'Browser')"
AfterTargets="$(ArchiveTestsAfterTargets)"
DependsOnTargets="GenerateRunScript">
<Error Condition="'$(TestArchiveTestsDir)' == ''" Text="TestArchiveTestsDir property to archive the test folder must be set." />

<PropertyGroup>
<BundleDir>$([MSBuild]::NormalizeDirectory('$(OutDir)', 'AppBundle'))</BundleDir>
<_ZipSourceDirectory>$(OutDir)</_ZipSourceDirectory>
<_ZipSourceDirectory Condition="'$(TargetOS)' == 'Browser'">$(BundleDir)</_ZipSourceDirectory>
</PropertyGroup>

<MakeDir Directories="$(TestArchiveTestsDir)" />
<ZipDirectory SourceDirectory="$(OutDir)"
<ZipDirectory SourceDirectory="$(_ZipSourceDirectory)"
DestinationFile="$([MSBuild]::NormalizePath('$(TestArchiveTestsDir)', '$(TestProjectName).zip'))"
Overwrite="true" />
</Target>
Expand Down
10 changes: 6 additions & 4 deletions eng/testing/xunit/xunit.console.targets
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<TestResultsName>testResults.xml</TestResultsName>
</PropertyGroup>

<PropertyGroup>
<PropertyGroup Condition="'$(TargetsMobile)' != 'true'">
<_depsFileArgument Condition="'$(GenerateDependencyFile)' == 'true'">--depsfile $(AssemblyName).deps.json</_depsFileArgument>
<RunScriptCommand Condition="'$(TargetFrameworkIdentifier)' == '.NETCoreApp'">"$(RunScriptHost)" exec --runtimeconfig $(AssemblyName).runtimeconfig.json $(_depsFileArgument) xunit.console.dll</RunScriptCommand>
<RunScriptCommand Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">xunit.console.exe</RunScriptCommand>
Expand All @@ -13,13 +13,15 @@
<RunScriptCommand>$(RunScriptCommand) -xml $(TestResultsName)</RunScriptCommand>
<RunScriptCommand>$(RunScriptCommand) -nologo</RunScriptCommand>
<RunScriptCommand Condition="'$(ArchiveTests)' == 'true'">$(RunScriptCommand) -nocolor</RunScriptCommand>
<RunScriptCommand Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' and '$(TestDisableAppDomain)' == 'true'">$(RunScriptCommand) -noappdomain</RunScriptCommand>
<RunScriptCommand Condition="'$(TestDisableParallelization)' == 'true'">$(RunScriptCommand) -maxthreads 1</RunScriptCommand>
<RunScriptCommand Condition="'$(XUnitShowProgress)' == 'true'">$(RunScriptCommand) -verbose</RunScriptCommand>
</PropertyGroup>

<PropertyGroup>
<!-- Add local and global options to the argument stack. -->
<RunScriptCommand Condition="'$(TestDisableParallelization)' == 'true'">$(RunScriptCommand) -maxthreads 1</RunScriptCommand>
<RunScriptCommand Condition="'$(XUnitMethodName)' != ''">$(RunScriptCommand) -method $(XUnitMethodName)</RunScriptCommand>
<RunScriptCommand Condition="'$(XUnitClassName)' != ''">$(RunScriptCommand) -class $(XUnitClassName)</RunScriptCommand>
<RunScriptCommand Condition="'$(XUnitShowProgress)' == 'true'">$(RunScriptCommand) -verbose</RunScriptCommand>
<RunScriptCommand Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' and '$(TestDisableAppDomain)' == 'true'">$(RunScriptCommand) -noappdomain</RunScriptCommand>

<!-- Add to run argument string -->
<RunScriptCommand>$(RunScriptCommand)$(_withCategories.Replace(';', ' -trait category='))</RunScriptCommand>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ public static void ReadEncodedValue_InvalidConformance_ConformanceCheckDisabled_
}

[Theory]
[ActiveIssue("https://github.com/dotnet/runtime/issues/37669", TestPlatforms.Browser)]
[InlineData("a501020326200121582065eda5a12577c2bae829437fe338701a10aaa375e1bb5b5de108de439c08551d2258201e52ed75701163f7f9e40ddf9f341b3dc9ba860af7e0ca7ca7e9eecd0084d19c",
"65eda5a12577c2bae829437fe338701a10aaa375e1bb5b5de108de439c08551d",
"1e52ed75701163f7f9e40ddf9f341b3dc9ba860af7e0ca7ca7e9eecd0084d19c",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -342,6 +342,7 @@ public static void InvalidConformanceMode_ShouldThrowArgumentOutOfRangeException
public static IEnumerable<object[]> EncodedValueBadInputs => CborReaderTests.InvalidCborValues.Select(x => new[] { x });

[Theory]
[ActiveIssue("https://github.com/dotnet/runtime/issues/37669", TestPlatforms.Browser)]
[InlineData("a501020326200121582065eda5a12577c2bae829437fe338701a10aaa375e1bb5b5de108de439c08551d2258201e52ed75701163f7f9e40ddf9f341b3dc9ba860af7e0ca7ca7e9eecd0084d19c",
"65eda5a12577c2bae829437fe338701a10aaa375e1bb5b5de108de439c08551d",
"1e52ed75701163f7f9e40ddf9f341b3dc9ba860af7e0ca7ca7e9eecd0084d19c",
Expand Down
3 changes: 1 addition & 2 deletions src/libraries/sendtohelix.proj
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@
<Target Name="CompressRuntimeDirectory"
Inputs="@(_RuntimeInputs);@(TestArchiveRuntimeDependency)"
Outputs="$(TestArchiveRuntimeFile)"
Condition="'$(BuildAllConfigurations)' != 'true'">
Condition="'$(BuildAllConfigurations)' != 'true' and '$(TargetsMobile)' != 'true'">

<!-- Compress the test files, testhost, and per-scenario scripts into a single ZIP file for sending to the Helix machines. -->

Expand All @@ -153,7 +153,6 @@
<Message Importance="High" Text="Creating directory $(TestArchiveRuntimeRoot)" />
<MakeDir Directories="$(TestArchiveRuntimeRoot)" />

<Message Importance="High" Text="ZIP directory $(TestHostRootPath) to $(TestArchiveRuntimeFile)" />
<ZipDirectory SourceDirectory="$(TestHostRootPath)"
DestinationFile="$(TestArchiveRuntimeFile)"
Overwrite="true" />
Expand Down
7 changes: 6 additions & 1 deletion src/libraries/sendtohelixhelp.proj
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,11 @@
<HelixType Condition="'$(BuildAllConfigurations)' == 'true'">test/functional/packaging/</HelixType>
</PropertyGroup>

<PropertyGroup Condition="'$(TargetOS)' == 'Browser'">
<IncludeDotNetCli>true</IncludeDotNetCli>
<IncludeXHarnessCli>true</IncludeXHarnessCli>
</PropertyGroup>

<ItemGroup Condition="'$(HelixCommand)' == '' and '$(BuildAllConfigurations)' == 'true'">
<HelixPreCommand Include="set DOTNET_CLI_TELEMETRY_OPTOUT=1" />
<HelixPreCommand Include="set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1" />
Expand Down Expand Up @@ -147,7 +152,7 @@
<Message Importance="High" Text="Using Timeout: $(_timeoutSpan)" />

<ItemGroup>
<HelixCorrelationPayload Include="$(HelixCorrelationPayload)" />
<HelixCorrelationPayload Condition="'$(TargetOS)' != 'Browser'" Include="$(HelixCorrelationPayload)" />

<_WorkItem Include="$(WorkItemArchiveWildCard)" Exclude="$(HelixCorrelationPayload)" />

Expand Down
Loading