From 89a9d6e5293775c812ef1a26e4db61a3dbb884e7 Mon Sep 17 00:00:00 2001 From: "Commentator2.0" Date: Tue, 18 Nov 2025 16:47:44 +0100 Subject: [PATCH] tests/functional2/lang: Migrate string coersion for integers Change-Id: I428c8935119b3184109b3e3f760ed72054b0cd00 --- ...-fail-accidental-coerce-integer-attempts.flags | 1 - .../lang/eval-fail-coerce-integers-without-xp.nix | 1 - ...l-over-coercive-builtins-with-xp-feature.flags | 1 - .../lang/eval-okay-coerce-integers.flags | 1 - .../eval-fail-accidental-coerce.err.exp} | 4 ++-- .../eval-fail-coerce-substring.err.exp} | 2 +- .../string-coerce-integers/eval-okay.out.exp} | 0 .../in-accidental-coerce.nix} | 0 .../in-coerce-substring.nix} | 0 .../lang/string-coerce-integers/in.nix} | 0 .../lang/string-coerce-integers/no-xp.err.exp} | 4 ++-- .../lang/string-coerce-integers/test.toml | 15 +++++++++++++++ 12 files changed, 20 insertions(+), 9 deletions(-) delete mode 100644 tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.flags delete mode 100644 tests/functional/lang/eval-fail-coerce-integers-without-xp.nix delete mode 100644 tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.flags delete mode 100644 tests/functional/lang/eval-okay-coerce-integers.flags rename tests/{functional/lang/eval-fail-accidental-coerce-integer-attempts.err.exp => functional2/lang/string-coerce-integers/eval-fail-accidental-coerce.err.exp} (69%) rename tests/{functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.err.exp => functional2/lang/string-coerce-integers/eval-fail-coerce-substring.err.exp} (78%) rename tests/{functional/lang/eval-okay-coerce-integers.exp => functional2/lang/string-coerce-integers/eval-okay.out.exp} (100%) rename tests/{functional/lang/eval-fail-accidental-coerce-integer-attempts.nix => functional2/lang/string-coerce-integers/in-accidental-coerce.nix} (100%) rename tests/{functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.nix => functional2/lang/string-coerce-integers/in-coerce-substring.nix} (100%) rename tests/{functional/lang/eval-okay-coerce-integers.nix => functional2/lang/string-coerce-integers/in.nix} (100%) rename tests/{functional/lang/eval-fail-coerce-integers-without-xp.err.exp => functional2/lang/string-coerce-integers/no-xp.err.exp} (60%) create mode 100644 tests/functional2/lang/string-coerce-integers/test.toml diff --git a/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.flags b/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.flags deleted file mode 100644 index 675354843..000000000 --- a/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.flags +++ /dev/null @@ -1 +0,0 @@ ---extra-experimental-features coerce-integers diff --git a/tests/functional/lang/eval-fail-coerce-integers-without-xp.nix b/tests/functional/lang/eval-fail-coerce-integers-without-xp.nix deleted file mode 100644 index e9788f5ca..000000000 --- a/tests/functional/lang/eval-fail-coerce-integers-without-xp.nix +++ /dev/null @@ -1 +0,0 @@ -"${42}" == 42 diff --git a/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.flags b/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.flags deleted file mode 100644 index 675354843..000000000 --- a/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.flags +++ /dev/null @@ -1 +0,0 @@ ---extra-experimental-features coerce-integers diff --git a/tests/functional/lang/eval-okay-coerce-integers.flags b/tests/functional/lang/eval-okay-coerce-integers.flags deleted file mode 100644 index 675354843..000000000 --- a/tests/functional/lang/eval-okay-coerce-integers.flags +++ /dev/null @@ -1 +0,0 @@ ---extra-experimental-features coerce-integers diff --git a/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.err.exp b/tests/functional2/lang/string-coerce-integers/eval-fail-accidental-coerce.err.exp similarity index 69% rename from tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.err.exp rename to tests/functional2/lang/string-coerce-integers/eval-fail-accidental-coerce.err.exp index 721e0d341..b9b72507e 100644 --- a/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.err.exp +++ b/tests/functional2/lang/string-coerce-integers/eval-fail-accidental-coerce.err.exp @@ -1,12 +1,12 @@ error: … while evaluating x - at /pwd/eval-fail-accidental-coerce-integer-attempts.nix:1:21: + at /pwd/in.nix:1:21: 1| let x = "" + 42; in x == "42" | ^ 2| … while evaluating a path segment - at /pwd/eval-fail-accidental-coerce-integer-attempts.nix:1:14: + at /pwd/in.nix:1:14: 1| let x = "" + 42; in x == "42" | ^ 2| diff --git a/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.err.exp b/tests/functional2/lang/string-coerce-integers/eval-fail-coerce-substring.err.exp similarity index 78% rename from tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.err.exp rename to tests/functional2/lang/string-coerce-integers/eval-fail-coerce-substring.err.exp index df20e9020..080bf377d 100644 --- a/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.err.exp +++ b/tests/functional2/lang/string-coerce-integers/eval-fail-coerce-substring.err.exp @@ -1,6 +1,6 @@ error: … while calling the 'substring' builtin - at /pwd/eval-fail-over-coercive-builtins-with-xp-feature.nix:1:1: + at /pwd/in.nix:1:1: 1| builtins.substring 0 1 42 == "4" | ^ 2| diff --git a/tests/functional/lang/eval-okay-coerce-integers.exp b/tests/functional2/lang/string-coerce-integers/eval-okay.out.exp similarity index 100% rename from tests/functional/lang/eval-okay-coerce-integers.exp rename to tests/functional2/lang/string-coerce-integers/eval-okay.out.exp diff --git a/tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.nix b/tests/functional2/lang/string-coerce-integers/in-accidental-coerce.nix similarity index 100% rename from tests/functional/lang/eval-fail-accidental-coerce-integer-attempts.nix rename to tests/functional2/lang/string-coerce-integers/in-accidental-coerce.nix diff --git a/tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.nix b/tests/functional2/lang/string-coerce-integers/in-coerce-substring.nix similarity index 100% rename from tests/functional/lang/eval-fail-over-coercive-builtins-with-xp-feature.nix rename to tests/functional2/lang/string-coerce-integers/in-coerce-substring.nix diff --git a/tests/functional/lang/eval-okay-coerce-integers.nix b/tests/functional2/lang/string-coerce-integers/in.nix similarity index 100% rename from tests/functional/lang/eval-okay-coerce-integers.nix rename to tests/functional2/lang/string-coerce-integers/in.nix diff --git a/tests/functional/lang/eval-fail-coerce-integers-without-xp.err.exp b/tests/functional2/lang/string-coerce-integers/no-xp.err.exp similarity index 60% rename from tests/functional/lang/eval-fail-coerce-integers-without-xp.err.exp rename to tests/functional2/lang/string-coerce-integers/no-xp.err.exp index e0949a730..95b7a9d91 100644 --- a/tests/functional/lang/eval-fail-coerce-integers-without-xp.err.exp +++ b/tests/functional2/lang/string-coerce-integers/no-xp.err.exp @@ -1,7 +1,7 @@ error: … while evaluating a path segment - at /pwd/eval-fail-coerce-integers-without-xp.nix:1:2: - 1| "${42}" == 42 + at /pwd/in.nix:1:2: + 1| "${42}" == "42" | ^ 2| diff --git a/tests/functional2/lang/string-coerce-integers/test.toml b/tests/functional2/lang/string-coerce-integers/test.toml new file mode 100644 index 000000000..7a8d56dcc --- /dev/null +++ b/tests/functional2/lang/string-coerce-integers/test.toml @@ -0,0 +1,15 @@ +[[test]] +runner = "eval-okay" +flags = ["--extra-experimental-features", "coerce-integers"] +in = "in.nix" + +[[test]] +runner = "eval-fail" +flags = ["--extra-experimental-features", "coerce-integers"] +matrix = true +in = ["in-accidental-coerce.nix", "in-coerce-substring.nix"] + +[[test]] +name = "no-xp" +runner = "eval-fail" +in = "in.nix"