[TestGru] Add unit test for src/utils/point_in_time.ts #2
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.
Trigger Info
Summary
This PR introduces unit tests for the
parsePITBranch
andparsePointInTime
utility functions, ensuring proper validation and behavior for parsing point-in-time (PIT) branches and resolving PIT references. Key highlights include:parsePITBranch
Tests:Validates parsing of branches without PIT (e.g.,
main
).Tests parsing of branches with LSN (e.g.,
main@0/0
).Validates branches with timestamps, including checks for invalid or future timestamps.
Ensures appropriate errors are thrown for invalid formats.
parsePointInTime
Tests:Resolves special references like
^self
and^parent
.Handles cases where the parent branch is not found, throwing appropriate errors.
Validates custom branches with LSN, leveraging mocked
branchIdResolve
.Mocks and Spies:
Mocked
formats.looksLikeLSN
andformats.looksLikeTimestamp
for format validation.Mocked
getProjectBranch
API call for resolving parent branches.Mocked
branchIdResolve
for resolving custom branch IDs.These tests ensure robust handling of PIT parsing logic and improve confidence in the utility's correctness.
Tip
You can
@gru-agent
and leave your feedback. TestGru will make adjustments based on your inputTip
You can
@gru-agent rebase
to rebase the PR.Tip
You can
@gru-agent redo
to reset or rebase before redoing the PR.Tip
To modify the test code yourself, click here Edit Test Code