From 92c53fe982560248dc7655a5605db5e3cfc35d04 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Wed, 10 Aug 2022 18:53:50 +0300 Subject: feat(tvix/tests): check in Nix' language test suite This adds scaffolding code for running the Nix language test suite. The majority of eval-okay-* tests should eventually be runnable as-is by Tvix, however the eval-fail-* tests might not as we intend to have more useful error messages than upstream Nix. Change-Id: I4f3227f0889c55e4274b804a3072850fb78dd1bd Reviewed-on: https://cl.tvl.fyi/c/depot/+/6126 Tested-by: BuildkiteCI Autosubmit: tazjin Reviewed-by: grfn --- .../nix_tests/eval-okay-strings-as-attrs-names.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tvix/eval/src/tests/nix_tests/eval-okay-strings-as-attrs-names.nix (limited to 'tvix/eval/src/tests/nix_tests/eval-okay-strings-as-attrs-names.nix') diff --git a/tvix/eval/src/tests/nix_tests/eval-okay-strings-as-attrs-names.nix b/tvix/eval/src/tests/nix_tests/eval-okay-strings-as-attrs-names.nix new file mode 100644 index 000000000000..5e40928dbe31 --- /dev/null +++ b/tvix/eval/src/tests/nix_tests/eval-okay-strings-as-attrs-names.nix @@ -0,0 +1,20 @@ +let + + attr = { + "key 1" = "test"; + "key 2" = "caseok"; + }; + + t1 = builtins.getAttr "key 1" attr; + t2 = attr."key 2"; + t3 = attr ? "key 1"; + t4 = builtins.attrNames { inherit (attr) "key 1"; }; + + # This is permitted, but there is currently no way to reference this + # variable. + "foo bar" = 1; + +in t1 == "test" + && t2 == "caseok" + && t3 == true + && t4 == ["key 1"] -- cgit 1.4.1