mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-10-17 19:36:28 +02:00
fix(labels): replace incorrect ams_30x15 preset with correct AMS holder sizes (#1426)
Reporter — the same person who originally requested the labels feature in #809 — discovered that the ams_30x15 preset's 30x15 mm dimension didn't actually fit any variant of the MakerWorld AMS Filament Label Holder (model 752566) it advertised. Two new presets replace it: - ams_holder_74x33 (74 x 33 mm) matches the printable label STL bundled in the MakerWorld project - ams_holder_75x55 (75 x 55 mm) fits the cardstock-insert variant the reporter validated on bench Both cross the 20 mm height threshold so they land in the roomy layout branch — swatch on the left, QR on the right, multi-line text (brand, material, hex code, spool ID) in the middle. The old 30x15 mm preset couldn't fit a QR code; the new ones do. No DB migration: the preset name was never persisted. Callers scripting the old ams_30x15 value get a clean 422 at the route's Literal validator with the new valid values listed. i18n: replaced inventory.labels.templates.ams.{label,hint} with amsHolderSmall and amsHolderLarge across all 8 locales with real translations; parity guard cleaned of the stale English-fallback cognate entries. Parity holds at 4856 leaves per locale. Tests: backend label renderer + integration tests cover both new presets; LabelTemplatePickerModal test updated for the 6-button grid and the new template value in the API-call assertion.
This commit is contained in:
@@ -66,7 +66,13 @@ class TestLocalInventoryLabels:
|
||||
@pytest.mark.integration
|
||||
async def test_all_four_templates_succeed(self, async_client: AsyncClient, spool_factory):
|
||||
s = await spool_factory()
|
||||
for template in ("ams_30x15", "box_62x29", "avery_5160", "avery_l7160"):
|
||||
for template in (
|
||||
"ams_holder_74x33",
|
||||
"ams_holder_75x55",
|
||||
"box_62x29",
|
||||
"avery_5160",
|
||||
"avery_l7160",
|
||||
):
|
||||
resp = await async_client.post(
|
||||
"/api/v1/inventory/labels",
|
||||
json={"spool_ids": [s.id], "template": template},
|
||||
@@ -100,7 +106,7 @@ class TestLocalInventoryLabels:
|
||||
s = await spool_factory()
|
||||
resp = await async_client.post(
|
||||
"/api/v1/inventory/labels",
|
||||
json={"spool_ids": [s.id, 99999], "template": "ams_30x15"},
|
||||
json={"spool_ids": [s.id, 99999], "template": "ams_holder_74x33"},
|
||||
)
|
||||
assert resp.status_code == 404
|
||||
assert "99999" in resp.text
|
||||
|
||||
Reference in New Issue
Block a user