You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Change tracking for patch updates, to improve json:api spec compliance (#704)
Change tracking for patch updates, to improve json:api spec compliance
I have added some calculated properties to the examples, in order to have tests for:
- nothing outside the patch request changed (returns empty data)
- `KebabCaseFormatterTests.KebabCaseFormatter_Update_IsUpdated` has no side effects in updating `KebabCasedModel` attributes
- `ManyToManyTests.Can_Update_Many_To_Many` has no side effects in updating `Article` tags
- `ManyToManyTests.Can_Update_Many_To_Many_With_Complete_Replacement` has no side effects in updating `Article` tags
- `ManyToManyTests.Can_Update_Many_To_Many_With_Complete_Replacement_With_Overlap` has no side effects in updating `Article` tags
- exposed attribute that was not in PATCH request changed (returns attributes)
- `UpdatingDataTests.PatchResource_ModelWithEntityFrameworkInheritance_IsPatched` updates `User.Password` property, which updates exposed `LastPasswordChange` attribute
- `UpdatingDataTests.Patch_Entity_With_HasMany_Does_Not_Include_Relationships` updates `Person.FirstName` property, which updates exposed `Initials` attribute
- `TodoItemsControllerTests.Can_Patch_TodoItemWithNullable` does not update exposed `TodoItem.AlwaysChangingValue` attribute
- exposed attribute that was in PATCH request changed (returns attributes)
- `TodoItemsControllerTests.Can_Patch_TodoItem` updates `TodoItem.AlwaysChangingValue` attribute
Also updated a few places where an empty list was allocated each time with a cached empty array instance.
0 commit comments