Skip to content

Convert JIT/Methodical/Array/range Pri0 tests and hook up mobile testing#62752

Merged
jkoritzinsky merged 36 commits intodotnet:mainfrom
jkoritzinsky:src-tests-merged-payload-mobile
Jan 6, 2022
Merged

Convert JIT/Methodical/Array/range Pri0 tests and hook up mobile testing#62752
jkoritzinsky merged 36 commits intodotnet:mainfrom
jkoritzinsky:src-tests-merged-payload-mobile

Conversation

@jkoritzinsky
Copy link
Member

Convert a set of il-based Pri0 tests to use the new testing framework and update the runtime test tree's "send to Helix" infra to correctly support merged test payloads for mobile platforms.

@ghost
Copy link

ghost commented Dec 13, 2021

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Issue Details

Convert a set of il-based Pri0 tests to use the new testing framework and update the runtime test tree's "send to Helix" infra to correctly support merged test payloads for mobile platforms.

Author: jkoritzinsky
Assignees: -
Labels:

area-Infrastructure

Milestone: -

@jkoritzinsky
Copy link
Member Author

/azp run runtime-manual

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Member

@trylek trylek left a comment

Choose a reason for hiding this comment

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

Looks awesome to me, thanks Jeremy! I'd love to hear whether there are any general patterns we might be able to bulk transform to streamline subsequent refactorings, .assembly and .module seem obvious, my ILTransform also already supports quite a few tricks regarding class name / namespace deduplication or other details. Moving forward, I would also love to give another thought to the _d / _do / _r / _ro suffixes and some way to remove them by somehow encoding the desire to build & test the different codegen options in the metadata but I'm not yet fully there.

@dotnet dotnet deleted a comment from azure-pipelines bot Dec 14, 2021
@dotnet dotnet deleted a comment from azure-pipelines bot Dec 14, 2021
@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-manual

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

Marking this as ready for review as it seems the tests I've migrated over are correctly running in the mobile legs.

@jkoritzinsky jkoritzinsky marked this pull request as ready for review December 17, 2021 05:48
@jkoritzinsky
Copy link
Member Author

/azp run runtime-manual

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

/azp run runtime-manual

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

I've validated that all of the new merged runners are running correctly on mobile as well as desktop platforms.

This PR is ready for another round of review.

cc: @trylek @naricc @fanyang-mono

Copy link
Member

@trylek trylek left a comment

Choose a reason for hiding this comment

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

Looks great to me, thank you! I admit I'm still not an expert on device testing so that side of your change certainly merits Nathan's and / or Fan's review.

@jkoritzinsky
Copy link
Member Author

/azp run runtime-manual

@dotnet dotnet deleted a comment from azure-pipelines bot Jan 6, 2022
@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkoritzinsky
Copy link
Member Author

Failing legs aren't runtime test legs, so I'm going to merge this in.

@jkoritzinsky jkoritzinsky merged commit 90ec876 into dotnet:main Jan 6, 2022
@jkoritzinsky jkoritzinsky deleted the src-tests-merged-payload-mobile branch January 6, 2022 21:51
@fanyang-mono
Copy link
Member

It seems that with the conversion, the msbuild task to create the mobile apps failed to be triggered. For example, this task https://github.com/dotnet/runtime/blob/main/src/tests/build.proj#L189

@jkoritzinsky
Copy link
Member Author

@fanyang-mono it looks like that target is correctly triggered for the "legacy" payloads still: https://dev.azure.com/dnceng/public/_build/results?buildId=1539343&view=logs&j=c1e461de-48bf-5e60-0a97-1d3931972820&t=ca8eb547-1fee-51dd-a4ab-6571ac77788b

The merged payloads don't use that target and instead use the same mechanism that the libraries tests use to build and run android test assemblies (iOS and WASM are similar).

@fanyang-mono
Copy link
Member

fanyang-mono commented Jan 7, 2022

@jkoritzinsky so what would be the command to build and run these converted tests locally?

I saw that the merged work items ran on Android x64 successfully on helix. Thanks for making it work!

I just confirm the IOSSimulator run on runtime-staging (rolling build) that the merged work items ran successfully too.

@jkoritzinsky
Copy link
Member Author

I believe you can run the Test MSBuild target on the merged wrapper project to run the test, same process as the libraries tests.

@ghost ghost locked as resolved and limited conversation to collaborators Feb 6, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants