-
Notifications
You must be signed in to change notification settings - Fork 585
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
RJS-2680: Implement support for Mixed
data type with nested collections
#6513
Merged
elle-j
merged 82 commits into
lj/collections-in-mixed
from
lj/nested-collections-in-mixed
Apr 2, 2024
Merged
Changes from 73 commits
Commits
Show all changes
82 commits
Select commit
Hold shift + click to select a range
89524f0
Move geospatial helper functions to related file.
elle-j ec46260
Implement setting nested lists in Mixed.
elle-j 25fa99e
Implement setting nested dictionaries in Mixed.
elle-j cfb1e4a
Implement getting nested lists in Mixed.
elle-j 5358296
Implement getting nested dictionaries in Mixed.
elle-j a9feab9
Test creating and accessing nested lists and dicts.
elle-j 7087d64
Make previous flat collections tests use the new 'expect' function.
elle-j ce6ca84
Test that max nesting level throws.
elle-j 8f718b4
Delegate throwing when using a Set to 'mixedToBinding()'.
elle-j df384fb
Implement setting nested collections on a dictionary via setter.
elle-j 4edd774
Test nested collections on dictionary via setter.
elle-j ebd2451
Minor update to names of tests.
elle-j 92a60af
Combine nested and flat collections tests into same suite.
elle-j e05e917
Implement setting nested collections on a list via setter.
elle-j ee6c4b7
Test nested collections on list via setter.
elle-j 1477968
Refactor common test logic to helper functions.
elle-j e894737
Optimize property setter for hot-path and use friendlier err msg.
elle-j aafac61
Refactor test helper function to build collections of any depth.
elle-j fc10c57
Implement inserting nested collections on a list via 'push()'.
elle-j 1918cac
Test nested collections on a list via 'push()'.
elle-j 17cea6a
Test updating dictionary entry to nested collections via setter.
elle-j c0788f4
Test updating nested list/dictionary item via setter.
elle-j d0c82dc
Test removing items from collections via 'remove()'.
elle-j 73819bf
Test object notifications when modifying nested collections.
elle-j 91416ef
Group previous notification tests into one test.
elle-j 3bb8e1c
Group collection notifications tests into 'List' and 'Dictionary'.
elle-j 66a3926
Test collection notifications when modifying nested collections.
elle-j 39dd930
Remove collections from test context.
elle-j 30190a5
Test filtering by query path on nested collections.
elle-j f490f4a
Align object schema property names in tests.
elle-j eeded46
Test filtering with int at_type.
elle-j 8337dc9
Implement setting nested collections on a dictionary via 'set()' over…
elle-j ede5d6a
Test JS Array method 'values()'.
elle-j 9800bce
Test JS Array method 'entries()'.
elle-j 7b5e22f
Implement getting nested collections on dictionary 'values()' and 'en…
elle-j c52e112
Test 'values()' and 'entries()' on dictionary with nested collections.
elle-j 538818a
Remove unnecessary 'fromBinding()' calls.
elle-j 5b7fa1e
Refactor collection helpers from 'PropertyHelpers' into the respectiv…
elle-j 7680f53
Introduce list/dict sentinels to circumvent extra Core access.
elle-j 8fd542e
Rename getter to default.
elle-j d82f51b
Remove redundant 'snapshotGet'.
elle-j 728af69
Add abstract 'get' and 'set' to 'OrderedCollection'.
elle-j bdcd31d
Rename the collection helpers to 'accessor'.
elle-j 3e44f9c
Move tests into subsuites.
elle-j faaf2a7
Fix 'Results.update()'.
elle-j 974b3c8
Support nested collections in 'pop()', 'shift()', 'unshift()', 'splic…
elle-j c2a6bdf
Test list 'pop()'.
elle-j 255b81d
Test list 'shift()'.
elle-j 5c71222
Test list 'unshift()'.
elle-j 16a4f99
Test list 'splice()'.
elle-j 3c62bc3
Return 'not found' for collections searched for in 'indexOf()'.
elle-j 3f15037
Test ordered collection 'indexOf()'.
elle-j f105a23
Support list/dict sentinels in JSI.
elle-j 4bed4f9
Test references per access.
elle-j a656c7e
Enable skipped tests after Core bug fix.
elle-j 80d5122
Point to updated Core.
elle-j c50c6d6
Fix accessor for non-Mixed top-level collection with Mixed items.
elle-j 6bf2eb8
Enable and fix previously skipped test.
elle-j e533b6d
Update 'mixed{}'.
elle-j e43a600
Update 'mixed<>'.
elle-j 433cf4f
Remove now-invalidated test.
elle-j 7f31ebc
Remove unused injectable from Node bindgen template.
elle-j 5c2d7bb
Replace if-statements with switch.
elle-j b5f5f04
Add explicit Results and Set accessors for Mixed.
elle-j 2d0ef39
Adapt to change in Core treating missing keys as null in queries.
elle-j ce65744
Rename insertion function.
elle-j d54b938
Include tests of Dictionary property type with Mixed.
elle-j 70b7574
Test reassigning to new collection and self-assignment.
elle-j e895bef
Test mixed
elle-j e4d7f1b
Update 'mixed[]'.
elle-j f454095
Test results accessor.
elle-j ee9fcfe
Update error messages.
elle-j b706172
Make accessor helpers an object field rather than spread.
elle-j 2a6c9ba
Suggestions for "nested collections in mixed" (#6566)
kraenhansen e6dedf2
Remove leftover 'Symbol_for' in node-wrapper template.
elle-j 75ee5b4
Test not invalidating new collection.
elle-j b82028f
Remove test for max nesting level.
elle-j c030cf4
Remove reliance on issue-fix in certain tests.
elle-j 5c1efc5
Add key path test for object listener on mixed field.
elle-j b3d730a
Use '.values()' and '.entries()' in iteration.
elle-j 46e5488
Update comments.
elle-j 07136e7
Add CHANGELOG entry.
elle-j File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
Oops, something went wrong.
Oops, something went wrong.
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.
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.
I'm not sure I understand the test description - it seems to suggest that we'll be storing dictionaries as the values, but we store an object.
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.
This was just a preexisting test that was skipped unnecessarily. Haven't changed those tests (except this one as the test itself was incorrect). I think the description refers to storing dictionary (
item.dict
) values using string keys (key1
).