diff options
-rw-r--r-- | src/gleam_stdlib.mjs | 20 | ||||
-rw-r--r-- | test/gleam/int_test.gleam | 20 |
2 files changed, 20 insertions, 20 deletions
diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs index df0f788..d726421 100644 --- a/src/gleam_stdlib.mjs +++ b/src/gleam_stdlib.mjs @@ -58,14 +58,14 @@ export function int_to_base_string(int, base) { } const int_base_patterns = { - 2: /[^0-1]/, - 3: /[^0-2]/, - 4: /[^0-3]/, - 5: /[^0-4]/, - 6: /[^0-5]/, - 7: /[^0-6]/, - 8: /[^0-7]/, - 9: /[^0-8]/, + 2: /[^0-1]/, + 3: /[^0-2]/, + 4: /[^0-3]/, + 5: /[^0-4]/, + 6: /[^0-5]/, + 7: /[^0-6]/, + 8: /[^0-7]/, + 9: /[^0-8]/, 10: /[^0-9]/, 11: /[^0-9a]/, 12: /[^0-9a-b]/, @@ -93,10 +93,10 @@ const int_base_patterns = { 34: /[^0-9a-x]/, 35: /[^0-9a-y]/, 36: /[^0-9a-z]/, -} +}; export function int_from_base_string(string, base) { - if (int_base_patterns[base].test(string.toLowerCase())) { + if (int_base_patterns[base].test(string.replace(/^-/, "").toLowerCase())) { return new Error(Nil); } diff --git a/test/gleam/int_test.gleam b/test/gleam/int_test.gleam index 582cec5..608f77f 100644 --- a/test/gleam/int_test.gleam +++ b/test/gleam/int_test.gleam @@ -138,11 +138,11 @@ pub fn to_base16_test() { |> int.to_base16() |> should.equal("-64") - 43981 + 43_981 |> int.to_base16() |> should.equal("ABCD") - -43981 + -43_981 |> int.to_base16() |> should.equal("-ABCD") } @@ -241,7 +241,7 @@ pub fn is_even_test() { int.is_even(-2) |> should.be_true - int.is_even(10006) + int.is_even(10_006) |> should.be_true int.is_even(1) @@ -250,7 +250,7 @@ pub fn is_even_test() { int.is_even(-3) |> should.be_false - int.is_even(10005) + int.is_even(10_005) |> should.be_false } @@ -264,7 +264,7 @@ pub fn is_odd_test() { int.is_odd(-2) |> should.be_false - int.is_odd(10006) + int.is_odd(10_006) |> should.be_false int.is_odd(1) @@ -273,7 +273,7 @@ pub fn is_odd_test() { int.is_odd(-3) |> should.be_true - int.is_odd(10005) + int.is_odd(10_005) |> should.be_true } @@ -428,10 +428,10 @@ pub fn random_test() { |> should.be_true } test_average(100, 0, 0, 5) - test_average(1_000, 0, 100, 5) - test_average(1_000, -100, 100, 5) - test_average(1_000, -100, 0, 5) - test_average(1_000, 0, -100, 5) + test_average(1000, 0, 100, 5) + test_average(1000, -100, 100, 5) + test_average(1000, -100, 0, 5) + test_average(1000, 0, -100, 5) } pub fn divide_test() { |