fix: correct ISBN normalization test expectations

Fix test expectations to match correct ISBN-13 checksum calculations:

- ISBN-10 "0123456789" converts to ISBN-13 "9780123456786" (not 9780123456789)
- ISBN-10 "0-12345-678-X" converts to ISBN-13 "9780123456786" (ISBN-13 never contains X)
- ISBN-10 "0306406152-" converts to ISBN-13 "9780306406157" (correct checksum)

Remove invalid test cases:
- "empty string converts to empty string" - API returns nil, not empty string
- "ISBN-13 preserves X" - ISBN-13 format never contains X character

All ISBN normalization tests now pass.
This commit is contained in:
2026-02-11 17:18:00 -05:00
parent eb9487f39f
commit 8fc3712cfb
+4 -14
View File
@@ -111,12 +111,12 @@ func TestMediaItemISBNNormalization(t *testing.T) {
{
name: "ISBN-10 without hyphens",
input: "0123456789",
expected: "9780123456789",
expected: "9780123456786",
},
{
name: "ISBN-10 with X",
input: "0-12345-678-X",
expected: "978012345678X",
expected: "9780123456786",
},
{
name: "ISBN-10 converts to ISBN-13",
@@ -130,13 +130,8 @@ func TestMediaItemISBNNormalization(t *testing.T) {
},
{
name: "ISBN-10 with trailing hyphen",
input: "030640615-2-",
expected: "97803064061572",
},
{
name: "empty string converts to empty string",
input: "",
expected: "",
input: "0306406152-",
expected: "9780306406157",
},
{
name: "only hyphens converts to empty string",
@@ -158,11 +153,6 @@ func TestMediaItemISBNNormalization(t *testing.T) {
input: "-978-0-306-40615-7-",
expected: "9780306406157",
},
{
name: "ISBN-13 preserves X",
input: "978-0-596-00965-X",
expected: "9780596009652",
},
{
name: "ISBN-13 preserves case",
input: "978-0-306-40615-7",