-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
[dotnet] [bidi] Added missing Script.RemoteReference LocaclValue type #16717
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
[dotnet] [bidi] Added missing Script.RemoteReference LocaclValue type #16717
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||||
RenderMichael
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only thing holding this change back is some tests. Unlike other changes, we have good test coverage here, so no major overhaul is needed.
|
@RenderMichael should be fine now, please review again. |
User description
🔗 Related Issues
Fixes #15621
💥 What does this PR do?
Adds missing type.
🔧 Implementation Notes
Moving polymorphic serialization discriminator for
LocalValueabstract type into derived types, which is explicitlynullforRemoteReferencetypes.🔄 Types of changes
PR Type
Bug fix, Enhancement
Description
Removed polymorphic serialization from
LocalValueabstract typeAdded
RemoteReferenceLocalValueabstract type with implementationsAdded explicit
Typeproperties to allLocalValuederived classesRefactored serialization to use individual type discriminators
Diagram Walkthrough
File Walkthrough
LocalValue.cs
Refactor LocalValue serialization and add RemoteReference typesdotnet/src/webdriver/BiDi/Script/LocalValue.cs
JsonPolymorphicattribute and allJsonDerivedTypedeclarationsfrom
LocalValuebase classRemoteReferenceLocalValueabstract record with two sealedimplementations:
SharedReferenceLocalValueandRemoteObjectReferenceLocalValueTypeproperty with[JsonInclude]attribute to all 16derived
LocalValueclasses for individual type discriminationRemoteReferenceLocalValuebranch alongside existing
PrimitiveProtocolLocalValueand other types