Commit 91dbde4
committed
Add - Pin the sanitize_key() collapse boundary at the rate-table seam.
state_compact_provider() already pins what the *projection* returns for a
collapsing state. Nothing pinned what that collapse does to the rate table, which
is the claim the changelog entry actually makes — and the reason the entry was
able to drift.
Adds two rows to provide_rate_table_round_trips(), which feeds both the round-trip
test and the matched-rates lookup test, so two rows are four cases:
- 'state partially collapsing' (RO / 'ÎF', stored as 'F') is a regression test.
Against the pre-migration space-stripping lookup both its cases fail: the
round trip inserts a second row, and allow_street_address_for_matched_rates()
cannot see the row create_or_update_tax_rate() had just written.
- 'state wholly non-Latin' (RU / 'ЛЕН', stored as '') is a boundary
characterization and passes with or without the migration. The blank matches
the '' arm of core's `tax_rate_state IN ( %s, '' )`, so this shape never
duplicated. It also pins that such an address yields a country-wide rate.
Together they are the narrowing: the same "non-Latin character" trigger, opposite
outcomes, decided by whether anything survives the stripping. Both cities are
plain ASCII on purpose, so the state dimension is not confounded with the separate
byte-parity contract to_find_rates_args() keeps with core.1 parent c5b6158 commit 91dbde4
1 file changed
Lines changed: 71 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3288 | 3288 | | |
3289 | 3289 | | |
3290 | 3290 | | |
3291 | | - | |
3292 | | - | |
| 3291 | + | |
| 3292 | + | |
| 3293 | + | |
3293 | 3294 | | |
3294 | 3295 | | |
3295 | 3296 | | |
| |||
3313 | 3314 | | |
3314 | 3315 | | |
3315 | 3316 | | |
| 3317 | + | |
| 3318 | + | |
| 3319 | + | |
| 3320 | + | |
| 3321 | + | |
| 3322 | + | |
| 3323 | + | |
| 3324 | + | |
| 3325 | + | |
| 3326 | + | |
| 3327 | + | |
| 3328 | + | |
| 3329 | + | |
| 3330 | + | |
| 3331 | + | |
| 3332 | + | |
| 3333 | + | |
| 3334 | + | |
| 3335 | + | |
| 3336 | + | |
| 3337 | + | |
| 3338 | + | |
| 3339 | + | |
| 3340 | + | |
| 3341 | + | |
| 3342 | + | |
| 3343 | + | |
| 3344 | + | |
| 3345 | + | |
| 3346 | + | |
| 3347 | + | |
| 3348 | + | |
| 3349 | + | |
| 3350 | + | |
| 3351 | + | |
| 3352 | + | |
| 3353 | + | |
| 3354 | + | |
| 3355 | + | |
| 3356 | + | |
| 3357 | + | |
| 3358 | + | |
| 3359 | + | |
| 3360 | + | |
| 3361 | + | |
| 3362 | + | |
| 3363 | + | |
| 3364 | + | |
| 3365 | + | |
| 3366 | + | |
| 3367 | + | |
| 3368 | + | |
| 3369 | + | |
| 3370 | + | |
| 3371 | + | |
| 3372 | + | |
| 3373 | + | |
| 3374 | + | |
| 3375 | + | |
| 3376 | + | |
| 3377 | + | |
| 3378 | + | |
| 3379 | + | |
| 3380 | + | |
| 3381 | + | |
| 3382 | + | |
| 3383 | + | |
| 3384 | + | |
3316 | 3385 | | |
3317 | 3386 | | |
3318 | 3387 | | |
| |||
0 commit comments