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

Skip System.Text.Json tests on iOS/tvOS that don't work #58276

Merged
merged 3 commits into from
Aug 30, 2021

Conversation

akoeplinger
Copy link
Member

@akoeplinger akoeplinger commented Aug 27, 2021

A number of tests using dynamic can't work on iOS devices due to "dynamic invoke" (where Mono does an indirect runtime invoke using a single universal invoke wrapper) not being supported, added PlatformDetection checks for System.Reflection.Emit since that is a close enough approximation for those.

A few other tests run into an "Attempting to JIT compile method" issue that is tracked by #58204

A number of tests using `dynamic` can't work on iOS devices due to System.Reflection.Emit not being supported, added PlatformDetection checks for those.

A few other tests run into an "Attempting to JIT compile method" issue that is tracked by dotnet#58204
@ghost
Copy link

ghost commented Aug 27, 2021

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

Issue Details

A number of tests using dynamic can't work on iOS devices due to System.Reflection.Emit not being supported, added PlatformDetection checks for those.

A few other tests run into an "Attempting to JIT compile method" issue that is tracked by #58204

Author: akoeplinger
Assignees: -
Labels:

area-System.Text.Json

Milestone: -

@akoeplinger akoeplinger added the os-ios Apple iOS label Aug 27, 2021
@danmoseley
Copy link
Member

does this mean there are missing [UnsupportedOSPlatform..] attributes?

@akoeplinger
Copy link
Member Author

I don't know an easy way to attach UnsupportedOSPlatform in this case since there are a couple special cases e.g. it works in the iOS Simulator since we can JIT there, or if we enable the Mono interpreter on iOS like we did for Browser.

@lambdageek
Copy link
Member

lambdageek commented Aug 27, 2021

A number of tests using dynamic can't work on iOS devices due to System.Reflection.Emit not being supported, added PlatformDetection checks for those.

nit: I was wrong. They're not using dynamic (from C#). They're using "dynamic invoke" (where Mono does an indirect runtime invoke using a single universal invoke wrapper)

nit2: wrong again. They really do use dynamic. (And also they happen to fall into the dynamic invoke code in the runtime.)

Copy link
Member

@steveharter steveharter left a comment

Choose a reason for hiding this comment

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

LGTM although please change the ConvertJSONArrayToIListOfJsonNode test to not use dynamic and remove the [ConditionalFact] from the test.

@akoeplinger akoeplinger merged commit c584001 into dotnet:main Aug 30, 2021
@akoeplinger akoeplinger deleted the sys-text-json-ios branch August 30, 2021 14:51
@ghost ghost locked as resolved and limited conversation to collaborators Sep 29, 2021
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.

5 participants