diff --git a/exercises/practice/isbn-verifier/.meta/tests.toml b/exercises/practice/isbn-verifier/.meta/tests.toml index 6d5a84599..17e18d47a 100644 --- a/exercises/practice/isbn-verifier/.meta/tests.toml +++ b/exercises/practice/isbn-verifier/.meta/tests.toml @@ -30,6 +30,12 @@ description = "invalid character in isbn is not treated as zero" [28025280-2c39-4092-9719-f3234b89c627] description = "X is only valid as a check digit" +[8005b57f-f194-44ee-88d2-a77ac4142591] +description = "only one check digit is allowed" + +[fdb14c99-4cf8-43c5-b06d-eb1638eff343] +description = "X is not substituted by the value 10" + [f6294e61-7e79-46b3-977b-f48789a4945b] description = "valid isbn without separating dashes" diff --git a/exercises/practice/isbn-verifier/IsbnVerifierTests.fs b/exercises/practice/isbn-verifier/IsbnVerifierTests.fs index 342de3e08..5b3a03714 100644 --- a/exercises/practice/isbn-verifier/IsbnVerifierTests.fs +++ b/exercises/practice/isbn-verifier/IsbnVerifierTests.fs @@ -33,6 +33,14 @@ let ``Invalid character in isbn is not treated as zero`` () = let ``X is only valid as a check digit`` () = isValid "3-598-2X507-9" |> should equal false +[] +let ``Only one check digit is allowed`` () = + isValid "3-598-21508-96" |> should equal false + +[] +let ``X is not substituted by the value 10`` () = + isValid "3-598-2X507-5" |> should equal false + [] let ``Valid isbn without separating dashes`` () = isValid "3598215088" |> should equal true