Skip to content

Add string operator $trim/$ltrim/$rtrim tests#78

Open
eerxuan wants to merge 2 commits intodocumentdb:mainfrom
eerxuan:upstream-trim-tests
Open

Add string operator $trim/$ltrim/$rtrim tests#78
eerxuan wants to merge 2 commits intodocumentdb:mainfrom
eerxuan:upstream-trim-tests

Conversation

@eerxuan
Copy link
Copy Markdown
Collaborator

@eerxuan eerxuan commented Apr 9, 2026

Add compatibility tests for the $trim, $ltrim, and $rtrim operators.

Ref: #10

Tests cover:

  • Default trim (whitespace) and custom character trimming
  • Input forms and encoding
  • Type errors and invalid arguments
  • Null/missing handling
  • Size limits
  • Invariants
  • Expression arguments and document field usage

560 tests total.

@eerxuan eerxuan requested a review from a team as a code owner April 9, 2026 23:47
danielfrankcom and others added 2 commits April 9, 2026 16:55
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
- Add __init__.py for package resolution
- Add ExpressionTestCase to utils/
- Add TRIM_*, FAILED_TO_PARSE_ERROR, INVALID_DOLLAR_FIELD_PATH, BSON_TO_STRING_CONVERSION_ERROR, STRING_SIZE_LIMIT_ERROR to error_codes.py
- Add STRING_SIZE_LIMIT_BYTES to test_constants.py
- Fix pytest_params import (parametrize module)
- Use relative imports for operator common utils
- Pin CI MongoDB to 8.2.4
- Run isort/black formatting

Signed-off-by: Yunxuan Shi <yunxuan@amazon.com>
@eerxuan eerxuan force-pushed the upstream-trim-tests branch from 434b170 to e77ad9a Compare April 9, 2026 23:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants