SIGN IN SIGN UP

fix: Address edge cases for excluding large properties when using save (#1356)

* fix: The save function should not throw an error for name/value properties in arrays (#1336)

* Add some test cases for findLargeProperties_

* Add a test for arrays and skip it.

* Add a test for the complex case wrapped in an arra

* Add a test case for an array without name/value.

* Add another test for name/value pair

* Change the test case involving a name/value pair

* Add two simple test cases for excludeFromIndexes

* Add another unit test for findLargeProperties_

* Remove if block that stops recursion

* Add a test for save with a `name/value` pair

* Add some test code that ensures name/value encoded

Against the current source code, this test fails because the code throws an error, but it should pass.

* Add header

* Remove only

* Add a test that saves a long string value property

* Add a unit test checking longString for value

* Remove only

* TODO is done

* refactor: Add separate function for adding large properties to the excludeFromIndexes list (#1349)

* Add some test cases for findLargeProperties_

* Add a test for arrays and skip it.

* Add a test for the complex case wrapped in an arra

* Add a test case for an array without name/value.

* Add another test for name/value pair

* Change the test case involving a name/value pair

* Add two simple test cases for excludeFromIndexes

* Add another unit test for findLargeProperties_

* Remove if block that stops recursion

* Add a test for save with a `name/value` pair

* Add some test code that ensures name/value encoded

Against the current source code, this test fails because the code throws an error, but it should pass.

* Add header

* Remove only

* Add a test that saves a long string value property

* Add a unit test checking longString for value

* Remove only

* TODO is done

* Refactor the save function

Pull out the code that extends the excludeFromIndexes list

* Add TODO

* Write unit tests for the new excludeFromIndexes fn

* Add the header

* Document parameter for extendExcludeFromIndexes

* Remove redundant check

* refactor: Add a separate function for building the entity proto (#1350)

* Add some test cases for findLargeProperties_

* Add a test for arrays and skip it.

* Add a test for the complex case wrapped in an arra

* Add a test case for an array without name/value.

* Add another test for name/value pair

* Change the test case involving a name/value pair

* Add two simple test cases for excludeFromIndexes

* Add another unit test for findLargeProperties_

* Remove if block that stops recursion

* Add a test for save with a `name/value` pair

* Add some test code that ensures name/value encoded

Against the current source code, this test fails because the code throws an error, but it should pass.

* Add header

* Remove only

* Add a test that saves a long string value property

* Add a unit test checking longString for value

* Remove only

* TODO is done

* Refactor the save function

Pull out the code that extends the excludeFromIndexes list

* Add TODO

* Write unit tests for the new excludeFromIndexes fn

* Add the header

* Refactor the code for building the entity proto

* Rename it buildEntityProto

* The tests need another mock due to the structure

The structure change requires another mock.

* First two tests for buildEntityProto

* Reintroduce extendExcludeFromIndexes.ts tests

* Adjust the test to match expected proto

* Add another test for an entity in an array

* Add headers

* Add another header

* Eliminate space. Simplify diff

* test: Ensure that using extendExcludeFromIndexes and then buildEntityProto always excludes large properties from indexing (#1355)

* Add some test cases for findLargeProperties_

* Add a test for arrays and skip it.

* Add a test for the complex case wrapped in an arra

* Add a test case for an array without name/value.

* Add another test for name/value pair

* Change the test case involving a name/value pair

* Add two simple test cases for excludeFromIndexes

* Add another unit test for findLargeProperties_

* Remove if block that stops recursion

* Add a test for save with a `name/value` pair

* Add some test code that ensures name/value encoded

Against the current source code, this test fails because the code throws an error, but it should pass.

* Add header

* Remove only

* Add a test that saves a long string value property

* Add a unit test checking longString for value

* Remove only

* TODO is done

* Refactor the save function

Pull out the code that extends the excludeFromIndexes list

* Add TODO

* Write unit tests for the new excludeFromIndexes fn

* Add the header

* Refactor the code for building the entity proto

* Rename it buildEntityProto

* The tests need another mock due to the structure

The structure change requires another mock.

* First two tests for buildEntityProto

* Reintroduce extendExcludeFromIndexes.ts tests

* Adjust the test to match expected proto

* Add another test for an entity in an array

* Add headers

* Add another header

* Add some tests for checkEntityProto

Make sure that checkEntityProto is working correctly.

* Empty commit

* Pull out complexCaseEntities

* Add a few more tests to excludeIndexesAndBuildProto

* Add generated test cases ensuring completeness

* Add a few comments that explain behaviour of block

* Add comments explaining code blocks

* Add a bunch of other generated tests

* Make this test more meaningful for name/value chek

* Fix the generator

* Remove console logs

* Add better test name descriptions

* Add TODO

* Add a comment about the array of arrays test case

* Increase the max depth

* Add headers to the codebase

* Update parameter descriptions

* Add a bunch of parameter documentation

Correct only as well.
D
danieljbruce committed
ceaff7ef468413ff10e03e0b3ed923b4b5a37a08
Parent: 536873e
Committed by GitHub <noreply@github.com> on 11/6/2024, 8:03:47 PM