Skip to content

[wasm] Update Wasm.Build.Tests to build with net6.0 - #54936

Merged
radical merged 12 commits into
dotnet:mainfrom
radical:wasm-tests
Jul 7, 2021
Merged

[wasm] Update Wasm.Build.Tests to build with net6.0#54936
radical merged 12 commits into
dotnet:mainfrom
radical:wasm-tests

Conversation

@radical

Copy link
Copy Markdown
Member
  • This also refactors to tests to be usable for testing with workloads
    in an upcoming PR.
  • And skips workload-only tests

- This also refactors to tests to be usable for testing with workloads
in an upcoming PR.
- And skips workload-only tests
@ghost

Copy link
Copy Markdown

Tagging subscribers to this area: @directhex
See info in area-owners.md if you want to be subscribed.

Issue Details
  • This also refactors to tests to be usable for testing with workloads
    in an upcoming PR.
  • And skips workload-only tests
Author:radical
Assignees:-
Labels:

area-Infrastructure-mono

Milestone:-

- Console (AOT/interp)
- Browser (AOT/interp)
- TopLevel (nterp)
All of these are covered in Wasm.Build.Tests . This saves on unncessary
build time too ;)
@radicalradical added the arch-wasm WebAssembly architecture label Jun 30, 2021
@ghost

Copy link
Copy Markdown

Tagging subscribers to 'arch-wasm': @lewing
See info in area-owners.md if you want to be subscribed.

Issue Details
  • This also refactors to tests to be usable for testing with workloads
    in an upcoming PR.
  • And skips workload-only tests
Author:radical
Assignees:-
Labels:

arch-wasm, area-Infrastructure-mono

Milestone:-

Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandResult.cs
.. so they can be added with the PR that adds support for workloads, and
can be reviewed there.
@radical

Copy link
Copy Markdown
MemberAuthor

Libraries Test Run release coreclr Linux x64 Debug failed - Unrelated - #54778

CoreCLR Pri0 Runtime Tests Run windows arm64 checked - unrelated, likely - https://github.com/dotnet/runtime/issues/53329

@radical

Copy link
Copy Markdown
MemberAuthor

Build MacCatalyst x64 Debug AllSubsets_Mono: timed out after almost 3 hours, though checks doesn't seem to be getting the updated status. Unrelated to this PR.

@lewinglewing left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Looking good, some thoughts

Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandBase.cs Outdated
Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandBase.cs Outdated
Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandBase.cs Outdated
Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandBase.cs Outdated
Comment threadsrc/tests/BuildWasmApps/Wasm.Build.Tests/CommandBase.cs Outdated
@radical
radical requested a review from lewingJuly 5, 2021 23:00
@lewing

Copy link
Copy Markdown
Member

are the runtime pack resolution bits needed in this pr?

@radical

Copy link
Copy Markdown
MemberAuthor

are the runtime pack resolution bits needed in this pr?

where? the changes in WasmApp.Native.targets are needed to make net6.0 test project builds work correctly. Those properties are set elsewhere already.

@radical
radical merged commit 0ef56df into dotnet:mainJul 7, 2021
@radical
radical deleted the wasm-tests branch July 7, 2021 23:32
radical added a commit to radical/runtime that referenced this pull request Jul 12, 2021
Currently we run `Wasm.Build.Tests` on helix, by setting various paths to
reference files from `artifacts`. This PR adds another mode, we *try* to test
against workload packs.
For this:
1. we need the nugets for the various workload packs, and the manifests
2. manifest id, path to those nugets
3. and a SDK version to use for testing
Steps:
1. The specified SDK is installed in `artifacts/bin/dotnet-workload`
2. the specified manifest is installed from the built nugets, and any
`depends-on` manifests in the json.
3. `dotnet workload install` is used to install the packs, with the built
nugets path being used as one the nuget sources
Once this setup is done, the tests are run in an environment such that
they use `dotnet` from above, and try to resolve packs from there.
Known issues:
1. `Pack` target is explicitly invoked for the aotcross projects
We still want to test without packs, the case of using `EMSDK_PATH` directly,
for example, in the library tests. So, we now run `Wasm.Build.Tests` for
Workloads, *and* the regular `EMSDK_PATH`.
Two workload specific tests were added in a recent PR (dotnet#54936)
- simple test for building blazorwasm template project with AOT
- a test to validate that the files in `UnixFilePermissions.xml` for the packs actually exist on disk
.. and these are enabled here.
Notes:
- This also fixes using the correct runtime pack based on the version in the manifest json.
- The sdk version is specified with
`<SdkVersionForWorkloadTesting>6.0.100-preview.7.21326.4</SdkVersionForWorkloadTesting>`
in `eng/Versions.props`
TODO:
- Run the blazorwasm test with playwright
- Add sdk-with-no-packs case also
@ghostghost locked as resolved and limited conversation to collaborators Aug 7, 2021
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

arch-wasmWebAssembly architecturearea-Build-mono

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@radical@lewing@pavelsavara