[wasm] WBT fixes, and rationalization to allow improved testing#89360
Merged
radical merged 11 commits intodotnet:mainfrom Jul 25, 2023
Merged
[wasm] WBT fixes, and rationalization to allow improved testing#89360radical merged 11 commits intodotnet:mainfrom
radical merged 11 commits intodotnet:mainfrom
Conversation
- FileStat - BuildPaths - BlazorBuildOptions - GlobalizationMode
- Move parsing bootjson, checking icu assets, symbols to ProviderBase, so it can
be used by all the project types. These come from WasmAppBuilder which
is shared by all the projects.
- Instead of multiple separate ways to build the project, use one
`BuildTestBase.BuildWithoutAssert` method that uses `DotNetCommand` to
build. And all the project types can use this.
- This allows having any build customizations or fixes to be in once
place, and the outputs to be consistent.
- Instead of having `UseWebcil` in various option types, use it directly
as needed, because this setting is *not* changed per test, rather it
is fixed per run.
- Rationalize figuring out bin framework directories
Known limitations:
- Wasm template tests use a TestMainJs provider to assert the bundle
because the templates are not yet based on wasm sdk.
- Blazor has a bug due to which all the icu assets get deployed
irrespective of settings, so asserting that is disabled.
- Also, blazor does not yet support symbols file.
|
Tagging subscribers to 'arch-wasm': @lewing Issue Details
|
Member
Author
|
I would suggest reading it commit-wise. |
Member
Author
|
TODO: In a follow up PR, I will merge methods doing the dotnet native file stuff, and maybe with the icu thing too. |
3 tasks
maraf
reviewed
Jul 25, 2023
| #nullable enable | ||
|
|
||
| namespace Wasm.Build.Tests; | ||
| public enum GlobalizationMode |
Member
There was a problem hiding this comment.
Shouldn't these two enums have same values
runtime/src/mono/wasm/runtime/dotnet.d.ts
Line 304 in 3dd73e6
Member
Author
There was a problem hiding this comment.
Indeed. They are the "same", but naming being the same should be helpful too. I'll change in a follow up if there aren't more changes to be done here.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merge behaviors for the various project types:
Move parsing bootjson, checking icu assets, symbols to ProviderBase, so it can
be used by all the project types. These come from WasmAppBuilder which
is shared by all the projects.
Instead of multiple separate ways to build the project, use one
BuildTestBase.BuildWithoutAssertmethod that usesDotNetCommandtobuild. And all the project types can use this.
place, and the outputs to be consistent.
Instead of having
UseWebcilin various option types, use it directlyas needed, because this setting is not changed per test, rather it
is fixed per run.
Rationalize figuring out bin framework directories
Known limitations:
because the templates are not yet based on wasm sdk.
irrespective of settings, so asserting that is disabled.