Skip to content

test: cover normalizePagePayloadForNativeLoad edge cases - #55

Merged
markm39 merged 1 commit into
mathnotes-app:mainfrom
VedantMadane:test/payload-normalization-edge-cases
Aug 26, 2026
Merged

test: cover normalizePagePayloadForNativeLoad edge cases#55
markm39 merged 1 commit into
mathnotes-app:mainfrom
VedantMadane:test/payload-normalization-edge-cases

Conversation

@VedantMadane

Copy link
Copy Markdown
Contributor

Summary

Adds unit coverage for normalizePagePayloadForNativeLoad (src/payload.ts), as requested in #12.

What

New file src/__tests__/payloadNormalization.test.ts covering:

  • blank inputs (null, undefined, empty, whitespace) -> valid blank load with blank_payload
  • invalid JSON -> isValid: false, json_parse_failed
  • array / primitive / null JSON roots -> isValid: false, payload_not_object
  • missing or non-object pages -> valid blank load with missing_pages
  • valid { pages: {...} } -> preserves original payload
  • safety invariant: invalid paths never return a non-blank normalized payload

Also notes the change under [Unreleased] in CHANGELOG.md.

Test plan

  • npm test -- 82 passed (including 20 new payload tests)
  • npm test -- --testPathPattern=payloadNormalization

Related

Fixes #12

Add focused unit tests for blank, malformed, missing-pages, and valid
payloads so unsafe native loads stay rejected and blank loads normalize
consistently.

Closes mathnotes-app#12

Signed-off-by: Vedant Madane <6527493+VedantMadane@users.noreply.github.com>
@markm39
markm39 merged commit 12af61a into mathnotes-app:main Aug 26, 2026
1 check passed
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.

test: add coverage for payload normalization edge cases

2 participants