[ClientRuntime] Fixing spurious test failures in JsonSerializationTests#4060
Merged
shahabhijeet merged 1 commit intoAzure:psSdkJson6from Feb 10, 2018
Merged
Conversation
Two of the JsonSerializationTests modify JsonConvert.DefaultSettings. They do this in order to validate that SafeJsonConvert does not rely on these settings. Before this change, these tests would install a custom JSON converter and contract resolver that always throw. Unfortunately, other aspects of the test infrastructure rely on DefaultSettings, so this would sometimes result in unexpected exceptions being thrown. The solution is to weaken the effect of changing DefaultSettings. Now, the SafeJsonConvert tests install a custom converter for their own Model class that produces incorrect results. Because it's targeted at that class specifically, it should have no side effects on other code that relies on DefaultSettings.
shahabhijeet
approved these changes
Feb 10, 2018
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Two of the
JsonSerializationTestsmodifyJsonConvert.DefaultSettings. They do this in order to validate thatSafeJsonConvertdoes not rely on these settings.Before this change, these tests would install a custom JSON converter and contract resolver that always throw. Unfortunately, other aspects of the test infrastructure rely on
DefaultSettings, so this would sometimes result in unexpected exceptions being thrown.The solution is to weaken the effect of changing
DefaultSettings. Now, theSafeJsonConverttests install a custom converter for their ownModelclass that produces incorrect results. Because it's targeted at that class specifically, it should have no side effects on other code that relies onDefaultSettings.FYI @shahabhijeet @dsgouda
Description
This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines
Testing Guidelines
SDK Generation Guidelines
*.csprojandAssemblyInfo.csfiles have been updated with the new version of the SDK.