-
Notifications
You must be signed in to change notification settings - Fork 561
fix: add conditional check for PermissionValue definition
#3018
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
Conversation
|
""" WalkthroughA conditional check was added to ensure the existence of the Changes
Possibly related issues
Suggested labels
Suggested reviewers
Poem
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
npm warn EBADENGINE Unsupported engine { 📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (3)
🚧 Files skipped from review as they are similar to previous changes (3)
⏰ Context from checks skipped due to timeout of 90000ms (8)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
|
Can we add a test here that removes |
Patel-Raj11
left a comment
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.
LGTM!
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.
Actionable comments posted: 0
🧹 Nitpick comments (1)
packages/ripple-binary-codec/test/definitions.test.ts (1)
168-172: Consider adding a guard for edge case scenarios.While the current implementation is correct, consider adding a guard to handle the edge case where PermissionValue might not exist in the original definitions.
// Remove PermissionValue from definitions if (definitions.FIELDS) { + const originalPermissionValue = definitions.FIELDS.find( + (fieldTuple: [string, object]) => fieldTuple[0] === 'PermissionValue' + ) + definitions.FIELDS = definitions.FIELDS.filter( (fieldTuple: [string, object]) => fieldTuple[0] !== 'PermissionValue', ) + + // Only verify removal if PermissionValue was originally present + if (originalPermissionValue) { + const expectedFieldsLength = originalFieldsLength - 1 + expect(definitions.FIELDS.length).toBe(expectedFieldsLength) + } } - - // Verify it was deleted - const expectedFieldsLength = originalFieldsLength - 1 - expect(definitions.FIELDS.length).toBe(expectedFieldsLength)
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
packages/ripple-binary-codec/test/definitions.test.ts(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (7)
- GitHub Check: integration (22.x)
- GitHub Check: integration (20.x)
- GitHub Check: browser (22.x)
- GitHub Check: unit (22.x)
- GitHub Check: unit (20.x)
- GitHub Check: Analyze (javascript)
- GitHub Check: build-and-lint (22.x)
🔇 Additional comments (1)
packages/ripple-binary-codec/test/definitions.test.ts (1)
161-188: LGTM! Well-implemented test case addressing the PR requirements.This test effectively validates the conditional check fix for
PermissionValuedefinition that was mentioned in the PR objectives. The implementation follows the established patterns in the test file and properly addresses the concern raised by Patel-Raj11 about adding test coverage.The test logic is sound:
- Creates a proper deep copy of definitions
- Correctly removes the PermissionValue field using array filtering
- Verifies the removal was successful
- Tests that encoding/decoding still works without errors
2f53699 to
cd8f47f
Compare
* add conditional check for PermissionValue * update HISTORY * remove release date * add unit test
* update HISTORY files * enable SAV amendment * add VaultCreate tx and update autofill * build(deps-dev): bump karma from 6.4.3 to 6.4.4 (#2753) * build(deps): bump @scure/bip39 from 1.5.4 to 1.6.0 (#3004) * Fix AccountRoot ledger object (#3010) * fix AccountRoot ledger object * update HISTORY.md * fix import and lint errors * request a validated ledger * build(deps-dev): bump react from 19.0.0 to 19.1.0 (#2968) * upgrade ws dependency (#2940) Co-authored-by: achowdhry-ripple <[email protected]> * build(deps-dev): bump webpack from 5.98.0 to 5.99.9 (#3015) Bumps [webpack](https://github.com/webpack/webpack) from 5.98.0 to 5.99.9. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](webpack/webpack@v5.98.0...v5.99.9) --- updated-dependencies: - dependency-name: webpack dependency-version: 5.99.9 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: achowdhry-ripple <[email protected]> Co-authored-by: Omar Khan <[email protected]> * add Vault ledger entry and base integ test * add rippled serialized type Number. update models & tests to support it * fix: add conditional check for `PermissionValue` definition (#3018) * add conditional check for PermissionValue * update HISTORY * remove release date * add unit test * ripple-binary-codec 2.4.1 patch release (#3019) * update HISTORY * update package.json files * update package-lock.json * test: Separate faucet tests from local integration tests (#2985) * refactor(tests): separate faucet tests from local integration tests * feat: add Faucet test workflow and documentation * fix: Add missing test:faucet script * fix: execute tests one time Co-authored-by: Raj Patel <[email protected]> * fix: remove docker steps from faucet test workflow * docs: update faucet tests section in CONTRIBUTING.md * fix: remove comment from contributing.md Co-authored-by: Raj Patel <[email protected]> * fix: remove test:all from root package Co-authored-by: Raj Patel <[email protected]> * Update CONTRIBUTING.md --------- Co-authored-by: Raj Patel <[email protected]> * update number test * debug * set alias Number to SerializedNumber in coreTypes * update fee in VaultCreate integ test * up the fee * up more * debug fee * update fee with comment * add vault_info RPC with integ test * remove unused var in test * use vault_id * update vaultInfo test * add owner and seq params to vault_info request * add DomainID to vault_info response * add XRPLNumber type and VaultSet tx * rename SerializedNumber to XRPLNumber * add VaultSet to integ test * refactor DEFAULT_VAULT_WITHDRAWAL_POLICY location * fix import bug * add VaultDeposit tx * add VaultDeposit to integ test * add VaultWithdraw tx * add VaultWithdraw to integ test * add VaultClawback tx * add VaultClawback to integ test * use 2 wallets for integ test * comment out VaultClawback tx in integ test * use IOU in integ test * add ClawbackAmount type and VaultClawback to integ test * add VaultDelete tx * remove isBigInt * add VaultDelete to integ test * rename to STNumber * comment out Amount in VaultClawback integ test * Revert "comment out Amount in VaultClawback integ test" This reverts commit 416c1e1. * comment out WithdrawalPolicy in VaultCreate integ test * refactor WithdrawalPolicy * cleanup * cleanup vars * update HISTORY * rename var to VAULT_DATA_MAX_BYTE_LENGTH * use STNumber class in static function * add VaultCreate to codec-fixtures * refactor unit tests * update HISTORY --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Raj Patel <[email protected]> Co-authored-by: Chenna Keshava B S <[email protected]> Co-authored-by: achowdhry-ripple <[email protected]> Co-authored-by: Achal Jhawar <[email protected]>
High Level Overview of Change
Adds conditional check for
PermissionValueso custom definitions (based on previous v2.x versions) don't break.Context of Change
Bithomp reported this issue.
Type of Change
Did you update HISTORY.md?
Test Plan
Adds unit test to delete
PermissionValuefrom defintions.json and verified it doesn't throw an error anymore.