Skip to content

fix: ENG-3901 Adds additional postcode validation#437

Merged
curlyfriesplease merged 9 commits intomasterfrom
postcode-validation
Apr 14, 2026
Merged

fix: ENG-3901 Adds additional postcode validation#437
curlyfriesplease merged 9 commits intomasterfrom
postcode-validation

Conversation

@curlyfriesplease
Copy link
Copy Markdown
Contributor

@curlyfriesplease curlyfriesplease commented Mar 24, 2025

ENG-3901

On both RND 2025 and 2026 we found there's an inconsistency between the regex used by our storybook's PostcodeLookup component, and the backend of serverless-giftaid.

We found that the backend was stricter than storybook in its validation of the outcode (the first half of a postcode) - the postcode cro 7tp was being allowed by the frontend, but rejected by the backend.

The goal here is to make the FE & BE* are stick to the same regex rule.
*(the backend itself doesn't validate, it defers to a function in data-models. So really we're matching that.)

There's a few tests updated and removed: ones that disallowed not having a space, or not using capital letters. The backend/data-models normalises what it's given, so postcodes like bn16aa will get transformed into BN1 6AA.

To test it works, we should NOT be able to use the above postcode in either form (the main page, or the /update page)

Last point: I did this a year ago when I had an IDE rule that strips whitespace. While I don't have that rule enabled anymore, I do still want to keep the many whitespace removal changes here. A noisier diff, but it is correct as that is errant whitespace and it shouldn't be here. I will die on this hill

@curlyfriesplease curlyfriesplease changed the title Adds additional postcode validation fix: ENG-3901 Adds additional postcode validation Mar 24, 2025
@curlyfriesplease curlyfriesplease marked this pull request as ready for review April 10, 2026 15:25
@curlyfriesplease curlyfriesplease merged commit 70d3594 into master Apr 14, 2026
7 checks passed
@curlyfriesplease curlyfriesplease deleted the postcode-validation branch April 14, 2026 10:00
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.

3 participants