From 70633a30583f8df01809e64696f6743810b13a93 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Sun, 19 Jul 2020 00:25:29 +0100 Subject: chore(3p/nix/tests): Move language test files to src/tests These files will be integrated into the evaluator unit tests instead of running separately via a shell script. Change-Id: I1d229e73b1d862777f5108c86891689900edefbe Reviewed-on: https://cl.tvl.fyi/c/depot/+/1275 Tested-by: BuildkiteCI Reviewed-by: Kane York Reviewed-by: isomer --- third_party/nix/src/tests/lang/binary-data | Bin 0 -> 1024 bytes third_party/nix/src/tests/lang/data | 1 + third_party/nix/src/tests/lang/dir1/a.nix | 1 + third_party/nix/src/tests/lang/dir2/a.nix | 1 + third_party/nix/src/tests/lang/dir2/b.nix | 1 + third_party/nix/src/tests/lang/dir3/a.nix | 1 + third_party/nix/src/tests/lang/dir3/b.nix | 1 + third_party/nix/src/tests/lang/dir3/c.nix | 1 + third_party/nix/src/tests/lang/dir4/a.nix | 1 + third_party/nix/src/tests/lang/dir4/c.nix | 1 + third_party/nix/src/tests/lang/eval-fail-abort.nix | 1 + .../src/tests/lang/eval-fail-antiquoted-path.nix | 4 + .../nix/src/tests/lang/eval-fail-assert.nix | 5 + .../src/tests/lang/eval-fail-bad-antiquote-1.nix | 1 + .../src/tests/lang/eval-fail-bad-antiquote-2.nix | 1 + .../src/tests/lang/eval-fail-bad-antiquote-3.nix | 1 + .../nix/src/tests/lang/eval-fail-blackhole.nix | 5 + .../nix/src/tests/lang/eval-fail-deepseq.nix | 1 + .../src/tests/lang/eval-fail-hashfile-missing.nix | 5 + .../nix/src/tests/lang/eval-fail-missing-arg.nix | 1 + .../nix/src/tests/lang/eval-fail-remove.nix | 5 + .../nix/src/tests/lang/eval-fail-scope-5.nix | 10 + third_party/nix/src/tests/lang/eval-fail-seq.nix | 1 + .../nix/src/tests/lang/eval-fail-substring.nix | 1 + .../nix/src/tests/lang/eval-fail-to-path.nix | 1 + .../src/tests/lang/eval-fail-undeclared-arg.nix | 1 + .../nix/src/tests/lang/eval-okay-any-all.exp | 1 + .../nix/src/tests/lang/eval-okay-any-all.nix | 11 + .../nix/src/tests/lang/eval-okay-arithmetic.exp | 1 + .../nix/src/tests/lang/eval-okay-arithmetic.nix | 59 ++++ .../nix/src/tests/lang/eval-okay-attrnames.exp | 1 + .../nix/src/tests/lang/eval-okay-attrnames.nix | 11 + third_party/nix/src/tests/lang/eval-okay-attrs.exp | 1 + third_party/nix/src/tests/lang/eval-okay-attrs.nix | 5 + .../nix/src/tests/lang/eval-okay-attrs2.exp | 1 + .../nix/src/tests/lang/eval-okay-attrs2.nix | 10 + .../nix/src/tests/lang/eval-okay-attrs3.exp | 1 + .../nix/src/tests/lang/eval-okay-attrs3.nix | 22 ++ .../nix/src/tests/lang/eval-okay-attrs4.exp | 1 + .../nix/src/tests/lang/eval-okay-attrs4.nix | 7 + .../nix/src/tests/lang/eval-okay-attrs5.exp | 1 + .../nix/src/tests/lang/eval-okay-attrs5.nix | 21 ++ .../nix/src/tests/lang/eval-okay-autoargs.exp | 1 + .../nix/src/tests/lang/eval-okay-autoargs.flags | 1 + .../nix/src/tests/lang/eval-okay-autoargs.nix | 15 + .../tests/lang/eval-okay-backslash-newline-1.exp | 1 + .../tests/lang/eval-okay-backslash-newline-1.nix | 2 + .../tests/lang/eval-okay-backslash-newline-2.exp | 1 + .../tests/lang/eval-okay-backslash-newline-2.nix | 2 + .../nix/src/tests/lang/eval-okay-builtins-add.exp | 1 + .../nix/src/tests/lang/eval-okay-builtins-add.nix | 8 + .../nix/src/tests/lang/eval-okay-builtins.exp | 1 + .../nix/src/tests/lang/eval-okay-builtins.nix | 12 + .../src/tests/lang/eval-okay-callable-attrs.exp | 1 + .../src/tests/lang/eval-okay-callable-attrs.nix | 1 + .../nix/src/tests/lang/eval-okay-catattrs.exp | 1 + .../nix/src/tests/lang/eval-okay-catattrs.nix | 1 + .../nix/src/tests/lang/eval-okay-closure.exp.xml | 343 +++++++++++++++++++++ .../nix/src/tests/lang/eval-okay-closure.nix | 13 + .../nix/src/tests/lang/eval-okay-comments.exp | 1 + .../nix/src/tests/lang/eval-okay-comments.nix | 59 ++++ .../nix/src/tests/lang/eval-okay-concat.exp | 1 + .../nix/src/tests/lang/eval-okay-concat.nix | 1 + .../nix/src/tests/lang/eval-okay-concatmap.exp | 1 + .../nix/src/tests/lang/eval-okay-concatmap.nix | 5 + .../src/tests/lang/eval-okay-concatstringssep.exp | 1 + .../src/tests/lang/eval-okay-concatstringssep.nix | 8 + .../tests/lang/eval-okay-context-introspection.exp | 1 + .../tests/lang/eval-okay-context-introspection.nix | 24 ++ .../nix/src/tests/lang/eval-okay-context.exp | 1 + .../nix/src/tests/lang/eval-okay-context.nix | 6 + .../nix/src/tests/lang/eval-okay-curpos.exp | 1 + .../nix/src/tests/lang/eval-okay-curpos.nix | 5 + .../nix/src/tests/lang/eval-okay-deepseq.exp | 1 + .../nix/src/tests/lang/eval-okay-deepseq.nix | 1 + .../tests/lang/eval-okay-delayed-with-inherit.exp | 1 + .../tests/lang/eval-okay-delayed-with-inherit.nix | 24 ++ .../nix/src/tests/lang/eval-okay-delayed-with.exp | 1 + .../nix/src/tests/lang/eval-okay-delayed-with.nix | 29 ++ .../src/tests/lang/eval-okay-dynamic-attrs-2.exp | 1 + .../src/tests/lang/eval-okay-dynamic-attrs-2.nix | 1 + .../tests/lang/eval-okay-dynamic-attrs-bare.exp | 1 + .../tests/lang/eval-okay-dynamic-attrs-bare.nix | 17 + .../nix/src/tests/lang/eval-okay-dynamic-attrs.exp | 1 + .../nix/src/tests/lang/eval-okay-dynamic-attrs.nix | 17 + third_party/nix/src/tests/lang/eval-okay-elem.exp | 1 + third_party/nix/src/tests/lang/eval-okay-elem.nix | 6 + .../nix/src/tests/lang/eval-okay-empty-args.exp | 1 + .../nix/src/tests/lang/eval-okay-empty-args.nix | 1 + .../src/tests/lang/eval-okay-eq-derivations.exp | 1 + .../src/tests/lang/eval-okay-eq-derivations.nix | 10 + .../nix/src/tests/lang/eval-okay-eq.exp.disabled | 1 + third_party/nix/src/tests/lang/eval-okay-eq.nix | 3 + .../nix/src/tests/lang/eval-okay-filter.exp | 1 + .../nix/src/tests/lang/eval-okay-filter.nix | 5 + .../nix/src/tests/lang/eval-okay-flatten.exp | 1 + .../nix/src/tests/lang/eval-okay-flatten.nix | 8 + third_party/nix/src/tests/lang/eval-okay-float.exp | 1 + third_party/nix/src/tests/lang/eval-okay-float.nix | 6 + .../nix/src/tests/lang/eval-okay-fromTOML.exp | 1 + .../nix/src/tests/lang/eval-okay-fromTOML.nix | 208 +++++++++++++ .../nix/src/tests/lang/eval-okay-fromjson.exp | 1 + .../nix/src/tests/lang/eval-okay-fromjson.nix | 36 +++ .../src/tests/lang/eval-okay-functionargs.exp.xml | 15 + .../nix/src/tests/lang/eval-okay-functionargs.nix | 80 +++++ .../tests/lang/eval-okay-getattrpos-undefined.exp | 1 + .../tests/lang/eval-okay-getattrpos-undefined.nix | 1 + .../nix/src/tests/lang/eval-okay-getattrpos.exp | 1 + .../nix/src/tests/lang/eval-okay-getattrpos.nix | 6 + .../nix/src/tests/lang/eval-okay-getenv.exp | 1 + .../nix/src/tests/lang/eval-okay-getenv.nix | 1 + third_party/nix/src/tests/lang/eval-okay-hash.exp | 0 .../nix/src/tests/lang/eval-okay-hashfile.exp | 1 + .../nix/src/tests/lang/eval-okay-hashfile.nix | 4 + .../nix/src/tests/lang/eval-okay-hashstring.exp | 1 + .../nix/src/tests/lang/eval-okay-hashstring.nix | 4 + third_party/nix/src/tests/lang/eval-okay-if.exp | 1 + third_party/nix/src/tests/lang/eval-okay-if.nix | 1 + .../nix/src/tests/lang/eval-okay-import.exp | 1 + .../nix/src/tests/lang/eval-okay-import.nix | 11 + .../nix/src/tests/lang/eval-okay-ind-string.exp | 1 + .../nix/src/tests/lang/eval-okay-ind-string.nix | 128 ++++++++ third_party/nix/src/tests/lang/eval-okay-let.exp | 1 + third_party/nix/src/tests/lang/eval-okay-let.nix | 5 + third_party/nix/src/tests/lang/eval-okay-list.exp | 1 + third_party/nix/src/tests/lang/eval-okay-list.nix | 7 + .../nix/src/tests/lang/eval-okay-listtoattrs.exp | 1 + .../nix/src/tests/lang/eval-okay-listtoattrs.nix | 11 + third_party/nix/src/tests/lang/eval-okay-logic.exp | 1 + third_party/nix/src/tests/lang/eval-okay-logic.nix | 1 + third_party/nix/src/tests/lang/eval-okay-map.exp | 1 + third_party/nix/src/tests/lang/eval-okay-map.nix | 3 + .../nix/src/tests/lang/eval-okay-mapattrs.exp | 1 + .../nix/src/tests/lang/eval-okay-mapattrs.nix | 3 + .../nix/src/tests/lang/eval-okay-nested-with.exp | 1 + .../nix/src/tests/lang/eval-okay-nested-with.nix | 3 + .../nix/src/tests/lang/eval-okay-new-let.exp | 1 + .../nix/src/tests/lang/eval-okay-new-let.nix | 14 + .../tests/lang/eval-okay-null-dynamic-attrs.exp | 1 + .../tests/lang/eval-okay-null-dynamic-attrs.nix | 1 + .../nix/src/tests/lang/eval-okay-partition.exp | 1 + .../nix/src/tests/lang/eval-okay-partition.nix | 5 + third_party/nix/src/tests/lang/eval-okay-path.nix | 7 + .../nix/src/tests/lang/eval-okay-pathexists.exp | 1 + .../nix/src/tests/lang/eval-okay-pathexists.nix | 5 + .../nix/src/tests/lang/eval-okay-patterns.exp | 1 + .../nix/src/tests/lang/eval-okay-patterns.nix | 16 + .../nix/src/tests/lang/eval-okay-readDir.exp | 1 + .../nix/src/tests/lang/eval-okay-readDir.nix | 1 + .../nix/src/tests/lang/eval-okay-readfile.exp | 1 + .../nix/src/tests/lang/eval-okay-readfile.nix | 1 + .../src/tests/lang/eval-okay-redefine-builtin.exp | 1 + .../src/tests/lang/eval-okay-redefine-builtin.nix | 3 + .../nix/src/tests/lang/eval-okay-regex-match.exp | 1 + .../nix/src/tests/lang/eval-okay-regex-match.nix | 29 ++ .../nix/src/tests/lang/eval-okay-regex-split.exp | 1 + .../nix/src/tests/lang/eval-okay-regex-split.nix | 48 +++ .../nix/src/tests/lang/eval-okay-remove.exp | 1 + .../nix/src/tests/lang/eval-okay-remove.nix | 5 + .../src/tests/lang/eval-okay-replacestrings.exp | 1 + .../src/tests/lang/eval-okay-replacestrings.nix | 11 + .../nix/src/tests/lang/eval-okay-scope-1.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-1.nix | 6 + .../nix/src/tests/lang/eval-okay-scope-2.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-2.nix | 6 + .../nix/src/tests/lang/eval-okay-scope-3.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-3.nix | 6 + .../nix/src/tests/lang/eval-okay-scope-4.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-4.nix | 10 + .../nix/src/tests/lang/eval-okay-scope-6.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-6.nix | 7 + .../nix/src/tests/lang/eval-okay-scope-7.exp | 1 + .../nix/src/tests/lang/eval-okay-scope-7.nix | 6 + .../nix/src/tests/lang/eval-okay-search-path.exp | 1 + .../nix/src/tests/lang/eval-okay-search-path.flags | 1 + .../nix/src/tests/lang/eval-okay-search-path.nix | 11 + third_party/nix/src/tests/lang/eval-okay-seq.exp | 1 + third_party/nix/src/tests/lang/eval-okay-seq.nix | 1 + third_party/nix/src/tests/lang/eval-okay-sort.exp | 1 + third_party/nix/src/tests/lang/eval-okay-sort.nix | 8 + .../nix/src/tests/lang/eval-okay-splitversion.exp | 1 + .../nix/src/tests/lang/eval-okay-splitversion.nix | 1 + .../nix/src/tests/lang/eval-okay-string.exp | 1 + .../nix/src/tests/lang/eval-okay-string.nix | 12 + .../lang/eval-okay-strings-as-attrs-names.exp | 1 + .../lang/eval-okay-strings-as-attrs-names.nix | 20 ++ .../nix/src/tests/lang/eval-okay-substring.exp | 1 + .../nix/src/tests/lang/eval-okay-substring.nix | 21 ++ .../tests/lang/eval-okay-tail-call-1.exp-disabled | 1 + .../nix/src/tests/lang/eval-okay-tail-call-1.nix | 3 + .../nix/src/tests/lang/eval-okay-tojson.exp | 1 + .../nix/src/tests/lang/eval-okay-tojson.nix | 13 + third_party/nix/src/tests/lang/eval-okay-toxml.exp | 1 + third_party/nix/src/tests/lang/eval-okay-toxml.nix | 3 + .../nix/src/tests/lang/eval-okay-toxml2.exp | 1 + .../nix/src/tests/lang/eval-okay-toxml2.nix | 1 + .../nix/src/tests/lang/eval-okay-tryeval.exp | 1 + .../nix/src/tests/lang/eval-okay-tryeval.nix | 5 + third_party/nix/src/tests/lang/eval-okay-types.exp | 1 + third_party/nix/src/tests/lang/eval-okay-types.nix | 37 +++ .../nix/src/tests/lang/eval-okay-versions.exp | 1 + .../nix/src/tests/lang/eval-okay-versions.nix | 40 +++ third_party/nix/src/tests/lang/eval-okay-with.exp | 1 + third_party/nix/src/tests/lang/eval-okay-with.nix | 19 ++ .../nix/src/tests/lang/eval-okay-xml.exp.xml | 52 ++++ third_party/nix/src/tests/lang/eval-okay-xml.nix | 21 ++ third_party/nix/src/tests/lang/imported.nix | 3 + third_party/nix/src/tests/lang/imported2.nix | 1 + third_party/nix/src/tests/lang/lib.nix | 61 ++++ .../nix/src/tests/lang/parse-fail-dup-attrs-1.nix | 5 + .../nix/src/tests/lang/parse-fail-dup-attrs-2.nix | 13 + .../nix/src/tests/lang/parse-fail-dup-attrs-3.nix | 13 + .../nix/src/tests/lang/parse-fail-dup-attrs-4.nix | 4 + .../nix/src/tests/lang/parse-fail-dup-attrs-7.nix | 9 + .../nix/src/tests/lang/parse-fail-dup-formals.nix | 1 + .../tests/lang/parse-fail-mixed-nested-attrs1.nix | 4 + .../tests/lang/parse-fail-mixed-nested-attrs2.nix | 4 + .../nix/src/tests/lang/parse-fail-path-slash.nix | 6 + .../nix/src/tests/lang/parse-fail-patterns-1.nix | 1 + .../tests/lang/parse-fail-regression-20060610.nix | 11 + third_party/nix/src/tests/lang/parse-fail-uft8.nix | 1 + .../nix/src/tests/lang/parse-fail-undef-var-2.nix | 7 + .../nix/src/tests/lang/parse-fail-undef-var.nix | 1 + third_party/nix/src/tests/lang/parse-okay-1.nix | 1 + third_party/nix/src/tests/lang/parse-okay-crlf.nix | 17 + .../nix/src/tests/lang/parse-okay-dup-attrs-5.nix | 4 + .../nix/src/tests/lang/parse-okay-dup-attrs-6.nix | 4 + .../tests/lang/parse-okay-mixed-nested-attrs-1.nix | 4 + .../tests/lang/parse-okay-mixed-nested-attrs-2.nix | 4 + .../tests/lang/parse-okay-mixed-nested-attrs-3.nix | 7 + .../tests/lang/parse-okay-regression-20041027.nix | 11 + .../src/tests/lang/parse-okay-regression-751.nix | 2 + .../nix/src/tests/lang/parse-okay-subversion.nix | 43 +++ third_party/nix/src/tests/lang/parse-okay-url.nix | 7 + third_party/nix/src/tests/lang/readDir/bar | 0 .../tests/lang/readDir/foo/git-hates-directories | 0 third_party/nix/tests/lang/binary-data | Bin 1024 -> 0 bytes third_party/nix/tests/lang/data | 1 - third_party/nix/tests/lang/dir1/a.nix | 1 - third_party/nix/tests/lang/dir2/a.nix | 1 - third_party/nix/tests/lang/dir2/b.nix | 1 - third_party/nix/tests/lang/dir3/a.nix | 1 - third_party/nix/tests/lang/dir3/b.nix | 1 - third_party/nix/tests/lang/dir3/c.nix | 1 - third_party/nix/tests/lang/dir4/a.nix | 1 - third_party/nix/tests/lang/dir4/c.nix | 1 - third_party/nix/tests/lang/eval-fail-abort.nix | 1 - .../nix/tests/lang/eval-fail-antiquoted-path.nix | 4 - third_party/nix/tests/lang/eval-fail-assert.nix | 5 - .../nix/tests/lang/eval-fail-bad-antiquote-1.nix | 1 - .../nix/tests/lang/eval-fail-bad-antiquote-2.nix | 1 - .../nix/tests/lang/eval-fail-bad-antiquote-3.nix | 1 - third_party/nix/tests/lang/eval-fail-blackhole.nix | 5 - third_party/nix/tests/lang/eval-fail-deepseq.nix | 1 - .../nix/tests/lang/eval-fail-hashfile-missing.nix | 5 - .../nix/tests/lang/eval-fail-missing-arg.nix | 1 - .../nix/tests/lang/eval-fail-path-slash.nix | 6 - third_party/nix/tests/lang/eval-fail-remove.nix | 5 - third_party/nix/tests/lang/eval-fail-scope-5.nix | 10 - third_party/nix/tests/lang/eval-fail-seq.nix | 1 - third_party/nix/tests/lang/eval-fail-substring.nix | 1 - third_party/nix/tests/lang/eval-fail-to-path.nix | 1 - .../nix/tests/lang/eval-fail-undeclared-arg.nix | 1 - third_party/nix/tests/lang/eval-okay-any-all.exp | 1 - third_party/nix/tests/lang/eval-okay-any-all.nix | 11 - .../nix/tests/lang/eval-okay-arithmetic.exp | 1 - .../nix/tests/lang/eval-okay-arithmetic.nix | 59 ---- third_party/nix/tests/lang/eval-okay-attrnames.exp | 1 - third_party/nix/tests/lang/eval-okay-attrnames.nix | 11 - third_party/nix/tests/lang/eval-okay-attrs.exp | 1 - third_party/nix/tests/lang/eval-okay-attrs.nix | 5 - third_party/nix/tests/lang/eval-okay-attrs2.exp | 1 - third_party/nix/tests/lang/eval-okay-attrs2.nix | 10 - third_party/nix/tests/lang/eval-okay-attrs3.exp | 1 - third_party/nix/tests/lang/eval-okay-attrs3.nix | 22 -- third_party/nix/tests/lang/eval-okay-attrs4.exp | 1 - third_party/nix/tests/lang/eval-okay-attrs4.nix | 7 - third_party/nix/tests/lang/eval-okay-attrs5.exp | 1 - third_party/nix/tests/lang/eval-okay-attrs5.nix | 21 -- third_party/nix/tests/lang/eval-okay-autoargs.exp | 1 - .../nix/tests/lang/eval-okay-autoargs.flags | 1 - third_party/nix/tests/lang/eval-okay-autoargs.nix | 15 - .../tests/lang/eval-okay-backslash-newline-1.exp | 1 - .../tests/lang/eval-okay-backslash-newline-1.nix | 2 - .../tests/lang/eval-okay-backslash-newline-2.exp | 1 - .../tests/lang/eval-okay-backslash-newline-2.nix | 2 - .../nix/tests/lang/eval-okay-builtins-add.exp | 1 - .../nix/tests/lang/eval-okay-builtins-add.nix | 8 - third_party/nix/tests/lang/eval-okay-builtins.exp | 1 - third_party/nix/tests/lang/eval-okay-builtins.nix | 12 - .../nix/tests/lang/eval-okay-callable-attrs.exp | 1 - .../nix/tests/lang/eval-okay-callable-attrs.nix | 1 - third_party/nix/tests/lang/eval-okay-catattrs.exp | 1 - third_party/nix/tests/lang/eval-okay-catattrs.nix | 1 - .../nix/tests/lang/eval-okay-closure.exp.xml | 343 --------------------- third_party/nix/tests/lang/eval-okay-closure.nix | 13 - third_party/nix/tests/lang/eval-okay-comments.exp | 1 - third_party/nix/tests/lang/eval-okay-comments.nix | 59 ---- third_party/nix/tests/lang/eval-okay-concat.exp | 1 - third_party/nix/tests/lang/eval-okay-concat.nix | 1 - third_party/nix/tests/lang/eval-okay-concatmap.exp | 1 - third_party/nix/tests/lang/eval-okay-concatmap.nix | 5 - .../nix/tests/lang/eval-okay-concatstringssep.exp | 1 - .../nix/tests/lang/eval-okay-concatstringssep.nix | 8 - .../tests/lang/eval-okay-context-introspection.exp | 1 - .../tests/lang/eval-okay-context-introspection.nix | 24 -- third_party/nix/tests/lang/eval-okay-context.exp | 1 - third_party/nix/tests/lang/eval-okay-context.nix | 6 - third_party/nix/tests/lang/eval-okay-curpos.exp | 1 - third_party/nix/tests/lang/eval-okay-curpos.nix | 5 - third_party/nix/tests/lang/eval-okay-deepseq.exp | 1 - third_party/nix/tests/lang/eval-okay-deepseq.nix | 1 - .../tests/lang/eval-okay-delayed-with-inherit.exp | 1 - .../tests/lang/eval-okay-delayed-with-inherit.nix | 24 -- .../nix/tests/lang/eval-okay-delayed-with.exp | 1 - .../nix/tests/lang/eval-okay-delayed-with.nix | 29 -- .../nix/tests/lang/eval-okay-dynamic-attrs-2.exp | 1 - .../nix/tests/lang/eval-okay-dynamic-attrs-2.nix | 1 - .../tests/lang/eval-okay-dynamic-attrs-bare.exp | 1 - .../tests/lang/eval-okay-dynamic-attrs-bare.nix | 17 - .../nix/tests/lang/eval-okay-dynamic-attrs.exp | 1 - .../nix/tests/lang/eval-okay-dynamic-attrs.nix | 17 - third_party/nix/tests/lang/eval-okay-elem.exp | 1 - third_party/nix/tests/lang/eval-okay-elem.nix | 6 - .../nix/tests/lang/eval-okay-empty-args.exp | 1 - .../nix/tests/lang/eval-okay-empty-args.nix | 1 - .../nix/tests/lang/eval-okay-eq-derivations.exp | 1 - .../nix/tests/lang/eval-okay-eq-derivations.nix | 10 - .../nix/tests/lang/eval-okay-eq.exp.disabled | 1 - third_party/nix/tests/lang/eval-okay-eq.nix | 3 - third_party/nix/tests/lang/eval-okay-filter.exp | 1 - third_party/nix/tests/lang/eval-okay-filter.nix | 5 - third_party/nix/tests/lang/eval-okay-flatten.exp | 1 - third_party/nix/tests/lang/eval-okay-flatten.nix | 8 - third_party/nix/tests/lang/eval-okay-float.exp | 1 - third_party/nix/tests/lang/eval-okay-float.nix | 6 - third_party/nix/tests/lang/eval-okay-fromTOML.exp | 1 - third_party/nix/tests/lang/eval-okay-fromTOML.nix | 208 ------------- third_party/nix/tests/lang/eval-okay-fromjson.exp | 1 - third_party/nix/tests/lang/eval-okay-fromjson.nix | 36 --- .../nix/tests/lang/eval-okay-functionargs.exp.xml | 15 - .../nix/tests/lang/eval-okay-functionargs.nix | 80 ----- .../tests/lang/eval-okay-getattrpos-undefined.exp | 1 - .../tests/lang/eval-okay-getattrpos-undefined.nix | 1 - .../nix/tests/lang/eval-okay-getattrpos.exp | 1 - .../nix/tests/lang/eval-okay-getattrpos.nix | 6 - third_party/nix/tests/lang/eval-okay-getenv.exp | 1 - third_party/nix/tests/lang/eval-okay-getenv.nix | 1 - third_party/nix/tests/lang/eval-okay-hash.exp | 0 third_party/nix/tests/lang/eval-okay-hashfile.exp | 1 - third_party/nix/tests/lang/eval-okay-hashfile.nix | 4 - .../nix/tests/lang/eval-okay-hashstring.exp | 1 - .../nix/tests/lang/eval-okay-hashstring.nix | 4 - third_party/nix/tests/lang/eval-okay-if.exp | 1 - third_party/nix/tests/lang/eval-okay-if.nix | 1 - third_party/nix/tests/lang/eval-okay-import.exp | 1 - third_party/nix/tests/lang/eval-okay-import.nix | 11 - .../nix/tests/lang/eval-okay-ind-string.exp | 1 - .../nix/tests/lang/eval-okay-ind-string.nix | 128 -------- third_party/nix/tests/lang/eval-okay-let.exp | 1 - third_party/nix/tests/lang/eval-okay-let.nix | 5 - third_party/nix/tests/lang/eval-okay-list.exp | 1 - third_party/nix/tests/lang/eval-okay-list.nix | 7 - .../nix/tests/lang/eval-okay-listtoattrs.exp | 1 - .../nix/tests/lang/eval-okay-listtoattrs.nix | 11 - third_party/nix/tests/lang/eval-okay-logic.exp | 1 - third_party/nix/tests/lang/eval-okay-logic.nix | 1 - third_party/nix/tests/lang/eval-okay-map.exp | 1 - third_party/nix/tests/lang/eval-okay-map.nix | 3 - third_party/nix/tests/lang/eval-okay-mapattrs.exp | 1 - third_party/nix/tests/lang/eval-okay-mapattrs.nix | 3 - .../nix/tests/lang/eval-okay-nested-with.exp | 1 - .../nix/tests/lang/eval-okay-nested-with.nix | 3 - third_party/nix/tests/lang/eval-okay-new-let.exp | 1 - third_party/nix/tests/lang/eval-okay-new-let.nix | 14 - .../tests/lang/eval-okay-null-dynamic-attrs.exp | 1 - .../tests/lang/eval-okay-null-dynamic-attrs.nix | 1 - third_party/nix/tests/lang/eval-okay-partition.exp | 1 - third_party/nix/tests/lang/eval-okay-partition.nix | 5 - third_party/nix/tests/lang/eval-okay-path.nix | 7 - .../nix/tests/lang/eval-okay-pathexists.exp | 1 - .../nix/tests/lang/eval-okay-pathexists.nix | 5 - third_party/nix/tests/lang/eval-okay-patterns.exp | 1 - third_party/nix/tests/lang/eval-okay-patterns.nix | 16 - third_party/nix/tests/lang/eval-okay-readDir.exp | 1 - third_party/nix/tests/lang/eval-okay-readDir.nix | 1 - third_party/nix/tests/lang/eval-okay-readfile.exp | 1 - third_party/nix/tests/lang/eval-okay-readfile.nix | 1 - .../nix/tests/lang/eval-okay-redefine-builtin.exp | 1 - .../nix/tests/lang/eval-okay-redefine-builtin.nix | 3 - .../nix/tests/lang/eval-okay-regex-match.exp | 1 - .../nix/tests/lang/eval-okay-regex-match.nix | 29 -- .../nix/tests/lang/eval-okay-regex-split.exp | 1 - .../nix/tests/lang/eval-okay-regex-split.nix | 48 --- third_party/nix/tests/lang/eval-okay-remove.exp | 1 - third_party/nix/tests/lang/eval-okay-remove.nix | 5 - .../nix/tests/lang/eval-okay-replacestrings.exp | 1 - .../nix/tests/lang/eval-okay-replacestrings.nix | 11 - third_party/nix/tests/lang/eval-okay-scope-1.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-1.nix | 6 - third_party/nix/tests/lang/eval-okay-scope-2.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-2.nix | 6 - third_party/nix/tests/lang/eval-okay-scope-3.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-3.nix | 6 - third_party/nix/tests/lang/eval-okay-scope-4.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-4.nix | 10 - third_party/nix/tests/lang/eval-okay-scope-6.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-6.nix | 7 - third_party/nix/tests/lang/eval-okay-scope-7.exp | 1 - third_party/nix/tests/lang/eval-okay-scope-7.nix | 6 - .../nix/tests/lang/eval-okay-search-path.exp | 1 - .../nix/tests/lang/eval-okay-search-path.flags | 1 - .../nix/tests/lang/eval-okay-search-path.nix | 11 - third_party/nix/tests/lang/eval-okay-seq.exp | 1 - third_party/nix/tests/lang/eval-okay-seq.nix | 1 - third_party/nix/tests/lang/eval-okay-sort.exp | 1 - third_party/nix/tests/lang/eval-okay-sort.nix | 8 - .../nix/tests/lang/eval-okay-splitversion.exp | 1 - .../nix/tests/lang/eval-okay-splitversion.nix | 1 - third_party/nix/tests/lang/eval-okay-string.exp | 1 - third_party/nix/tests/lang/eval-okay-string.nix | 12 - .../lang/eval-okay-strings-as-attrs-names.exp | 1 - .../lang/eval-okay-strings-as-attrs-names.nix | 20 -- third_party/nix/tests/lang/eval-okay-substring.exp | 1 - third_party/nix/tests/lang/eval-okay-substring.nix | 21 -- .../tests/lang/eval-okay-tail-call-1.exp-disabled | 1 - .../nix/tests/lang/eval-okay-tail-call-1.nix | 3 - third_party/nix/tests/lang/eval-okay-tojson.exp | 1 - third_party/nix/tests/lang/eval-okay-tojson.nix | 13 - third_party/nix/tests/lang/eval-okay-toxml.exp | 1 - third_party/nix/tests/lang/eval-okay-toxml.nix | 3 - third_party/nix/tests/lang/eval-okay-toxml2.exp | 1 - third_party/nix/tests/lang/eval-okay-toxml2.nix | 1 - third_party/nix/tests/lang/eval-okay-tryeval.exp | 1 - third_party/nix/tests/lang/eval-okay-tryeval.nix | 5 - third_party/nix/tests/lang/eval-okay-types.exp | 1 - third_party/nix/tests/lang/eval-okay-types.nix | 37 --- third_party/nix/tests/lang/eval-okay-versions.exp | 1 - third_party/nix/tests/lang/eval-okay-versions.nix | 40 --- third_party/nix/tests/lang/eval-okay-with.exp | 1 - third_party/nix/tests/lang/eval-okay-with.nix | 19 -- third_party/nix/tests/lang/eval-okay-xml.exp.xml | 52 ---- third_party/nix/tests/lang/eval-okay-xml.nix | 21 -- third_party/nix/tests/lang/imported.nix | 3 - third_party/nix/tests/lang/imported2.nix | 1 - third_party/nix/tests/lang/lib.nix | 61 ---- .../nix/tests/lang/parse-fail-dup-attrs-1.nix | 4 - .../nix/tests/lang/parse-fail-dup-attrs-2.nix | 13 - .../nix/tests/lang/parse-fail-dup-attrs-3.nix | 13 - .../nix/tests/lang/parse-fail-dup-attrs-4.nix | 4 - .../nix/tests/lang/parse-fail-dup-attrs-7.nix | 9 - .../nix/tests/lang/parse-fail-dup-formals.nix | 1 - .../tests/lang/parse-fail-mixed-nested-attrs1.nix | 4 - .../tests/lang/parse-fail-mixed-nested-attrs2.nix | 4 - .../nix/tests/lang/parse-fail-patterns-1.nix | 1 - .../tests/lang/parse-fail-regression-20060610.nix | 11 - third_party/nix/tests/lang/parse-fail-uft8.nix | 1 - .../nix/tests/lang/parse-fail-undef-var-2.nix | 7 - .../nix/tests/lang/parse-fail-undef-var.nix | 1 - third_party/nix/tests/lang/parse-okay-1.nix | 1 - third_party/nix/tests/lang/parse-okay-crlf.nix | 17 - .../nix/tests/lang/parse-okay-dup-attrs-5.nix | 4 - .../nix/tests/lang/parse-okay-dup-attrs-6.nix | 4 - .../tests/lang/parse-okay-mixed-nested-attrs-1.nix | 4 - .../tests/lang/parse-okay-mixed-nested-attrs-2.nix | 4 - .../tests/lang/parse-okay-mixed-nested-attrs-3.nix | 7 - .../tests/lang/parse-okay-regression-20041027.nix | 11 - .../nix/tests/lang/parse-okay-regression-751.nix | 2 - .../nix/tests/lang/parse-okay-subversion.nix | 43 --- third_party/nix/tests/lang/parse-okay-url.nix | 7 - third_party/nix/tests/lang/readDir/bar | 0 .../tests/lang/readDir/foo/git-hates-directories | 0 third_party/nix/tests/meson.build | 5 - 473 files changed, 2151 insertions(+), 2155 deletions(-) create mode 100644 third_party/nix/src/tests/lang/binary-data create mode 100644 third_party/nix/src/tests/lang/data create mode 100644 third_party/nix/src/tests/lang/dir1/a.nix create mode 100644 third_party/nix/src/tests/lang/dir2/a.nix create mode 100644 third_party/nix/src/tests/lang/dir2/b.nix create mode 100644 third_party/nix/src/tests/lang/dir3/a.nix create mode 100644 third_party/nix/src/tests/lang/dir3/b.nix create mode 100644 third_party/nix/src/tests/lang/dir3/c.nix create mode 100644 third_party/nix/src/tests/lang/dir4/a.nix create mode 100644 third_party/nix/src/tests/lang/dir4/c.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-abort.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-antiquoted-path.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-assert.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-bad-antiquote-1.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-bad-antiquote-2.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-bad-antiquote-3.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-blackhole.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-deepseq.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-hashfile-missing.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-missing-arg.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-remove.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-scope-5.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-seq.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-substring.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-to-path.nix create mode 100644 third_party/nix/src/tests/lang/eval-fail-undeclared-arg.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-any-all.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-any-all.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-arithmetic.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-arithmetic.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrnames.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrnames.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs2.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs2.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs3.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs3.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs4.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs4.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs5.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-attrs5.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-autoargs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-autoargs.flags create mode 100644 third_party/nix/src/tests/lang/eval-okay-autoargs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-builtins-add.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-builtins-add.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-builtins.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-builtins.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-callable-attrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-callable-attrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-catattrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-catattrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-closure.exp.xml create mode 100644 third_party/nix/src/tests/lang/eval-okay-closure.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-comments.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-comments.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-concat.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-concat.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-concatmap.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-concatmap.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-concatstringssep.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-concatstringssep.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-context-introspection.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-context-introspection.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-context.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-context.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-curpos.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-curpos.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-deepseq.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-deepseq.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-delayed-with.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-delayed-with.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-elem.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-elem.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-empty-args.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-empty-args.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-eq-derivations.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-eq-derivations.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-eq.exp.disabled create mode 100644 third_party/nix/src/tests/lang/eval-okay-eq.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-filter.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-filter.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-flatten.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-flatten.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-float.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-float.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-fromTOML.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-fromTOML.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-fromjson.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-fromjson.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-functionargs.exp.xml create mode 100644 third_party/nix/src/tests/lang/eval-okay-functionargs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-getattrpos.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-getattrpos.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-getenv.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-getenv.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-hash.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-hashfile.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-hashfile.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-hashstring.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-hashstring.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-if.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-if.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-import.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-import.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-ind-string.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-ind-string.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-let.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-let.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-list.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-list.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-listtoattrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-listtoattrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-logic.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-logic.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-map.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-map.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-mapattrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-mapattrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-nested-with.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-nested-with.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-new-let.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-new-let.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-partition.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-partition.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-path.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-pathexists.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-pathexists.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-patterns.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-patterns.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-readDir.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-readDir.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-readfile.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-readfile.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-redefine-builtin.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-redefine-builtin.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-regex-match.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-regex-match.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-regex-split.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-regex-split.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-remove.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-remove.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-replacestrings.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-replacestrings.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-1.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-1.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-2.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-2.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-3.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-3.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-4.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-4.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-6.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-6.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-7.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-scope-7.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-search-path.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-search-path.flags create mode 100644 third_party/nix/src/tests/lang/eval-okay-search-path.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-seq.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-seq.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-sort.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-sort.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-splitversion.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-splitversion.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-string.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-string.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-substring.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-substring.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-tail-call-1.exp-disabled create mode 100644 third_party/nix/src/tests/lang/eval-okay-tail-call-1.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-tojson.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-tojson.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-toxml.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-toxml.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-toxml2.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-toxml2.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-tryeval.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-tryeval.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-types.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-types.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-versions.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-versions.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-with.exp create mode 100644 third_party/nix/src/tests/lang/eval-okay-with.nix create mode 100644 third_party/nix/src/tests/lang/eval-okay-xml.exp.xml create mode 100644 third_party/nix/src/tests/lang/eval-okay-xml.nix create mode 100644 third_party/nix/src/tests/lang/imported.nix create mode 100644 third_party/nix/src/tests/lang/imported2.nix create mode 100644 third_party/nix/src/tests/lang/lib.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-attrs-1.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-attrs-2.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-attrs-3.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-attrs-4.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-attrs-7.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-dup-formals.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs1.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs2.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-path-slash.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-patterns-1.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-regression-20060610.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-uft8.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-undef-var-2.nix create mode 100644 third_party/nix/src/tests/lang/parse-fail-undef-var.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-1.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-crlf.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-dup-attrs-5.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-dup-attrs-6.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-1.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-2.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-3.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-regression-20041027.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-regression-751.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-subversion.nix create mode 100644 third_party/nix/src/tests/lang/parse-okay-url.nix create mode 100644 third_party/nix/src/tests/lang/readDir/bar create mode 100644 third_party/nix/src/tests/lang/readDir/foo/git-hates-directories delete mode 100644 third_party/nix/tests/lang/binary-data delete mode 100644 third_party/nix/tests/lang/data delete mode 100644 third_party/nix/tests/lang/dir1/a.nix delete mode 100644 third_party/nix/tests/lang/dir2/a.nix delete mode 100644 third_party/nix/tests/lang/dir2/b.nix delete mode 100644 third_party/nix/tests/lang/dir3/a.nix delete mode 100644 third_party/nix/tests/lang/dir3/b.nix delete mode 100644 third_party/nix/tests/lang/dir3/c.nix delete mode 100644 third_party/nix/tests/lang/dir4/a.nix delete mode 100644 third_party/nix/tests/lang/dir4/c.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-abort.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-antiquoted-path.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-assert.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-bad-antiquote-1.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-bad-antiquote-2.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-bad-antiquote-3.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-blackhole.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-deepseq.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-hashfile-missing.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-missing-arg.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-path-slash.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-remove.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-scope-5.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-seq.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-substring.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-to-path.nix delete mode 100644 third_party/nix/tests/lang/eval-fail-undeclared-arg.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-any-all.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-any-all.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-arithmetic.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-arithmetic.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrnames.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrnames.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs2.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs2.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs3.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs3.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs4.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs4.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs5.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-attrs5.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-autoargs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-autoargs.flags delete mode 100644 third_party/nix/tests/lang/eval-okay-autoargs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-backslash-newline-1.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-backslash-newline-1.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-backslash-newline-2.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-backslash-newline-2.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-builtins-add.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-builtins-add.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-builtins.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-builtins.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-callable-attrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-callable-attrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-catattrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-catattrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-closure.exp.xml delete mode 100644 third_party/nix/tests/lang/eval-okay-closure.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-comments.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-comments.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-concat.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-concat.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-concatmap.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-concatmap.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-concatstringssep.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-concatstringssep.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-context-introspection.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-context-introspection.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-context.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-context.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-curpos.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-curpos.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-deepseq.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-deepseq.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-delayed-with-inherit.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-delayed-with-inherit.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-delayed-with.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-delayed-with.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-dynamic-attrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-elem.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-elem.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-empty-args.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-empty-args.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-eq-derivations.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-eq-derivations.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-eq.exp.disabled delete mode 100644 third_party/nix/tests/lang/eval-okay-eq.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-filter.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-filter.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-flatten.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-flatten.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-float.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-float.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-fromTOML.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-fromTOML.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-fromjson.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-fromjson.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-functionargs.exp.xml delete mode 100644 third_party/nix/tests/lang/eval-okay-functionargs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-getattrpos-undefined.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-getattrpos-undefined.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-getattrpos.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-getattrpos.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-getenv.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-getenv.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-hash.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-hashfile.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-hashfile.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-hashstring.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-hashstring.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-if.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-if.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-import.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-import.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-ind-string.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-ind-string.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-let.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-let.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-list.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-list.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-listtoattrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-listtoattrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-logic.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-logic.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-map.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-map.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-mapattrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-mapattrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-nested-with.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-nested-with.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-new-let.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-new-let.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-partition.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-partition.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-path.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-pathexists.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-pathexists.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-patterns.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-patterns.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-readDir.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-readDir.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-readfile.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-readfile.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-redefine-builtin.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-redefine-builtin.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-regex-match.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-regex-match.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-regex-split.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-regex-split.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-remove.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-remove.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-replacestrings.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-replacestrings.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-1.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-1.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-2.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-2.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-3.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-3.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-4.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-4.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-6.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-6.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-7.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-scope-7.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-search-path.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-search-path.flags delete mode 100644 third_party/nix/tests/lang/eval-okay-search-path.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-seq.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-seq.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-sort.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-sort.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-splitversion.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-splitversion.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-string.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-string.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-substring.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-substring.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-tail-call-1.exp-disabled delete mode 100644 third_party/nix/tests/lang/eval-okay-tail-call-1.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-tojson.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-tojson.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-toxml.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-toxml.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-toxml2.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-toxml2.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-tryeval.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-tryeval.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-types.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-types.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-versions.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-versions.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-with.exp delete mode 100644 third_party/nix/tests/lang/eval-okay-with.nix delete mode 100644 third_party/nix/tests/lang/eval-okay-xml.exp.xml delete mode 100644 third_party/nix/tests/lang/eval-okay-xml.nix delete mode 100644 third_party/nix/tests/lang/imported.nix delete mode 100644 third_party/nix/tests/lang/imported2.nix delete mode 100644 third_party/nix/tests/lang/lib.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-attrs-1.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-attrs-2.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-attrs-3.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-attrs-4.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-attrs-7.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-dup-formals.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-mixed-nested-attrs1.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-mixed-nested-attrs2.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-patterns-1.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-regression-20060610.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-uft8.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-undef-var-2.nix delete mode 100644 third_party/nix/tests/lang/parse-fail-undef-var.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-1.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-crlf.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-dup-attrs-5.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-dup-attrs-6.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-1.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-2.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-3.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-regression-20041027.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-regression-751.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-subversion.nix delete mode 100644 third_party/nix/tests/lang/parse-okay-url.nix delete mode 100644 third_party/nix/tests/lang/readDir/bar delete mode 100644 third_party/nix/tests/lang/readDir/foo/git-hates-directories delete mode 100644 third_party/nix/tests/meson.build diff --git a/third_party/nix/src/tests/lang/binary-data b/third_party/nix/src/tests/lang/binary-data new file mode 100644 index 0000000000..06d7405020 Binary files /dev/null and b/third_party/nix/src/tests/lang/binary-data differ diff --git a/third_party/nix/src/tests/lang/data b/third_party/nix/src/tests/lang/data new file mode 100644 index 0000000000..257cc5642c --- /dev/null +++ b/third_party/nix/src/tests/lang/data @@ -0,0 +1 @@ +foo diff --git a/third_party/nix/src/tests/lang/dir1/a.nix b/third_party/nix/src/tests/lang/dir1/a.nix new file mode 100644 index 0000000000..231f150c57 --- /dev/null +++ b/third_party/nix/src/tests/lang/dir1/a.nix @@ -0,0 +1 @@ +"a" diff --git a/third_party/nix/src/tests/lang/dir2/a.nix b/third_party/nix/src/tests/lang/dir2/a.nix new file mode 100644 index 0000000000..170df520ab --- /dev/null +++ b/third_party/nix/src/tests/lang/dir2/a.nix @@ -0,0 +1 @@ +"X" diff --git a/third_party/nix/src/tests/lang/dir2/b.nix b/third_party/nix/src/tests/lang/dir2/b.nix new file mode 100644 index 0000000000..19010cc35c --- /dev/null +++ b/third_party/nix/src/tests/lang/dir2/b.nix @@ -0,0 +1 @@ +"b" diff --git a/third_party/nix/src/tests/lang/dir3/a.nix b/third_party/nix/src/tests/lang/dir3/a.nix new file mode 100644 index 0000000000..170df520ab --- /dev/null +++ b/third_party/nix/src/tests/lang/dir3/a.nix @@ -0,0 +1 @@ +"X" diff --git a/third_party/nix/src/tests/lang/dir3/b.nix b/third_party/nix/src/tests/lang/dir3/b.nix new file mode 100644 index 0000000000..170df520ab --- /dev/null +++ b/third_party/nix/src/tests/lang/dir3/b.nix @@ -0,0 +1 @@ +"X" diff --git a/third_party/nix/src/tests/lang/dir3/c.nix b/third_party/nix/src/tests/lang/dir3/c.nix new file mode 100644 index 0000000000..cdf158597e --- /dev/null +++ b/third_party/nix/src/tests/lang/dir3/c.nix @@ -0,0 +1 @@ +"c" diff --git a/third_party/nix/src/tests/lang/dir4/a.nix b/third_party/nix/src/tests/lang/dir4/a.nix new file mode 100644 index 0000000000..170df520ab --- /dev/null +++ b/third_party/nix/src/tests/lang/dir4/a.nix @@ -0,0 +1 @@ +"X" diff --git a/third_party/nix/src/tests/lang/dir4/c.nix b/third_party/nix/src/tests/lang/dir4/c.nix new file mode 100644 index 0000000000..170df520ab --- /dev/null +++ b/third_party/nix/src/tests/lang/dir4/c.nix @@ -0,0 +1 @@ +"X" diff --git a/third_party/nix/src/tests/lang/eval-fail-abort.nix b/third_party/nix/src/tests/lang/eval-fail-abort.nix new file mode 100644 index 0000000000..75c51bceb5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-abort.nix @@ -0,0 +1 @@ +if true then abort "this should fail" else 1 diff --git a/third_party/nix/src/tests/lang/eval-fail-antiquoted-path.nix b/third_party/nix/src/tests/lang/eval-fail-antiquoted-path.nix new file mode 100644 index 0000000000..f2f08107b5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-antiquoted-path.nix @@ -0,0 +1,4 @@ +# This must fail to evaluate, since ./fnord doesn't exist. If it did +# exist, it would produce "/nix/store/-fnord/xyzzy" (with an +# appropriate context). +"${./fnord}/xyzzy" diff --git a/third_party/nix/src/tests/lang/eval-fail-assert.nix b/third_party/nix/src/tests/lang/eval-fail-assert.nix new file mode 100644 index 0000000000..3b7a1e8bf0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-assert.nix @@ -0,0 +1,5 @@ +let { + x = arg: assert arg == "y"; 123; + + body = x "x"; +} \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-1.nix b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-1.nix new file mode 100644 index 0000000000..ffe9c983c2 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-1.nix @@ -0,0 +1 @@ +"${x: x}" diff --git a/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-2.nix b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-2.nix new file mode 100644 index 0000000000..3745235ce9 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-2.nix @@ -0,0 +1 @@ +"${./fnord}" diff --git a/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-3.nix b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-3.nix new file mode 100644 index 0000000000..65b9d4f505 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-bad-antiquote-3.nix @@ -0,0 +1 @@ +''${x: x}'' diff --git a/third_party/nix/src/tests/lang/eval-fail-blackhole.nix b/third_party/nix/src/tests/lang/eval-fail-blackhole.nix new file mode 100644 index 0000000000..81133b511c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-blackhole.nix @@ -0,0 +1,5 @@ +let { + body = x; + x = y; + y = x; +} diff --git a/third_party/nix/src/tests/lang/eval-fail-deepseq.nix b/third_party/nix/src/tests/lang/eval-fail-deepseq.nix new file mode 100644 index 0000000000..9baa49b063 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-deepseq.nix @@ -0,0 +1 @@ +builtins.deepSeq { x = abort "foo"; } 456 diff --git a/third_party/nix/src/tests/lang/eval-fail-hashfile-missing.nix b/third_party/nix/src/tests/lang/eval-fail-hashfile-missing.nix new file mode 100644 index 0000000000..ce098b8238 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-hashfile-missing.nix @@ -0,0 +1,5 @@ +let + paths = [ ./this-file-is-definitely-not-there-7392097 "/and/neither/is/this/37293620" ]; +in + toString (builtins.concatLists (map (hash: map (builtins.hashFile hash) paths) ["md5" "sha1" "sha256" "sha512"])) + diff --git a/third_party/nix/src/tests/lang/eval-fail-missing-arg.nix b/third_party/nix/src/tests/lang/eval-fail-missing-arg.nix new file mode 100644 index 0000000000..c4be9797c5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-missing-arg.nix @@ -0,0 +1 @@ +({x, y, z}: x + y + z) {x = "foo"; z = "bar";} diff --git a/third_party/nix/src/tests/lang/eval-fail-remove.nix b/third_party/nix/src/tests/lang/eval-fail-remove.nix new file mode 100644 index 0000000000..539e0eb0a6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-remove.nix @@ -0,0 +1,5 @@ +let { + attrs = {x = 123; y = 456;}; + + body = (removeAttrs attrs ["x"]).x; +} \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-fail-scope-5.nix b/third_party/nix/src/tests/lang/eval-fail-scope-5.nix new file mode 100644 index 0000000000..f89a65a99b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-scope-5.nix @@ -0,0 +1,10 @@ +let { + + x = "a"; + y = "b"; + + f = {x ? y, y ? x}: x + y; + + body = f {}; + +} diff --git a/third_party/nix/src/tests/lang/eval-fail-seq.nix b/third_party/nix/src/tests/lang/eval-fail-seq.nix new file mode 100644 index 0000000000..cddbbfd326 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-seq.nix @@ -0,0 +1 @@ +builtins.seq (abort "foo") 2 diff --git a/third_party/nix/src/tests/lang/eval-fail-substring.nix b/third_party/nix/src/tests/lang/eval-fail-substring.nix new file mode 100644 index 0000000000..f37c2bc0a1 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-substring.nix @@ -0,0 +1 @@ +builtins.substring (builtins.sub 0 1) 1 "x" diff --git a/third_party/nix/src/tests/lang/eval-fail-to-path.nix b/third_party/nix/src/tests/lang/eval-fail-to-path.nix new file mode 100644 index 0000000000..5e322bc313 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-to-path.nix @@ -0,0 +1 @@ +builtins.toPath "foo/bar" diff --git a/third_party/nix/src/tests/lang/eval-fail-undeclared-arg.nix b/third_party/nix/src/tests/lang/eval-fail-undeclared-arg.nix new file mode 100644 index 0000000000..cafdf16362 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-fail-undeclared-arg.nix @@ -0,0 +1 @@ +({x, z}: x + z) {x = "foo"; y = "bla"; z = "bar";} diff --git a/third_party/nix/src/tests/lang/eval-okay-any-all.exp b/third_party/nix/src/tests/lang/eval-okay-any-all.exp new file mode 100644 index 0000000000..eb273f45b2 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-any-all.exp @@ -0,0 +1 @@ +[ false false true true true true false true ] diff --git a/third_party/nix/src/tests/lang/eval-okay-any-all.nix b/third_party/nix/src/tests/lang/eval-okay-any-all.nix new file mode 100644 index 0000000000..a3f26ea2aa --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-any-all.nix @@ -0,0 +1,11 @@ +with builtins; + +[ (any (x: x == 1) []) + (any (x: x == 1) [2 3 4]) + (any (x: x == 1) [1 2 3 4]) + (any (x: x == 1) [4 3 2 1]) + (all (x: x == 1) []) + (all (x: x == 1) [1]) + (all (x: x == 1) [1 2 3]) + (all (x: x == 1) [1 1 1]) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-arithmetic.exp b/third_party/nix/src/tests/lang/eval-okay-arithmetic.exp new file mode 100644 index 0000000000..5c54d10b7b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-arithmetic.exp @@ -0,0 +1 @@ +2216 diff --git a/third_party/nix/src/tests/lang/eval-okay-arithmetic.nix b/third_party/nix/src/tests/lang/eval-okay-arithmetic.nix new file mode 100644 index 0000000000..7e9e6a0b66 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-arithmetic.nix @@ -0,0 +1,59 @@ +with import ./lib.nix; + +let { + + /* Supposedly tail recursive version: + + range_ = accum: first: last: + if first == last then ([first] ++ accum) + else range_ ([first] ++ accum) (builtins.add first 1) last; + + range = range_ []; + */ + + x = 12; + + err = abort "urgh"; + + body = sum + [ (sum (range 1 50)) + (123 + 456) + (0 + -10 + -(-11) + -x) + (10 - 7 - -2) + (10 - (6 - -1)) + (10 - 1 + 2) + (3 * 4 * 5) + (56088 / 123 / 2) + (3 + 4 * const 5 0 - 6 / id 2) + + (builtins.bitAnd 12 10) # 0b1100 & 0b1010 = 8 + (builtins.bitOr 12 10) # 0b1100 | 0b1010 = 14 + (builtins.bitXor 12 10) # 0b1100 ^ 0b1010 = 6 + + (if 3 < 7 then 1 else err) + (if 7 < 3 then err else 1) + (if 3 < 3 then err else 1) + + (if 3 <= 7 then 1 else err) + (if 7 <= 3 then err else 1) + (if 3 <= 3 then 1 else err) + + (if 3 > 7 then err else 1) + (if 7 > 3 then 1 else err) + (if 3 > 3 then err else 1) + + (if 3 >= 7 then err else 1) + (if 7 >= 3 then 1 else err) + (if 3 >= 3 then 1 else err) + + (if 2 > 1 == 1 < 2 then 1 else err) + (if 1 + 2 * 3 >= 7 then 1 else err) + (if 1 + 2 * 3 < 7 then err else 1) + + # Not integer, but so what. + (if "aa" < "ab" then 1 else err) + (if "aa" < "aa" then err else 1) + (if "foo" < "foobar" then 1 else err) + ]; + +} diff --git a/third_party/nix/src/tests/lang/eval-okay-attrnames.exp b/third_party/nix/src/tests/lang/eval-okay-attrnames.exp new file mode 100644 index 0000000000..b4aa387e07 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrnames.exp @@ -0,0 +1 @@ +"newxfoonewxy" diff --git a/third_party/nix/src/tests/lang/eval-okay-attrnames.nix b/third_party/nix/src/tests/lang/eval-okay-attrnames.nix new file mode 100644 index 0000000000..e5b26e9f2e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrnames.nix @@ -0,0 +1,11 @@ +with import ./lib.nix; + +let + + attrs = {y = "y"; x = "x"; foo = "foo";} // rec {x = "newx"; bar = x;}; + + names = builtins.attrNames attrs; + + values = map (name: builtins.getAttr name attrs) names; + +in assert values == builtins.attrValues attrs; concat values diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs.exp b/third_party/nix/src/tests/lang/eval-okay-attrs.exp new file mode 100644 index 0000000000..45b0f829eb --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs.exp @@ -0,0 +1 @@ +987 diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs.nix b/third_party/nix/src/tests/lang/eval-okay-attrs.nix new file mode 100644 index 0000000000..810b31a5da --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs.nix @@ -0,0 +1,5 @@ +let { + as = { x = 123; y = 456; } // { z = 789; } // { z = 987; }; + + body = if as ? a then as.a else assert as ? z; as.z; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs2.exp b/third_party/nix/src/tests/lang/eval-okay-attrs2.exp new file mode 100644 index 0000000000..45b0f829eb --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs2.exp @@ -0,0 +1 @@ +987 diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs2.nix b/third_party/nix/src/tests/lang/eval-okay-attrs2.nix new file mode 100644 index 0000000000..9e06b83ac1 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs2.nix @@ -0,0 +1,10 @@ +let { + as = { x = 123; y = 456; } // { z = 789; } // { z = 987; }; + + A = "a"; + Z = "z"; + + body = if builtins.hasAttr A as + then builtins.getAttr A as + else assert builtins.hasAttr Z as; builtins.getAttr Z as; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs3.exp b/third_party/nix/src/tests/lang/eval-okay-attrs3.exp new file mode 100644 index 0000000000..19de4fdf79 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs3.exp @@ -0,0 +1 @@ +"foo 22 80 itchyxac" diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs3.nix b/third_party/nix/src/tests/lang/eval-okay-attrs3.nix new file mode 100644 index 0000000000..f29de11fe6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs3.nix @@ -0,0 +1,22 @@ +let + + config = + { + services.sshd.enable = true; + services.sshd.port = 22; + services.httpd.port = 80; + hostName = "itchy"; + a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z = "x"; + foo = { + a = "a"; + b.c = "c"; + }; + }; + +in + if config.services.sshd.enable + then "foo ${toString config.services.sshd.port} ${toString config.services.httpd.port} ${config.hostName}" + + "${config.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z}" + + "${config.foo.a}" + + "${config.foo.b.c}" + else "bar" diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs4.exp b/third_party/nix/src/tests/lang/eval-okay-attrs4.exp new file mode 100644 index 0000000000..1851731442 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs4.exp @@ -0,0 +1 @@ +[ true false true false false true false false ] diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs4.nix b/third_party/nix/src/tests/lang/eval-okay-attrs4.nix new file mode 100644 index 0000000000..43ec81210f --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs4.nix @@ -0,0 +1,7 @@ +let + + as = { x.y.z = 123; a.b.c = 456; }; + + bs = null; + +in [ (as ? x) (as ? y) (as ? x.y.z) (as ? x.y.z.a) (as ? x.y.a) (as ? a.b.c) (bs ? x) (bs ? x.y.z) ] diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs5.exp b/third_party/nix/src/tests/lang/eval-okay-attrs5.exp new file mode 100644 index 0000000000..ce0430d780 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs5.exp @@ -0,0 +1 @@ +[ 123 "foo" 456 456 "foo" "xyzzy" "xyzzy" true ] diff --git a/third_party/nix/src/tests/lang/eval-okay-attrs5.nix b/third_party/nix/src/tests/lang/eval-okay-attrs5.nix new file mode 100644 index 0000000000..a4584cd3b3 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-attrs5.nix @@ -0,0 +1,21 @@ +with import ./lib.nix; + +let + + as = { x.y.z = 123; a.b.c = 456; }; + + bs = { f-o-o.bar = "foo"; }; + + or = x: y: x || y; + +in + [ as.x.y.z + as.foo or "foo" + as.x.y.bla or as.a.b.c + as.a.b.c or as.x.y.z + as.x.y.bla or bs.f-o-o.bar or "xyzzy" + as.x.y.bla or bs.bar.foo or "xyzzy" + (123).bla or null.foo or "xyzzy" + # Backwards compatibility test. + (fold or [] [true false false]) + ] diff --git a/third_party/nix/src/tests/lang/eval-okay-autoargs.exp b/third_party/nix/src/tests/lang/eval-okay-autoargs.exp new file mode 100644 index 0000000000..7a8391786a --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-autoargs.exp @@ -0,0 +1 @@ +"xyzzy!xyzzy!foobar" diff --git a/third_party/nix/src/tests/lang/eval-okay-autoargs.flags b/third_party/nix/src/tests/lang/eval-okay-autoargs.flags new file mode 100644 index 0000000000..ae37622544 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-autoargs.flags @@ -0,0 +1 @@ +--arg lib import(lang/lib.nix) --argstr xyzzy xyzzy! -A result diff --git a/third_party/nix/src/tests/lang/eval-okay-autoargs.nix b/third_party/nix/src/tests/lang/eval-okay-autoargs.nix new file mode 100644 index 0000000000..815f51b1d6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-autoargs.nix @@ -0,0 +1,15 @@ +let + + foobar = "foobar"; + +in + +{ xyzzy2 ? xyzzy # mutually recursive args +, xyzzy ? "blaat" # will be overridden by --argstr +, fb ? foobar +, lib # will be set by --arg +}: + +{ + result = lib.concat [xyzzy xyzzy2 fb]; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.exp b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.exp new file mode 100644 index 0000000000..3e754364cc --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.exp @@ -0,0 +1 @@ +"a\nb" diff --git a/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.nix b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.nix new file mode 100644 index 0000000000..7fef3dddd4 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-1.nix @@ -0,0 +1,2 @@ +"a\ +b" diff --git a/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.exp b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.exp new file mode 100644 index 0000000000..3e754364cc --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.exp @@ -0,0 +1 @@ +"a\nb" diff --git a/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.nix b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.nix new file mode 100644 index 0000000000..35ddf495c6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-backslash-newline-2.nix @@ -0,0 +1,2 @@ +''a''\ +b'' diff --git a/third_party/nix/src/tests/lang/eval-okay-builtins-add.exp b/third_party/nix/src/tests/lang/eval-okay-builtins-add.exp new file mode 100644 index 0000000000..0350b518a7 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-builtins-add.exp @@ -0,0 +1 @@ +[ 5 4 "int" "tt" "float" 4 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-builtins-add.nix b/third_party/nix/src/tests/lang/eval-okay-builtins-add.nix new file mode 100644 index 0000000000..c841816222 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-builtins-add.nix @@ -0,0 +1,8 @@ +[ +(builtins.add 2 3) +(builtins.add 2 2) +(builtins.typeOf (builtins.add 2 2)) +("t" + "t") +(builtins.typeOf (builtins.add 2.0 2)) +(builtins.add 2.0 2) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-builtins.exp b/third_party/nix/src/tests/lang/eval-okay-builtins.exp new file mode 100644 index 0000000000..0661686d61 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-builtins.exp @@ -0,0 +1 @@ +/foo diff --git a/third_party/nix/src/tests/lang/eval-okay-builtins.nix b/third_party/nix/src/tests/lang/eval-okay-builtins.nix new file mode 100644 index 0000000000..e9d65e88a8 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-builtins.nix @@ -0,0 +1,12 @@ +assert builtins ? currentSystem; +assert !builtins ? __currentSystem; + +let { + + x = if builtins ? dirOf then builtins.dirOf /foo/bar else ""; + + y = if builtins ? fnord then builtins.fnord "foo" else ""; + + body = x + y; + +} diff --git a/third_party/nix/src/tests/lang/eval-okay-callable-attrs.exp b/third_party/nix/src/tests/lang/eval-okay-callable-attrs.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-callable-attrs.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-callable-attrs.nix b/third_party/nix/src/tests/lang/eval-okay-callable-attrs.nix new file mode 100644 index 0000000000..310a030df0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-callable-attrs.nix @@ -0,0 +1 @@ +({ __functor = self: x: self.foo && x; foo = false; } // { foo = true; }) true diff --git a/third_party/nix/src/tests/lang/eval-okay-catattrs.exp b/third_party/nix/src/tests/lang/eval-okay-catattrs.exp new file mode 100644 index 0000000000..b4a1e66d6b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-catattrs.exp @@ -0,0 +1 @@ +[ 1 2 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-catattrs.nix b/third_party/nix/src/tests/lang/eval-okay-catattrs.nix new file mode 100644 index 0000000000..2c3dc10da5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-catattrs.nix @@ -0,0 +1 @@ +builtins.catAttrs "a" [ { a = 1; } { b = 0; } { a = 2; } ] diff --git a/third_party/nix/src/tests/lang/eval-okay-closure.exp.xml b/third_party/nix/src/tests/lang/eval-okay-closure.exp.xml new file mode 100644 index 0000000000..dffc03a998 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-closure.exp.xml @@ -0,0 +1,343 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/third_party/nix/src/tests/lang/eval-okay-closure.nix b/third_party/nix/src/tests/lang/eval-okay-closure.nix new file mode 100644 index 0000000000..cccd4dc357 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-closure.nix @@ -0,0 +1,13 @@ +let + + closure = builtins.genericClosure { + startSet = [{key = 80;}]; + operator = {key, foo ? false}: + if builtins.lessThan key 0 + then [] + else [{key = builtins.sub key 9;} {key = builtins.sub key 13; foo = true;}]; + }; + + sort = (import ./lib.nix).sortBy (a: b: builtins.lessThan a.key b.key); + +in sort closure diff --git a/third_party/nix/src/tests/lang/eval-okay-comments.exp b/third_party/nix/src/tests/lang/eval-okay-comments.exp new file mode 100644 index 0000000000..7182dc2f9b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-comments.exp @@ -0,0 +1 @@ +"abcdefghijklmnopqrstuvwxyz" diff --git a/third_party/nix/src/tests/lang/eval-okay-comments.nix b/third_party/nix/src/tests/lang/eval-okay-comments.nix new file mode 100644 index 0000000000..cb2cce2180 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-comments.nix @@ -0,0 +1,59 @@ +# A simple comment +"a"+ # And another +## A double comment +"b"+ ## And another +# Nested # comments # +"c"+ # and # some # other # +# An empty line, following here: + +"d"+ # and a comment not starting the line ! + +"e"+ +/* multiline comments */ +"f" + +/* multiline + comments, + on + multiple + lines +*/ +"g" + +# Small, tricky comments +/**/ "h"+ /*/*/ "i"+ /***/ "j"+ /* /*/ "k"+ /*/* /*/ "l"+ +# Comments with an even number of ending '*' used to fail: +"m"+ +/* */ /* **/ /* ***/ /* ****/ "n"+ +/* */ /** */ /*** */ /**** */ "o"+ +/** **/ /*** ***/ /**** ****/ "p"+ +/* * ** *** **** ***** */ "q"+ +# Random comments +/* ***** ////// * / * / /* */ "r"+ +# Mixed comments +/* # */ +"s"+ +# /* # +"t"+ +# /* # */ +"u"+ +# /*********/ +"v"+ +## */* +"w"+ +/* + * Multiline, decorated comments + * # This ain't a nest'd comm'nt + */ +"x"+ +''${/** with **/"y" + # real + /* comments + inside ! # */ + + # (and empty lines) + +}''+ /* And a multiline comment, + on the same line, + after some spaces +*/ # followed by a one-line comment +"z" +/* EOF */ diff --git a/third_party/nix/src/tests/lang/eval-okay-concat.exp b/third_party/nix/src/tests/lang/eval-okay-concat.exp new file mode 100644 index 0000000000..bb4bbd5774 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concat.exp @@ -0,0 +1 @@ +[ 1 2 3 4 5 6 7 8 9 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-concat.nix b/third_party/nix/src/tests/lang/eval-okay-concat.nix new file mode 100644 index 0000000000..d158a9bf05 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concat.nix @@ -0,0 +1 @@ +[1 2 3] ++ [4 5 6] ++ [7 8 9] diff --git a/third_party/nix/src/tests/lang/eval-okay-concatmap.exp b/third_party/nix/src/tests/lang/eval-okay-concatmap.exp new file mode 100644 index 0000000000..3b8be7739d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concatmap.exp @@ -0,0 +1 @@ +[ [ 1 3 5 7 9 ] [ "a" "z" "b" "z" ] ] diff --git a/third_party/nix/src/tests/lang/eval-okay-concatmap.nix b/third_party/nix/src/tests/lang/eval-okay-concatmap.nix new file mode 100644 index 0000000000..97da5d37a4 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concatmap.nix @@ -0,0 +1,5 @@ +with import ./lib.nix; + +[ (builtins.concatMap (x: if x / 2 * 2 == x then [] else [ x ]) (range 0 10)) + (builtins.concatMap (x: [x] ++ ["z"]) ["a" "b"]) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-concatstringssep.exp b/third_party/nix/src/tests/lang/eval-okay-concatstringssep.exp new file mode 100644 index 0000000000..93987647ff --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concatstringssep.exp @@ -0,0 +1 @@ +[ "" "foobarxyzzy" "foo, bar, xyzzy" "foo" "" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-concatstringssep.nix b/third_party/nix/src/tests/lang/eval-okay-concatstringssep.nix new file mode 100644 index 0000000000..adc4c41bd5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-concatstringssep.nix @@ -0,0 +1,8 @@ +with builtins; + +[ (concatStringsSep "" []) + (concatStringsSep "" ["foo" "bar" "xyzzy"]) + (concatStringsSep ", " ["foo" "bar" "xyzzy"]) + (concatStringsSep ", " ["foo"]) + (concatStringsSep ", " []) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-context-introspection.exp b/third_party/nix/src/tests/lang/eval-okay-context-introspection.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-context-introspection.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-context-introspection.nix b/third_party/nix/src/tests/lang/eval-okay-context-introspection.nix new file mode 100644 index 0000000000..43178bd2ee --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-context-introspection.nix @@ -0,0 +1,24 @@ +let + drv = derivation { + name = "fail"; + builder = "/bin/false"; + system = "x86_64-linux"; + outputs = [ "out" "foo" ]; + }; + + path = "${./eval-okay-context-introspection.nix}"; + + desired-context = { + "${builtins.unsafeDiscardStringContext path}" = { + path = true; + }; + "${builtins.unsafeDiscardStringContext drv.drvPath}" = { + outputs = [ "foo" "out" ]; + allOutputs = true; + }; + }; + + legit-context = builtins.getContext "${path}${drv.outPath}${drv.foo.outPath}${drv.drvPath}"; + + constructed-context = builtins.getContext (builtins.appendContext "" desired-context); +in legit-context == constructed-context diff --git a/third_party/nix/src/tests/lang/eval-okay-context.exp b/third_party/nix/src/tests/lang/eval-okay-context.exp new file mode 100644 index 0000000000..2f535bdbc4 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-context.exp @@ -0,0 +1 @@ +"foo eval-okay-context.nix bar" diff --git a/third_party/nix/src/tests/lang/eval-okay-context.nix b/third_party/nix/src/tests/lang/eval-okay-context.nix new file mode 100644 index 0000000000..7b9531cfe9 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-context.nix @@ -0,0 +1,6 @@ +let s = "foo ${builtins.substring 33 100 (baseNameOf "${./eval-okay-context.nix}")} bar"; +in + if s != "foo eval-okay-context.nix bar" + then abort "context not discarded" + else builtins.unsafeDiscardStringContext s + diff --git a/third_party/nix/src/tests/lang/eval-okay-curpos.exp b/third_party/nix/src/tests/lang/eval-okay-curpos.exp new file mode 100644 index 0000000000..65fd65b4d0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-curpos.exp @@ -0,0 +1 @@ +[ 3 7 4 9 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-curpos.nix b/third_party/nix/src/tests/lang/eval-okay-curpos.nix new file mode 100644 index 0000000000..b79553df0b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-curpos.nix @@ -0,0 +1,5 @@ +# Bla +let + x = __curPos; + y = __curPos; +in [ x.line x.column y.line y.column ] diff --git a/third_party/nix/src/tests/lang/eval-okay-deepseq.exp b/third_party/nix/src/tests/lang/eval-okay-deepseq.exp new file mode 100644 index 0000000000..8d38505c16 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-deepseq.exp @@ -0,0 +1 @@ +456 diff --git a/third_party/nix/src/tests/lang/eval-okay-deepseq.nix b/third_party/nix/src/tests/lang/eval-okay-deepseq.nix new file mode 100644 index 0000000000..53aa4b1dc2 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-deepseq.nix @@ -0,0 +1 @@ +builtins.deepSeq (let as = { x = 123; y = as; }; in as) 456 diff --git a/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.exp b/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.exp new file mode 100644 index 0000000000..eaacb55c1a --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.exp @@ -0,0 +1 @@ +"b-overridden" diff --git a/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.nix b/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.nix new file mode 100644 index 0000000000..84b388c271 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-delayed-with-inherit.nix @@ -0,0 +1,24 @@ +let + pkgs_ = with pkgs; { + a = derivation { + name = "a"; + system = builtins.currentSystem; + builder = "/bin/sh"; + args = [ "-c" "touch $out" ]; + inherit b; + }; + + inherit b; + }; + + packageOverrides = p: { + b = derivation { + name = "b-overridden"; + system = builtins.currentSystem; + builder = "/bin/sh"; + args = [ "-c" "touch $out" ]; + }; + }; + + pkgs = pkgs_ // (packageOverrides pkgs_); +in pkgs.a.b.name diff --git a/third_party/nix/src/tests/lang/eval-okay-delayed-with.exp b/third_party/nix/src/tests/lang/eval-okay-delayed-with.exp new file mode 100644 index 0000000000..8e7c61ab8e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-delayed-with.exp @@ -0,0 +1 @@ +"b-overridden b-overridden a" diff --git a/third_party/nix/src/tests/lang/eval-okay-delayed-with.nix b/third_party/nix/src/tests/lang/eval-okay-delayed-with.nix new file mode 100644 index 0000000000..3fb023e1cd --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-delayed-with.nix @@ -0,0 +1,29 @@ +let + + pkgs_ = with pkgs; { + a = derivation { + name = "a"; + system = builtins.currentSystem; + builder = "/bin/sh"; + args = [ "-c" "touch $out" ]; + inherit b; + }; + + b = derivation { + name = "b"; + system = builtins.currentSystem; + builder = "/bin/sh"; + args = [ "-c" "touch $out" ]; + inherit a; + }; + + c = b; + }; + + packageOverrides = pkgs: with pkgs; { + b = derivation (b.drvAttrs // { name = "${b.name}-overridden"; }); + }; + + pkgs = pkgs_ // (packageOverrides pkgs_); + +in "${pkgs.a.b.name} ${pkgs.c.name} ${pkgs.b.a.name}" diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.exp b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.nix b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.nix new file mode 100644 index 0000000000..6d57bf8549 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-2.nix @@ -0,0 +1 @@ +{ a."${"b"}" = true; a."${"c"}" = false; }.a.b diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.exp b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.exp new file mode 100644 index 0000000000..df8750afc0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.exp @@ -0,0 +1 @@ +{ binds = true; hasAttrs = true; multiAttrs = true; recBinds = true; selectAttrs = true; selectOrAttrs = true; } diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.nix b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.nix new file mode 100644 index 0000000000..0dbe15e638 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs-bare.nix @@ -0,0 +1,17 @@ +let + aString = "a"; + + bString = "b"; +in { + hasAttrs = { a.b = null; } ? ${aString}.b; + + selectAttrs = { a.b = true; }.a.${bString}; + + selectOrAttrs = { }.${aString} or true; + + binds = { ${aString}."${bString}c" = true; }.a.bc; + + recBinds = rec { ${bString} = a; a = true; }.b; + + multiAttrs = { ${aString} = true; ${bString} = false; }.a; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.exp b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.exp new file mode 100644 index 0000000000..df8750afc0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.exp @@ -0,0 +1 @@ +{ binds = true; hasAttrs = true; multiAttrs = true; recBinds = true; selectAttrs = true; selectOrAttrs = true; } diff --git a/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.nix b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.nix new file mode 100644 index 0000000000..ee02ac7e65 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-dynamic-attrs.nix @@ -0,0 +1,17 @@ +let + aString = "a"; + + bString = "b"; +in { + hasAttrs = { a.b = null; } ? "${aString}".b; + + selectAttrs = { a.b = true; }.a."${bString}"; + + selectOrAttrs = { }."${aString}" or true; + + binds = { "${aString}"."${bString}c" = true; }.a.bc; + + recBinds = rec { "${bString}" = a; a = true; }.b; + + multiAttrs = { "${aString}" = true; "${bString}" = false; }.a; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-elem.exp b/third_party/nix/src/tests/lang/eval-okay-elem.exp new file mode 100644 index 0000000000..3cf6c0e962 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-elem.exp @@ -0,0 +1 @@ +[ true false 30 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-elem.nix b/third_party/nix/src/tests/lang/eval-okay-elem.nix new file mode 100644 index 0000000000..71ea7a4ed0 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-elem.nix @@ -0,0 +1,6 @@ +with import ./lib.nix; + +let xs = range 10 40; in + +[ (builtins.elem 23 xs) (builtins.elem 42 xs) (builtins.elemAt xs 20) ] + diff --git a/third_party/nix/src/tests/lang/eval-okay-empty-args.exp b/third_party/nix/src/tests/lang/eval-okay-empty-args.exp new file mode 100644 index 0000000000..cb5537d5d7 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-empty-args.exp @@ -0,0 +1 @@ +"ab" diff --git a/third_party/nix/src/tests/lang/eval-okay-empty-args.nix b/third_party/nix/src/tests/lang/eval-okay-empty-args.nix new file mode 100644 index 0000000000..78c133afdd --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-empty-args.nix @@ -0,0 +1 @@ +({}: {x,y,}: "${x}${y}") {} {x = "a"; y = "b";} diff --git a/third_party/nix/src/tests/lang/eval-okay-eq-derivations.exp b/third_party/nix/src/tests/lang/eval-okay-eq-derivations.exp new file mode 100644 index 0000000000..ec04aab6ae --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-eq-derivations.exp @@ -0,0 +1 @@ +[ true true true false ] diff --git a/third_party/nix/src/tests/lang/eval-okay-eq-derivations.nix b/third_party/nix/src/tests/lang/eval-okay-eq-derivations.nix new file mode 100644 index 0000000000..d526cb4a21 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-eq-derivations.nix @@ -0,0 +1,10 @@ +let + + drvA1 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; }; + drvA2 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; }; + drvA3 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; } // { dummy = 1; }; + + drvC1 = derivation { name = "c"; builder = "/foo"; system = "i686-linux"; }; + drvC2 = derivation { name = "c"; builder = "/bar"; system = "i686-linux"; }; + +in [ (drvA1 == drvA1) (drvA1 == drvA2) (drvA1 == drvA3) (drvC1 == drvC2) ] diff --git a/third_party/nix/src/tests/lang/eval-okay-eq.exp.disabled b/third_party/nix/src/tests/lang/eval-okay-eq.exp.disabled new file mode 100644 index 0000000000..2015847b65 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-eq.exp.disabled @@ -0,0 +1 @@ +Bool(True) diff --git a/third_party/nix/src/tests/lang/eval-okay-eq.nix b/third_party/nix/src/tests/lang/eval-okay-eq.nix new file mode 100644 index 0000000000..73d200b381 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-eq.nix @@ -0,0 +1,3 @@ +["foobar" (rec {x = 1; y = x;})] +== +[("foo" + "bar") ({x = 1; y = 1;})] diff --git a/third_party/nix/src/tests/lang/eval-okay-filter.exp b/third_party/nix/src/tests/lang/eval-okay-filter.exp new file mode 100644 index 0000000000..355d51c27d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-filter.exp @@ -0,0 +1 @@ +[ 0 2 4 6 8 10 100 102 104 106 108 110 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-filter.nix b/third_party/nix/src/tests/lang/eval-okay-filter.nix new file mode 100644 index 0000000000..85109b0d0e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-filter.nix @@ -0,0 +1,5 @@ +with import ./lib.nix; + +builtins.filter + (x: x / 2 * 2 == x) + (builtins.concatLists [ (range 0 10) (range 100 110) ]) diff --git a/third_party/nix/src/tests/lang/eval-okay-flatten.exp b/third_party/nix/src/tests/lang/eval-okay-flatten.exp new file mode 100644 index 0000000000..b979b2b8b9 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-flatten.exp @@ -0,0 +1 @@ +"1234567" diff --git a/third_party/nix/src/tests/lang/eval-okay-flatten.nix b/third_party/nix/src/tests/lang/eval-okay-flatten.nix new file mode 100644 index 0000000000..fe911e9683 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-flatten.nix @@ -0,0 +1,8 @@ +with import ./lib.nix; + +let { + + l = ["1" "2" ["3" ["4"] ["5" "6"]] "7"]; + + body = concat (flatten l); +} diff --git a/third_party/nix/src/tests/lang/eval-okay-float.exp b/third_party/nix/src/tests/lang/eval-okay-float.exp new file mode 100644 index 0000000000..3c50a8adce --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-float.exp @@ -0,0 +1 @@ +[ 3.4 3.5 2.5 1.5 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-float.nix b/third_party/nix/src/tests/lang/eval-okay-float.nix new file mode 100644 index 0000000000..b2702c7b16 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-float.nix @@ -0,0 +1,6 @@ +[ + (1.1 + 2.3) + (builtins.add (0.5 + 0.5) (2.0 + 0.5)) + ((0.5 + 0.5) * (2.0 + 0.5)) + ((1.5 + 1.5) / (0.5 * 4.0)) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-fromTOML.exp b/third_party/nix/src/tests/lang/eval-okay-fromTOML.exp new file mode 100644 index 0000000000..d0dd3af2c8 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-fromTOML.exp @@ -0,0 +1 @@ +[ { clients = { data = [ [ "gamma" "delta" ] [ 1 2 ] ]; hosts = [ "alpha" "omega" ]; }; database = { connection_max = 5000; enabled = true; ports = [ 8001 8001 8002 ]; server = "192.168.1.1"; }; owner = { name = "Tom Preston-Werner"; }; servers = { alpha = { dc = "eqdc10"; ip = "10.0.0.1"; }; beta = { dc = "eqdc10"; ip = "10.0.0.2"; }; }; title = "TOML Example"; } { "1234" = "value"; "127.0.0.1" = "value"; a = { b = { c = { }; }; }; arr1 = [ 1 2 3 ]; arr2 = [ "red" "yellow" "green" ]; arr3 = [ [ 1 2 ] [ 3 4 5 ] ]; arr4 = [ "all" "strings" "are the same" "type" ]; arr5 = [ [ 1 2 ] [ "a" "b" "c" ] ]; arr7 = [ 1 2 3 ]; arr8 = [ 1 2 ]; bare-key = "value"; bare_key = "value"; bin1 = 214; bool1 = true; bool2 = false; "character encoding" = "value"; d = { e = { f = { }; }; }; dog = { "tater.man" = { type = { name = "pug"; }; }; }; flt1 = 1; flt2 = 3.1415; flt3 = -0.01; flt4 = 5e+22; flt5 = 1e+06; flt6 = -0.02; flt7 = 6.626e-34; flt8 = 9.22462e+06; fruit = [ { name = "apple"; physical = { color = "red"; shape = "round"; }; variety = [ { name = "red delicious"; } { name = "granny smith"; } ]; } { name = "banana"; variety = [ { name = "plantain"; } ]; } ]; g = { h = { i = { }; }; }; hex1 = 3735928559; hex2 = 3735928559; hex3 = 3735928559; int1 = 99; int2 = 42; int3 = 0; int4 = -17; int5 = 1000; int6 = 5349221; int7 = 12345; j = { "ʞ" = { l = { }; }; }; key = "value"; key2 = "value"; name = "Orange"; oct1 = 342391; oct2 = 493; physical = { color = "orange"; shape = "round"; }; products = [ { name = "Hammer"; sku = 738594937; } { } { color = "gray"; name = "Nail"; sku = 284758393; } ]; "quoted \"value\"" = "value"; site = { "google.com" = true; }; str = "I'm a string. \"You can quote me\". Name\tJosé\nLocation\tSF."; table-1 = { key1 = "some string"; key2 = 123; }; table-2 = { key1 = "another string"; key2 = 456; }; x = { y = { z = { w = { animal = { type = { name = "pug"; }; }; name = { first = "Tom"; last = "Preston-Werner"; }; point = { x = 1; y = 2; }; }; }; }; }; "ʎǝʞ" = "value"; } { metadata = { "checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4"; "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"; "checksum ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6"; "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef"; }; package = [ { dependencies = [ "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" ]; name = "aho-corasick"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.6.4"; } { name = "ansi_term"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.9.0"; } { dependencies = [ "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)" "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" ]; name = "atty"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.2.10"; } ]; } { a = [ [ { b = true; } ] ]; c = [ [ { d = true; } ] ]; e = [ [ 123 ] ]; } ] diff --git a/third_party/nix/src/tests/lang/eval-okay-fromTOML.nix b/third_party/nix/src/tests/lang/eval-okay-fromTOML.nix new file mode 100644 index 0000000000..9639326899 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-fromTOML.nix @@ -0,0 +1,208 @@ +[ + + (builtins.fromTOML '' + # This is a TOML document. + + title = "TOML Example" + + [owner] + name = "Tom Preston-Werner" + #dob = 1979-05-27T07:32:00-08:00 # First class dates + + [database] + server = "192.168.1.1" + ports = [ 8001, 8001, 8002 ] + connection_max = 5000 + enabled = true + + [servers] + + # Indentation (tabs and/or spaces) is allowed but not required + [servers.alpha] + ip = "10.0.0.1" + dc = "eqdc10" + + [servers.beta] + ip = "10.0.0.2" + dc = "eqdc10" + + [clients] + data = [ ["gamma", "delta"], [1, 2] ] + + # Line breaks are OK when inside arrays + hosts = [ + "alpha", + "omega" + ] + '') + + (builtins.fromTOML '' + key = "value" + bare_key = "value" + bare-key = "value" + 1234 = "value" + + "127.0.0.1" = "value" + "character encoding" = "value" + "ʎǝʞ" = "value" + 'key2' = "value" + 'quoted "value"' = "value" + + name = "Orange" + + physical.color = "orange" + physical.shape = "round" + site."google.com" = true + + # This is legal according to the spec, but cpptoml doesn't handle it. + #a.b.c = 1 + #a.d = 2 + + str = "I'm a string. \"You can quote me\". Name\tJos\u00E9\nLocation\tSF." + + int1 = +99 + int2 = 42 + int3 = 0 + int4 = -17 + int5 = 1_000 + int6 = 5_349_221 + int7 = 1_2_3_4_5 + + hex1 = 0xDEADBEEF + hex2 = 0xdeadbeef + hex3 = 0xdead_beef + + oct1 = 0o01234567 + oct2 = 0o755 + + bin1 = 0b11010110 + + flt1 = +1.0 + flt2 = 3.1415 + flt3 = -0.01 + flt4 = 5e+22 + flt5 = 1e6 + flt6 = -2E-2 + flt7 = 6.626e-34 + flt8 = 9_224_617.445_991_228_313 + + bool1 = true + bool2 = false + + # FIXME: not supported because Nix doesn't have a date/time type. + #odt1 = 1979-05-27T07:32:00Z + #odt2 = 1979-05-27T00:32:00-07:00 + #odt3 = 1979-05-27T00:32:00.999999-07:00 + #odt4 = 1979-05-27 07:32:00Z + #ldt1 = 1979-05-27T07:32:00 + #ldt2 = 1979-05-27T00:32:00.999999 + #ld1 = 1979-05-27 + #lt1 = 07:32:00 + #lt2 = 00:32:00.999999 + + arr1 = [ 1, 2, 3 ] + arr2 = [ "red", "yellow", "green" ] + arr3 = [ [ 1, 2 ], [3, 4, 5] ] + arr4 = [ "all", 'strings', """are the same""", ''''type''''] + arr5 = [ [ 1, 2 ], ["a", "b", "c"] ] + + arr7 = [ + 1, 2, 3 + ] + + arr8 = [ + 1, + 2, # this is ok + ] + + [table-1] + key1 = "some string" + key2 = 123 + + + [table-2] + key1 = "another string" + key2 = 456 + + [dog."tater.man"] + type.name = "pug" + + [a.b.c] + [ d.e.f ] + [ g . h . i ] + [ j . "ʞ" . 'l' ] + [x.y.z.w] + + name = { first = "Tom", last = "Preston-Werner" } + point = { x = 1, y = 2 } + animal = { type.name = "pug" } + + [[products]] + name = "Hammer" + sku = 738594937 + + [[products]] + + [[products]] + name = "Nail" + sku = 284758393 + color = "gray" + + [[fruit]] + name = "apple" + + [fruit.physical] + color = "red" + shape = "round" + + [[fruit.variety]] + name = "red delicious" + + [[fruit.variety]] + name = "granny smith" + + [[fruit]] + name = "banana" + + [[fruit.variety]] + name = "plantain" + '') + + (builtins.fromTOML '' + [[package]] + name = "aho-corasick" + version = "0.6.4" + source = "registry+https://github.com/rust-lang/crates.io-index" + dependencies = [ + "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [[package]] + name = "ansi_term" + version = "0.9.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + + [[package]] + name = "atty" + version = "0.2.10" + source = "registry+https://github.com/rust-lang/crates.io-index" + dependencies = [ + "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", + "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + ] + + [metadata] + "checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" + "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" + "checksum ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6" + "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" + '') + + (builtins.fromTOML '' + a = [[{ b = true }]] + c = [ [ { d = true } ] ] + e = [[123]] + '') + +] diff --git a/third_party/nix/src/tests/lang/eval-okay-fromjson.exp b/third_party/nix/src/tests/lang/eval-okay-fromjson.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-fromjson.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-fromjson.nix b/third_party/nix/src/tests/lang/eval-okay-fromjson.nix new file mode 100644 index 0000000000..102ee82b5e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-fromjson.nix @@ -0,0 +1,36 @@ +# RFC 7159, section 13. +builtins.fromJSON + '' + { + "Image": { + "Width": 800, + "Height": 600, + "Title": "View from 15th Floor", + "Thumbnail": { + "Url": "http://www.example.com/image/481989943", + "Height": 125, + "Width": 100 + }, + "Animated" : false, + "IDs": [116, 943, 234, 38793, true ,false,null, -100], + "Latitude": 37.7668, + "Longitude": -122.3959 + } + } + '' +== + { Image = + { Width = 800; + Height = 600; + Title = "View from 15th Floor"; + Thumbnail = + { Url = http://www.example.com/image/481989943; + Height = 125; + Width = 100; + }; + Animated = false; + IDs = [ 116 943 234 38793 true false null (0-100) ]; + Latitude = 37.7668; + Longitude = -122.3959; + }; + } diff --git a/third_party/nix/src/tests/lang/eval-okay-functionargs.exp.xml b/third_party/nix/src/tests/lang/eval-okay-functionargs.exp.xml new file mode 100644 index 0000000000..651f54c363 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-functionargs.exp.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/third_party/nix/src/tests/lang/eval-okay-functionargs.nix b/third_party/nix/src/tests/lang/eval-okay-functionargs.nix new file mode 100644 index 0000000000..68dca62ee1 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-functionargs.nix @@ -0,0 +1,80 @@ +let + + stdenvFun = { }: { name = "stdenv"; }; + stdenv2Fun = { }: { name = "stdenv2"; }; + fetchurlFun = { stdenv }: assert stdenv.name == "stdenv"; { name = "fetchurl"; }; + atermFun = { stdenv, fetchurl }: { name = "aterm-${stdenv.name}"; }; + aterm2Fun = { stdenv, fetchurl }: { name = "aterm2-${stdenv.name}"; }; + nixFun = { stdenv, fetchurl, aterm }: { name = "nix-${stdenv.name}-${aterm.name}"; }; + + mplayerFun = + { stdenv, fetchurl, enableX11 ? false, xorg ? null, enableFoo ? true, foo ? null }: + assert stdenv.name == "stdenv2"; + assert enableX11 -> xorg.libXv.name == "libXv"; + assert enableFoo -> foo != null; + { name = "mplayer-${stdenv.name}.${xorg.libXv.name}-${xorg.libX11.name}"; }; + + makeOverridable = f: origArgs: f origArgs // + { override = newArgs: + makeOverridable f (origArgs // (if builtins.isFunction newArgs then newArgs origArgs else newArgs)); + }; + + callPackage_ = pkgs: f: args: + makeOverridable f ((builtins.intersectAttrs (builtins.functionArgs f) pkgs) // args); + + allPackages = + { overrides ? (pkgs: pkgsPrev: { }) }: + let + callPackage = callPackage_ pkgs; + pkgs = pkgsStd // (overrides pkgs pkgsStd); + pkgsStd = { + inherit pkgs; + stdenv = callPackage stdenvFun { }; + stdenv2 = callPackage stdenv2Fun { }; + fetchurl = callPackage fetchurlFun { }; + aterm = callPackage atermFun { }; + xorg = callPackage xorgFun { }; + mplayer = callPackage mplayerFun { stdenv = pkgs.stdenv2; enableFoo = false; }; + nix = callPackage nixFun { }; + }; + in pkgs; + + libX11Fun = { stdenv, fetchurl }: { name = "libX11"; }; + libX11_2Fun = { stdenv, fetchurl }: { name = "libX11_2"; }; + libXvFun = { stdenv, fetchurl, libX11 }: { name = "libXv"; }; + + xorgFun = + { pkgs }: + let callPackage = callPackage_ (pkgs // pkgs.xorg); in + { + libX11 = callPackage libX11Fun { }; + libXv = callPackage libXvFun { }; + }; + +in + +let + + pkgs = allPackages { }; + + pkgs2 = allPackages { + overrides = pkgs: pkgsPrev: { + stdenv = pkgs.stdenv2; + nix = pkgsPrev.nix.override { aterm = aterm2Fun { inherit (pkgs) stdenv fetchurl; }; }; + xorg = pkgsPrev.xorg // { libX11 = libX11_2Fun { inherit (pkgs) stdenv fetchurl; }; }; + }; + }; + +in + + [ pkgs.stdenv.name + pkgs.fetchurl.name + pkgs.aterm.name + pkgs2.aterm.name + pkgs.xorg.libX11.name + pkgs.xorg.libXv.name + pkgs.mplayer.name + pkgs2.mplayer.name + pkgs.nix.name + pkgs2.nix.name + ] diff --git a/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.exp b/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.exp new file mode 100644 index 0000000000..19765bd501 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.exp @@ -0,0 +1 @@ +null diff --git a/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.nix b/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.nix new file mode 100644 index 0000000000..14dd38f773 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getattrpos-undefined.nix @@ -0,0 +1 @@ +builtins.unsafeGetAttrPos "abort" builtins diff --git a/third_party/nix/src/tests/lang/eval-okay-getattrpos.exp b/third_party/nix/src/tests/lang/eval-okay-getattrpos.exp new file mode 100644 index 0000000000..469249bbc6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getattrpos.exp @@ -0,0 +1 @@ +{ column = 5; file = "eval-okay-getattrpos.nix"; line = 3; } diff --git a/third_party/nix/src/tests/lang/eval-okay-getattrpos.nix b/third_party/nix/src/tests/lang/eval-okay-getattrpos.nix new file mode 100644 index 0000000000..ca6b079615 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getattrpos.nix @@ -0,0 +1,6 @@ +let + as = { + foo = "bar"; + }; + pos = builtins.unsafeGetAttrPos "foo" as; +in { inherit (pos) column line; file = baseNameOf pos.file; } diff --git a/third_party/nix/src/tests/lang/eval-okay-getenv.exp b/third_party/nix/src/tests/lang/eval-okay-getenv.exp new file mode 100644 index 0000000000..14e24d4190 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getenv.exp @@ -0,0 +1 @@ +"foobar" diff --git a/third_party/nix/src/tests/lang/eval-okay-getenv.nix b/third_party/nix/src/tests/lang/eval-okay-getenv.nix new file mode 100644 index 0000000000..4cfec5f553 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-getenv.nix @@ -0,0 +1 @@ +builtins.getEnv "TEST_VAR" + (if builtins.getEnv "NO_SUCH_VAR" == "" then "bar" else "bla") diff --git a/third_party/nix/src/tests/lang/eval-okay-hash.exp b/third_party/nix/src/tests/lang/eval-okay-hash.exp new file mode 100644 index 0000000000..e69de29bb2 diff --git a/third_party/nix/src/tests/lang/eval-okay-hashfile.exp b/third_party/nix/src/tests/lang/eval-okay-hashfile.exp new file mode 100644 index 0000000000..ff1e8293ef --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-hashfile.exp @@ -0,0 +1 @@ +[ "d3b07384d113edec49eaa6238ad5ff00" "0f343b0931126a20f133d67c2b018a3b" "f1d2d2f924e986ac86fdf7b36c94bcdf32beec15" "60cacbf3d72e1e7834203da608037b1bf83b40e8" "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c" "5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef" "0cf9180a764aba863a67b6d72f0918bc131c6772642cb2dce5a34f0a702f9470ddc2bf125c12198b1995c233c34b4afd346c54a2334c350a948a51b6e8b4e6b6" "8efb4f73c5655351c444eb109230c556d39e2c7624e9c11abc9e3fb4b9b9254218cc5085b454a9698d085cfa92198491f07a723be4574adc70617b73eb0b6461" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-hashfile.nix b/third_party/nix/src/tests/lang/eval-okay-hashfile.nix new file mode 100644 index 0000000000..aff5a18568 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-hashfile.nix @@ -0,0 +1,4 @@ +let + paths = [ ./data ./binary-data ]; +in + builtins.concatLists (map (hash: map (builtins.hashFile hash) paths) ["md5" "sha1" "sha256" "sha512"]) diff --git a/third_party/nix/src/tests/lang/eval-okay-hashstring.exp b/third_party/nix/src/tests/lang/eval-okay-hashstring.exp new file mode 100644 index 0000000000..d720a082dd --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-hashstring.exp @@ -0,0 +1 @@ +[ "d41d8cd98f00b204e9800998ecf8427e" "6c69ee7f211c640419d5366cc076ae46" "bb3438fbabd460ea6dbd27d153e2233b" "da39a3ee5e6b4b0d3255bfef95601890afd80709" "cd54e8568c1b37cf1e5badb0779bcbf382212189" "6d12e10b1d331dad210e47fd25d4f260802b7e77" "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" "900a4469df00ccbfd0c145c6d1e4b7953dd0afafadd7534e3a4019e8d38fc663" "ad0387b3bd8652f730ca46d25f9c170af0fd589f42e7f23f5a9e6412d97d7e56" "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" "9d0886f8c6b389398a16257bc79780fab9831c7fc11c8ab07fa732cb7b348feade382f92617c9c5305fefba0af02ab5fd39a587d330997ff5bd0db19f7666653" "21644b72aa259e5a588cd3afbafb1d4310f4889680f6c83b9d531596a5a284f34dbebff409d23bcc86aee6bad10c891606f075c6f4755cb536da27db5693f3a7" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-hashstring.nix b/third_party/nix/src/tests/lang/eval-okay-hashstring.nix new file mode 100644 index 0000000000..b0f62b245c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-hashstring.nix @@ -0,0 +1,4 @@ +let + strings = [ "" "text 1" "text 2" ]; +in + builtins.concatLists (map (hash: map (builtins.hashString hash) strings) ["md5" "sha1" "sha256" "sha512"]) diff --git a/third_party/nix/src/tests/lang/eval-okay-if.exp b/third_party/nix/src/tests/lang/eval-okay-if.exp new file mode 100644 index 0000000000..00750edc07 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-if.exp @@ -0,0 +1 @@ +3 diff --git a/third_party/nix/src/tests/lang/eval-okay-if.nix b/third_party/nix/src/tests/lang/eval-okay-if.nix new file mode 100644 index 0000000000..23e4c74d50 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-if.nix @@ -0,0 +1 @@ +if "foo" != "f" + "oo" then 1 else if false then 2 else 3 diff --git a/third_party/nix/src/tests/lang/eval-okay-import.exp b/third_party/nix/src/tests/lang/eval-okay-import.exp new file mode 100644 index 0000000000..c508125b55 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-import.exp @@ -0,0 +1 @@ +[ 1 2 3 4 5 6 7 8 9 10 ] diff --git a/third_party/nix/src/tests/lang/eval-okay-import.nix b/third_party/nix/src/tests/lang/eval-okay-import.nix new file mode 100644 index 0000000000..0b18d94131 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-import.nix @@ -0,0 +1,11 @@ +let + + overrides = { + import = fn: scopedImport overrides fn; + + scopedImport = attrs: fn: scopedImport (overrides // attrs) fn; + + builtins = builtins // overrides; + } // import ./lib.nix; + +in scopedImport overrides ./imported.nix diff --git a/third_party/nix/src/tests/lang/eval-okay-ind-string.exp b/third_party/nix/src/tests/lang/eval-okay-ind-string.exp new file mode 100644 index 0000000000..9cf4bd2ee7 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-ind-string.exp @@ -0,0 +1 @@ +"This is an indented multi-line string\nliteral. An amount of whitespace at\nthe start of each line matching the minimum\nindentation of all lines in the string\nliteral together will be removed. Thus,\nin this case four spaces will be\nstripped from each line, even though\n THIS LINE is indented six spaces.\n\nAlso, empty lines don't count in the\ndetermination of the indentation level (the\nprevious empty line has indentation 0, but\nit doesn't matter).\nIf the string starts with whitespace\n followed by a newline, it's stripped, but\n that's not the case here. Two spaces are\n stripped because of the \" \" at the start. \nThis line is indented\na bit further.\nAnti-quotations, like so, are\nalso allowed.\n The \\ is not special here.\n' can be followed by any character except another ', e.g. 'x'.\nLikewise for $, e.g. $$ or $varName.\nBut ' followed by ' is special, as is $ followed by {.\nIf you want them, use anti-quotations: '', ${.\n Tabs are not interpreted as whitespace (since we can't guess\n what tab settings are intended), so don't use them.\n\tThis line starts with a space and a tab, so only one\n space will be stripped from each line.\nAlso note that if the last line (just before the closing ' ')\nconsists only of whitespace, it's ignored. But here there is\nsome non-whitespace stuff, so the line isn't removed. \nThis shows a hacky way to preserve an empty line after the start.\nBut there's no reason to do so: you could just repeat the empty\nline.\n Similarly you can force an indentation level,\n in this case to 2 spaces. This works because the anti-quote\n is significant (not whitespace).\nstart on network-interfaces\n\nstart script\n\n rm -f /var/run/opengl-driver\n ln -sf 123 /var/run/opengl-driver\n\n rm -f /var/log/slim.log\n \nend script\n\nenv SLIM_CFGFILE=abc\nenv SLIM_THEMESDIR=def\nenv FONTCONFIG_FILE=/etc/fonts/fonts.conf \t\t\t\t# !!! cleanup\nenv XKB_BINDIR=foo/bin \t\t\t\t# Needed for the Xkb extension.\nenv LD_LIBRARY_PATH=libX11/lib:libXext/lib:/usr/lib/ # related to xorg-sys-opengl - needed to load libglx for (AI)GLX support (for compiz)\n\nenv XORG_DRI_DRIVER_PATH=nvidiaDrivers/X11R6/lib/modules/drivers/ \n\nexec slim/bin/slim\nEscaping of ' followed by ': ''\nEscaping of $ followed by {: ${\nAnd finally to interpret \\n etc. as in a string: \n, \r, \t.\nfoo\n'bla'\nbar\ncut -d $'\\t' -f 1\nending dollar $$\n" diff --git a/third_party/nix/src/tests/lang/eval-okay-ind-string.nix b/third_party/nix/src/tests/lang/eval-okay-ind-string.nix new file mode 100644 index 0000000000..1669dc0648 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-ind-string.nix @@ -0,0 +1,128 @@ +let + + s1 = '' + This is an indented multi-line string + literal. An amount of whitespace at + the start of each line matching the minimum + indentation of all lines in the string + literal together will be removed. Thus, + in this case four spaces will be + stripped from each line, even though + THIS LINE is indented six spaces. + + Also, empty lines don't count in the + determination of the indentation level (the + previous empty line has indentation 0, but + it doesn't matter). + ''; + + s2 = '' If the string starts with whitespace + followed by a newline, it's stripped, but + that's not the case here. Two spaces are + stripped because of the " " at the start. + ''; + + s3 = '' + This line is indented + a bit further. + ''; # indentation of last line doesn't count if it's empty + + s4 = '' + Anti-quotations, like ${if true then "so" else "not so"}, are + also allowed. + ''; + + s5 = '' + The \ is not special here. + ' can be followed by any character except another ', e.g. 'x'. + Likewise for $, e.g. $$ or $varName. + But ' followed by ' is special, as is $ followed by {. + If you want them, use anti-quotations: ${"''"}, ${"\${"}. + ''; + + s6 = '' + Tabs are not interpreted as whitespace (since we can't guess + what tab settings are intended), so don't use them. + This line starts with a space and a tab, so only one + space will be stripped from each line. + ''; + + s7 = '' + Also note that if the last line (just before the closing ' ') + consists only of whitespace, it's ignored. But here there is + some non-whitespace stuff, so the line isn't removed. ''; + + s8 = '' ${""} + This shows a hacky way to preserve an empty line after the start. + But there's no reason to do so: you could just repeat the empty + line. + ''; + + s9 = '' + ${""} Similarly you can force an indentation level, + in this case to 2 spaces. This works because the anti-quote + is significant (not whitespace). + ''; + + s10 = '' + ''; + + s11 = ''''; + + s12 = '' ''; + + s13 = '' + start on network-interfaces + + start script + + rm -f /var/run/opengl-driver + ${if true + then "ln -sf 123 /var/run/opengl-driver" + else if true + then "ln -sf 456 /var/run/opengl-driver" + else "" + } + + rm -f /var/log/slim.log + + end script + + env SLIM_CFGFILE=${"abc"} + env SLIM_THEMESDIR=${"def"} + env FONTCONFIG_FILE=/etc/fonts/fonts.conf # !!! cleanup + env XKB_BINDIR=${"foo"}/bin # Needed for the Xkb extension. + env LD_LIBRARY_PATH=${"libX11"}/lib:${"libXext"}/lib:/usr/lib/ # related to xorg-sys-opengl - needed to load libglx for (AI)GLX support (for compiz) + + ${if true + then "env XORG_DRI_DRIVER_PATH=${"nvidiaDrivers"}/X11R6/lib/modules/drivers/" + else if true + then "env XORG_DRI_DRIVER_PATH=${"mesa"}/lib/modules/dri" + else "" + } + + exec ${"slim"}/bin/slim + ''; + + s14 = '' + Escaping of ' followed by ': ''' + Escaping of $ followed by {: ''${ + And finally to interpret \n etc. as in a string: ''\n, ''\r, ''\t. + ''; + + # Regression test: antiquotation in '${x}' should work, but didn't. + s15 = let x = "bla"; in '' + foo + '${x}' + bar + ''; + + # Regression test: accept $'. + s16 = '' + cut -d $'\t' -f 1 + ''; + + # Accept dollars at end of strings + s17 = ''ending dollar $'' + ''$'' + "\n"; + +in s1 + s2 + s3 + s4 + s5 + s6 + s7 + s8 + s9 + s10 + s11 + s12 + s13 + s14 + s15 + s16 + s17 diff --git a/third_party/nix/src/tests/lang/eval-okay-let.exp b/third_party/nix/src/tests/lang/eval-okay-let.exp new file mode 100644 index 0000000000..14e24d4190 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-let.exp @@ -0,0 +1 @@ +"foobar" diff --git a/third_party/nix/src/tests/lang/eval-okay-let.nix b/third_party/nix/src/tests/lang/eval-okay-let.nix new file mode 100644 index 0000000000..fe118c5282 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-let.nix @@ -0,0 +1,5 @@ +let { + x = "foo"; + y = "bar"; + body = x + y; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-list.exp b/third_party/nix/src/tests/lang/eval-okay-list.exp new file mode 100644 index 0000000000..f784f26d83 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-list.exp @@ -0,0 +1 @@ +"foobarblatest" diff --git a/third_party/nix/src/tests/lang/eval-okay-list.nix b/third_party/nix/src/tests/lang/eval-okay-list.nix new file mode 100644 index 0000000000..d433bcf908 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-list.nix @@ -0,0 +1,7 @@ +with import ./lib.nix; + +let { + + body = concat ["foo" "bar" "bla" "test"]; + +} \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-okay-listtoattrs.exp b/third_party/nix/src/tests/lang/eval-okay-listtoattrs.exp new file mode 100644 index 0000000000..74abef7bc6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-listtoattrs.exp @@ -0,0 +1 @@ +"AAbar" diff --git a/third_party/nix/src/tests/lang/eval-okay-listtoattrs.nix b/third_party/nix/src/tests/lang/eval-okay-listtoattrs.nix new file mode 100644 index 0000000000..4186e029b5 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-listtoattrs.nix @@ -0,0 +1,11 @@ +# this test shows how to use listToAttrs and that evaluation is still lazy (throw isn't called) +with import ./lib.nix; + +let + asi = name: value : { inherit name value; }; + list = [ ( asi "a" "A" ) ( asi "b" "B" ) ]; + a = builtins.listToAttrs list; + b = builtins.listToAttrs ( list ++ list ); + r = builtins.listToAttrs [ (asi "result" [ a b ]) ( asi "throw" (throw "this should not be thrown")) ]; + x = builtins.listToAttrs [ (asi "foo" "bar") (asi "foo" "bla") ]; +in concat (map (x: x.a) r.result) + x.foo diff --git a/third_party/nix/src/tests/lang/eval-okay-logic.exp b/third_party/nix/src/tests/lang/eval-okay-logic.exp new file mode 100644 index 0000000000..d00491fd7e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-logic.exp @@ -0,0 +1 @@ +1 diff --git a/third_party/nix/src/tests/lang/eval-okay-logic.nix b/third_party/nix/src/tests/lang/eval-okay-logic.nix new file mode 100644 index 0000000000..fbb1279440 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-logic.nix @@ -0,0 +1 @@ +assert !false && (true || false) -> true; 1 diff --git a/third_party/nix/src/tests/lang/eval-okay-map.exp b/third_party/nix/src/tests/lang/eval-okay-map.exp new file mode 100644 index 0000000000..dbb64f717b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-map.exp @@ -0,0 +1 @@ +"foobarblabarxyzzybar" diff --git a/third_party/nix/src/tests/lang/eval-okay-map.nix b/third_party/nix/src/tests/lang/eval-okay-map.nix new file mode 100644 index 0000000000..a76c1d8114 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-map.nix @@ -0,0 +1,3 @@ +with import ./lib.nix; + +concat (map (x: x + "bar") [ "foo" "bla" "xyzzy" ]) \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-okay-mapattrs.exp b/third_party/nix/src/tests/lang/eval-okay-mapattrs.exp new file mode 100644 index 0000000000..3f113f17ba --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-mapattrs.exp @@ -0,0 +1 @@ +{ x = "x-foo"; y = "y-bar"; } diff --git a/third_party/nix/src/tests/lang/eval-okay-mapattrs.nix b/third_party/nix/src/tests/lang/eval-okay-mapattrs.nix new file mode 100644 index 0000000000..f075b6275e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-mapattrs.nix @@ -0,0 +1,3 @@ +with import ./lib.nix; + +builtins.mapAttrs (name: value: name + "-" + value) { x = "foo"; y = "bar"; } diff --git a/third_party/nix/src/tests/lang/eval-okay-nested-with.exp b/third_party/nix/src/tests/lang/eval-okay-nested-with.exp new file mode 100644 index 0000000000..0cfbf08886 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-nested-with.exp @@ -0,0 +1 @@ +2 diff --git a/third_party/nix/src/tests/lang/eval-okay-nested-with.nix b/third_party/nix/src/tests/lang/eval-okay-nested-with.nix new file mode 100644 index 0000000000..ba9d79aa79 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-nested-with.nix @@ -0,0 +1,3 @@ +with { x = 1; }; +with { x = 2; }; +x diff --git a/third_party/nix/src/tests/lang/eval-okay-new-let.exp b/third_party/nix/src/tests/lang/eval-okay-new-let.exp new file mode 100644 index 0000000000..f98b388071 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-new-let.exp @@ -0,0 +1 @@ +"xyzzyfoobar" diff --git a/third_party/nix/src/tests/lang/eval-okay-new-let.nix b/third_party/nix/src/tests/lang/eval-okay-new-let.nix new file mode 100644 index 0000000000..7381231415 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-new-let.nix @@ -0,0 +1,14 @@ +let + + f = z: + + let + x = "foo"; + y = "bar"; + body = 1; # compat test + in + z + x + y; + + arg = "xyzzy"; + +in f arg diff --git a/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.exp b/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.nix b/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.nix new file mode 100644 index 0000000000..b060c0bc98 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-null-dynamic-attrs.nix @@ -0,0 +1 @@ +{ ${null} = true; } == {} diff --git a/third_party/nix/src/tests/lang/eval-okay-partition.exp b/third_party/nix/src/tests/lang/eval-okay-partition.exp new file mode 100644 index 0000000000..cd8b8b020c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-partition.exp @@ -0,0 +1 @@ +{ right = [ 0 2 4 6 8 10 100 102 104 106 108 110 ]; wrong = [ 1 3 5 7 9 101 103 105 107 109 ]; } diff --git a/third_party/nix/src/tests/lang/eval-okay-partition.nix b/third_party/nix/src/tests/lang/eval-okay-partition.nix new file mode 100644 index 0000000000..846d2ce494 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-partition.nix @@ -0,0 +1,5 @@ +with import ./lib.nix; + +builtins.partition + (x: x / 2 * 2 == x) + (builtins.concatLists [ (range 0 10) (range 100 110) ]) diff --git a/third_party/nix/src/tests/lang/eval-okay-path.nix b/third_party/nix/src/tests/lang/eval-okay-path.nix new file mode 100644 index 0000000000..e67168cf3e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-path.nix @@ -0,0 +1,7 @@ +builtins.path + { path = ./.; + filter = path: _: baseNameOf path == "data"; + recursive = true; + sha256 = "1yhm3gwvg5a41yylymgblsclk95fs6jy72w0wv925mmidlhcq4sw"; + name = "output"; + } diff --git a/third_party/nix/src/tests/lang/eval-okay-pathexists.exp b/third_party/nix/src/tests/lang/eval-okay-pathexists.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-pathexists.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-pathexists.nix b/third_party/nix/src/tests/lang/eval-okay-pathexists.nix new file mode 100644 index 0000000000..50c28ee0cd --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-pathexists.nix @@ -0,0 +1,5 @@ +builtins.pathExists (builtins.toPath ./lib.nix) +&& builtins.pathExists (builtins.toPath (builtins.toString ./lib.nix)) +&& !builtins.pathExists (builtins.toPath (builtins.toString ./bla.nix)) +&& builtins.pathExists ./lib.nix +&& !builtins.pathExists ./bla.nix diff --git a/third_party/nix/src/tests/lang/eval-okay-patterns.exp b/third_party/nix/src/tests/lang/eval-okay-patterns.exp new file mode 100644 index 0000000000..a4304010fe --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-patterns.exp @@ -0,0 +1 @@ +"abcxyzDDDDEFijk" diff --git a/third_party/nix/src/tests/lang/eval-okay-patterns.nix b/third_party/nix/src/tests/lang/eval-okay-patterns.nix new file mode 100644 index 0000000000..96fd25a015 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-patterns.nix @@ -0,0 +1,16 @@ +let + + f = args@{x, y, z}: x + args.y + z; + + g = {x, y, z}@args: f args; + + h = {x ? "d", y ? x, z ? args.x}@args: x + y + z; + + j = {x, y, z, ...}: x + y + z; + +in + f {x = "a"; y = "b"; z = "c";} + + g {x = "x"; y = "y"; z = "z";} + + h {x = "D";} + + h {x = "D"; y = "E"; z = "F";} + + j {x = "i"; y = "j"; z = "k"; bla = "bla"; foo = "bar";} diff --git a/third_party/nix/src/tests/lang/eval-okay-readDir.exp b/third_party/nix/src/tests/lang/eval-okay-readDir.exp new file mode 100644 index 0000000000..bf8d2c14ea --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-readDir.exp @@ -0,0 +1 @@ +{ bar = "regular"; foo = "directory"; } diff --git a/third_party/nix/src/tests/lang/eval-okay-readDir.nix b/third_party/nix/src/tests/lang/eval-okay-readDir.nix new file mode 100644 index 0000000000..a7ec9292aa --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-readDir.nix @@ -0,0 +1 @@ +builtins.readDir ./readDir diff --git a/third_party/nix/src/tests/lang/eval-okay-readfile.exp b/third_party/nix/src/tests/lang/eval-okay-readfile.exp new file mode 100644 index 0000000000..a2c87d0c43 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-readfile.exp @@ -0,0 +1 @@ +"builtins.readFile ./eval-okay-readfile.nix\n" diff --git a/third_party/nix/src/tests/lang/eval-okay-readfile.nix b/third_party/nix/src/tests/lang/eval-okay-readfile.nix new file mode 100644 index 0000000000..82f7cb1743 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-readfile.nix @@ -0,0 +1 @@ +builtins.readFile ./eval-okay-readfile.nix diff --git a/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.exp b/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.exp new file mode 100644 index 0000000000..c508d5366f --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.exp @@ -0,0 +1 @@ +false diff --git a/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.nix b/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.nix new file mode 100644 index 0000000000..df9fc3f37d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-redefine-builtin.nix @@ -0,0 +1,3 @@ +let + throw = abort "Error!"; +in (builtins.tryEval ).success diff --git a/third_party/nix/src/tests/lang/eval-okay-regex-match.exp b/third_party/nix/src/tests/lang/eval-okay-regex-match.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-regex-match.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-regex-match.nix b/third_party/nix/src/tests/lang/eval-okay-regex-match.nix new file mode 100644 index 0000000000..273e259071 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-regex-match.nix @@ -0,0 +1,29 @@ +with builtins; + +let + + matches = pat: s: match pat s != null; + + splitFN = match "((.*)/)?([^/]*)\\.(nix|cc)"; + +in + +assert matches "foobar" "foobar"; +assert matches "fo*" "f"; +assert !matches "fo+" "f"; +assert matches "fo*" "fo"; +assert matches "fo*" "foo"; +assert matches "fo+" "foo"; +assert matches "fo{1,2}" "foo"; +assert !matches "fo{1,2}" "fooo"; +assert !matches "fo*" "foobar"; +assert matches "[[:space:]]+([^[:space:]]+)[[:space:]]+" " foo "; +assert !matches "[[:space:]]+([[:upper:]]+)[[:space:]]+" " foo "; + +assert match "(.*)\\.nix" "foobar.nix" == [ "foobar" ]; +assert match "[[:space:]]+([[:upper:]]+)[[:space:]]+" " FOO " == [ "FOO" ]; + +assert splitFN "/path/to/foobar.nix" == [ "/path/to/" "/path/to" "foobar" "nix" ]; +assert splitFN "foobar.cc" == [ null null "foobar" "cc" ]; + +true diff --git a/third_party/nix/src/tests/lang/eval-okay-regex-split.exp b/third_party/nix/src/tests/lang/eval-okay-regex-split.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-regex-split.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-regex-split.nix b/third_party/nix/src/tests/lang/eval-okay-regex-split.nix new file mode 100644 index 0000000000..0073e05778 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-regex-split.nix @@ -0,0 +1,48 @@ +with builtins; + +# Non capturing regex returns empty lists +assert split "foobar" "foobar" == ["" [] ""]; +assert split "fo*" "f" == ["" [] ""]; +assert split "fo+" "f" == ["f"]; +assert split "fo*" "fo" == ["" [] ""]; +assert split "fo*" "foo" == ["" [] ""]; +assert split "fo+" "foo" == ["" [] ""]; +assert split "fo{1,2}" "foo" == ["" [] ""]; +assert split "fo{1,2}" "fooo" == ["" [] "o"]; +assert split "fo*" "foobar" == ["" [] "bar"]; + +# Capturing regex returns a list of sub-matches +assert split "(fo*)" "f" == ["" ["f"] ""]; +assert split "(fo+)" "f" == ["f"]; +assert split "(fo*)" "fo" == ["" ["fo"] ""]; +assert split "(f)(o*)" "f" == ["" ["f" ""] ""]; +assert split "(f)(o*)" "foo" == ["" ["f" "oo"] ""]; +assert split "(fo+)" "foo" == ["" ["foo"] ""]; +assert split "(fo{1,2})" "foo" == ["" ["foo"] ""]; +assert split "(fo{1,2})" "fooo" == ["" ["foo"] "o"]; +assert split "(fo*)" "foobar" == ["" ["foo"] "bar"]; + +# Matches are greedy. +assert split "(o+)" "oooofoooo" == ["" ["oooo"] "f" ["oooo"] ""]; + +# Matches multiple times. +assert split "(b)" "foobarbaz" == ["foo" ["b"] "ar" ["b"] "az"]; + +# Split large strings containing newlines. null are inserted when a +# pattern within the current did not match anything. +assert split "[[:space:]]+|([',.!?])" '' + Nix Rocks! + That's why I use it. +'' == [ + "Nix" [ null ] "Rocks" ["!"] "" [ null ] + "That" ["'"] "s" [ null ] "why" [ null ] "I" [ null ] "use" [ null ] "it" ["."] "" [ null ] + "" +]; + +# Documentation examples +assert split "(a)b" "abc" == [ "" [ "a" ] "c" ]; +assert split "([ac])" "abc" == [ "" [ "a" ] "b" [ "c" ] "" ]; +assert split "(a)|(c)" "abc" == [ "" [ "a" null ] "b" [ null "c" ] "" ]; +assert split "([[:upper:]]+)" " FOO " == [ " " [ "FOO" ] " " ]; + +true diff --git a/third_party/nix/src/tests/lang/eval-okay-remove.exp b/third_party/nix/src/tests/lang/eval-okay-remove.exp new file mode 100644 index 0000000000..8d38505c16 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-remove.exp @@ -0,0 +1 @@ +456 diff --git a/third_party/nix/src/tests/lang/eval-okay-remove.nix b/third_party/nix/src/tests/lang/eval-okay-remove.nix new file mode 100644 index 0000000000..4ad5ba897f --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-remove.nix @@ -0,0 +1,5 @@ +let { + attrs = {x = 123; y = 456;}; + + body = (removeAttrs attrs ["x"]).y; +} \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-okay-replacestrings.exp b/third_party/nix/src/tests/lang/eval-okay-replacestrings.exp new file mode 100644 index 0000000000..72e8274d8c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-replacestrings.exp @@ -0,0 +1 @@ +[ "faabar" "fbar" "fubar" "faboor" "fubar" "XaXbXcX" "X" "a_b" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-replacestrings.nix b/third_party/nix/src/tests/lang/eval-okay-replacestrings.nix new file mode 100644 index 0000000000..bd8031fc00 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-replacestrings.nix @@ -0,0 +1,11 @@ +with builtins; + +[ (replaceStrings ["o"] ["a"] "foobar") + (replaceStrings ["o"] [""] "foobar") + (replaceStrings ["oo"] ["u"] "foobar") + (replaceStrings ["oo" "a"] ["a" "oo"] "foobar") + (replaceStrings ["oo" "oo"] ["u" "i"] "foobar") + (replaceStrings [""] ["X"] "abc") + (replaceStrings [""] ["X"] "") + (replaceStrings ["-"] ["_"] "a-b") +] diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-1.exp b/third_party/nix/src/tests/lang/eval-okay-scope-1.exp new file mode 100644 index 0000000000..00750edc07 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-1.exp @@ -0,0 +1 @@ +3 diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-1.nix b/third_party/nix/src/tests/lang/eval-okay-scope-1.nix new file mode 100644 index 0000000000..fa38a7174e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-1.nix @@ -0,0 +1,6 @@ +(({x}: x: + + { x = 1; + y = x; + } +) {x = 2;} 3).y diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-2.exp b/third_party/nix/src/tests/lang/eval-okay-scope-2.exp new file mode 100644 index 0000000000..d00491fd7e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-2.exp @@ -0,0 +1 @@ +1 diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-2.nix b/third_party/nix/src/tests/lang/eval-okay-scope-2.nix new file mode 100644 index 0000000000..eb8b02bc49 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-2.nix @@ -0,0 +1,6 @@ +((x: {x}: + rec { + x = 1; + y = x; + } +) 2 {x = 3;}).y diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-3.exp b/third_party/nix/src/tests/lang/eval-okay-scope-3.exp new file mode 100644 index 0000000000..b8626c4cff --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-3.exp @@ -0,0 +1 @@ +4 diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-3.nix b/third_party/nix/src/tests/lang/eval-okay-scope-3.nix new file mode 100644 index 0000000000..10d6bc04d8 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-3.nix @@ -0,0 +1,6 @@ +((x: as: {x}: + rec { + inherit (as) x; + y = x; + } +) 2 {x = 4;} {x = 3;}).y diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-4.exp b/third_party/nix/src/tests/lang/eval-okay-scope-4.exp new file mode 100644 index 0000000000..00ff03a46c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-4.exp @@ -0,0 +1 @@ +"ccdd" diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-4.nix b/third_party/nix/src/tests/lang/eval-okay-scope-4.nix new file mode 100644 index 0000000000..dc8243bc85 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-4.nix @@ -0,0 +1,10 @@ +let { + + x = "a"; + y = "b"; + + f = {x ? y, y ? x}: x + y; + + body = f {x = "c";} + f {y = "d";}; + +} diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-6.exp b/third_party/nix/src/tests/lang/eval-okay-scope-6.exp new file mode 100644 index 0000000000..00ff03a46c --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-6.exp @@ -0,0 +1 @@ +"ccdd" diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-6.nix b/third_party/nix/src/tests/lang/eval-okay-scope-6.nix new file mode 100644 index 0000000000..0995d4e7e7 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-6.nix @@ -0,0 +1,7 @@ +let { + + f = {x ? y, y ? x}: x + y; + + body = f {x = "c";} + f {y = "d";}; + +} diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-7.exp b/third_party/nix/src/tests/lang/eval-okay-scope-7.exp new file mode 100644 index 0000000000..d00491fd7e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-7.exp @@ -0,0 +1 @@ +1 diff --git a/third_party/nix/src/tests/lang/eval-okay-scope-7.nix b/third_party/nix/src/tests/lang/eval-okay-scope-7.nix new file mode 100644 index 0000000000..4da02968f6 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-scope-7.nix @@ -0,0 +1,6 @@ +rec { + inherit (x) y; + x = { + y = 1; + }; +}.y diff --git a/third_party/nix/src/tests/lang/eval-okay-search-path.exp b/third_party/nix/src/tests/lang/eval-okay-search-path.exp new file mode 100644 index 0000000000..4519bc406d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-search-path.exp @@ -0,0 +1 @@ +"abccX" diff --git a/third_party/nix/src/tests/lang/eval-okay-search-path.flags b/third_party/nix/src/tests/lang/eval-okay-search-path.flags new file mode 100644 index 0000000000..a28e682100 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-search-path.flags @@ -0,0 +1 @@ +-I lang/dir1 -I lang/dir2 -I dir5=lang/dir3 \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/eval-okay-search-path.nix b/third_party/nix/src/tests/lang/eval-okay-search-path.nix new file mode 100644 index 0000000000..cca41f821f --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-search-path.nix @@ -0,0 +1,11 @@ +with import ./lib.nix; +with builtins; + +assert pathExists ; + +assert length __nixPath == 6; +assert length (filter (x: x.prefix == "nix") __nixPath) == 1; +assert length (filter (x: baseNameOf x.path == "dir4") __nixPath) == 1; + +import + import + import + import + + (let __nixPath = [ { path = ./dir2; } { path = ./dir1; } ]; in import ) diff --git a/third_party/nix/src/tests/lang/eval-okay-seq.exp b/third_party/nix/src/tests/lang/eval-okay-seq.exp new file mode 100644 index 0000000000..0cfbf08886 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-seq.exp @@ -0,0 +1 @@ +2 diff --git a/third_party/nix/src/tests/lang/eval-okay-seq.nix b/third_party/nix/src/tests/lang/eval-okay-seq.nix new file mode 100644 index 0000000000..0a9a21c03b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-seq.nix @@ -0,0 +1 @@ +builtins.seq 1 2 diff --git a/third_party/nix/src/tests/lang/eval-okay-sort.exp b/third_party/nix/src/tests/lang/eval-okay-sort.exp new file mode 100644 index 0000000000..148b935163 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-sort.exp @@ -0,0 +1 @@ +[ [ 42 77 147 249 483 526 ] [ 526 483 249 147 77 42 ] [ "bar" "fnord" "foo" "xyzzy" ] [ { key = 1; value = "foo"; } { key = 1; value = "fnord"; } { key = 2; value = "bar"; } ] ] diff --git a/third_party/nix/src/tests/lang/eval-okay-sort.nix b/third_party/nix/src/tests/lang/eval-okay-sort.nix new file mode 100644 index 0000000000..8299c3a4a3 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-sort.nix @@ -0,0 +1,8 @@ +with builtins; + +[ (sort lessThan [ 483 249 526 147 42 77 ]) + (sort (x: y: y < x) [ 483 249 526 147 42 77 ]) + (sort lessThan [ "foo" "bar" "xyzzy" "fnord" ]) + (sort (x: y: x.key < y.key) + [ { key = 1; value = "foo"; } { key = 2; value = "bar"; } { key = 1; value = "fnord"; } ]) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-splitversion.exp b/third_party/nix/src/tests/lang/eval-okay-splitversion.exp new file mode 100644 index 0000000000..153ceb8186 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-splitversion.exp @@ -0,0 +1 @@ +[ "1" "2" "3" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-splitversion.nix b/third_party/nix/src/tests/lang/eval-okay-splitversion.nix new file mode 100644 index 0000000000..9e5c99d2e7 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-splitversion.nix @@ -0,0 +1 @@ +builtins.splitVersion "1.2.3" diff --git a/third_party/nix/src/tests/lang/eval-okay-string.exp b/third_party/nix/src/tests/lang/eval-okay-string.exp new file mode 100644 index 0000000000..63f650f73a --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-string.exp @@ -0,0 +1 @@ +"foobar/a/b/c/d/foo/xyzzy/foo.txt/../foo/x/yescape: \"quote\" \n \\end\nof\nlinefoobarblaatfoo$bar$\"$\"$" diff --git a/third_party/nix/src/tests/lang/eval-okay-string.nix b/third_party/nix/src/tests/lang/eval-okay-string.nix new file mode 100644 index 0000000000..47cc989ad4 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-string.nix @@ -0,0 +1,12 @@ +"foo" + "bar" + + toString (/a/b + /c/d) + + toString (/foo/bar + "/../xyzzy/." + "/foo.txt") + + ("/../foo" + toString /x/y) + + "escape: \"quote\" \n \\" + + "end +of +line" + + "foo${if true then "b${"a" + "r"}" else "xyzzy"}blaat" + + "foo$bar" + + "$\"$\"" + + "$" diff --git a/third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.exp b/third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.nix b/third_party/nix/src/tests/lang/eval-okay-strings-as-attrs-names.nix new file mode 100644 index 0000000000..5e40928dbe --- /dev/null +++ b/third_party/nix/src/tests/lang/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"] diff --git a/third_party/nix/src/tests/lang/eval-okay-substring.exp b/third_party/nix/src/tests/lang/eval-okay-substring.exp new file mode 100644 index 0000000000..6aace04b0f --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-substring.exp @@ -0,0 +1 @@ +"ooxfoobarybarzobaabbc" diff --git a/third_party/nix/src/tests/lang/eval-okay-substring.nix b/third_party/nix/src/tests/lang/eval-okay-substring.nix new file mode 100644 index 0000000000..424af00d9b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-substring.nix @@ -0,0 +1,21 @@ +with builtins; + +let + + s = "foobar"; + +in + +substring 1 2 s ++ "x" ++ substring 0 (stringLength s) s ++ "y" ++ substring 3 100 s ++ "z" ++ substring 2 (sub (stringLength s) 3) s ++ "a" ++ substring 3 0 s ++ "b" ++ substring 3 1 s ++ "c" ++ substring 5 10 "perl" diff --git a/third_party/nix/src/tests/lang/eval-okay-tail-call-1.exp-disabled b/third_party/nix/src/tests/lang/eval-okay-tail-call-1.exp-disabled new file mode 100644 index 0000000000..f7393e847d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tail-call-1.exp-disabled @@ -0,0 +1 @@ +100000 diff --git a/third_party/nix/src/tests/lang/eval-okay-tail-call-1.nix b/third_party/nix/src/tests/lang/eval-okay-tail-call-1.nix new file mode 100644 index 0000000000..a3962ce3fd --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tail-call-1.nix @@ -0,0 +1,3 @@ +let + f = n: if n == 100000 then n else f (n + 1); +in f 0 diff --git a/third_party/nix/src/tests/lang/eval-okay-tojson.exp b/third_party/nix/src/tests/lang/eval-okay-tojson.exp new file mode 100644 index 0000000000..e92aae3235 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tojson.exp @@ -0,0 +1 @@ +"{\"a\":123,\"b\":-456,\"c\":\"foo\",\"d\":\"foo\\n\\\"bar\\\"\",\"e\":true,\"f\":false,\"g\":[1,2,3],\"h\":[\"a\",[\"b\",{\"foo\\nbar\":{}}]],\"i\":3,\"j\":1.44,\"k\":\"foo\"}" diff --git a/third_party/nix/src/tests/lang/eval-okay-tojson.nix b/third_party/nix/src/tests/lang/eval-okay-tojson.nix new file mode 100644 index 0000000000..ce67943bea --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tojson.nix @@ -0,0 +1,13 @@ +builtins.toJSON + { a = 123; + b = -456; + c = "foo"; + d = "foo\n\"bar\""; + e = true; + f = false; + g = [ 1 2 3 ]; + h = [ "a" [ "b" { "foo\nbar" = {}; } ] ]; + i = 1 + 2; + j = 1.44; + k = { __toString = self: self.a; a = "foo"; }; + } diff --git a/third_party/nix/src/tests/lang/eval-okay-toxml.exp b/third_party/nix/src/tests/lang/eval-okay-toxml.exp new file mode 100644 index 0000000000..828220890e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-toxml.exp @@ -0,0 +1 @@ +"\n\n \n \n \n \n \n\n" diff --git a/third_party/nix/src/tests/lang/eval-okay-toxml.nix b/third_party/nix/src/tests/lang/eval-okay-toxml.nix new file mode 100644 index 0000000000..068c97a6c1 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-toxml.nix @@ -0,0 +1,3 @@ +# Make sure the expected XML output is produced; in particular, make sure it +# doesn't contain source location information. +builtins.toXML { a = "s"; } diff --git a/third_party/nix/src/tests/lang/eval-okay-toxml2.exp b/third_party/nix/src/tests/lang/eval-okay-toxml2.exp new file mode 100644 index 0000000000..634a841eb1 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-toxml2.exp @@ -0,0 +1 @@ +"\n\n \n \n \n \n \n \n \n \n \n \n \n \n\n" diff --git a/third_party/nix/src/tests/lang/eval-okay-toxml2.nix b/third_party/nix/src/tests/lang/eval-okay-toxml2.nix new file mode 100644 index 0000000000..ff1791b30e --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-toxml2.nix @@ -0,0 +1 @@ +builtins.toXML [("a" + "b") 10 (rec {x = "x"; y = x;})] diff --git a/third_party/nix/src/tests/lang/eval-okay-tryeval.exp b/third_party/nix/src/tests/lang/eval-okay-tryeval.exp new file mode 100644 index 0000000000..2b2e6fa711 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tryeval.exp @@ -0,0 +1 @@ +{ x = { success = true; value = "x"; }; y = { success = false; value = false; }; z = { success = false; value = false; }; } diff --git a/third_party/nix/src/tests/lang/eval-okay-tryeval.nix b/third_party/nix/src/tests/lang/eval-okay-tryeval.nix new file mode 100644 index 0000000000..629bc440a8 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-tryeval.nix @@ -0,0 +1,5 @@ +{ + x = builtins.tryEval "x"; + y = builtins.tryEval (assert false; "y"); + z = builtins.tryEval (throw "bla"); +} diff --git a/third_party/nix/src/tests/lang/eval-okay-types.exp b/third_party/nix/src/tests/lang/eval-okay-types.exp new file mode 100644 index 0000000000..92a1532993 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-types.exp @@ -0,0 +1 @@ +[ true false true false true false true false true true true true true true true true true true true false true true true false "int" "bool" "string" "null" "set" "list" "lambda" "lambda" "lambda" "lambda" ] diff --git a/third_party/nix/src/tests/lang/eval-okay-types.nix b/third_party/nix/src/tests/lang/eval-okay-types.nix new file mode 100644 index 0000000000..9b58be5d1d --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-types.nix @@ -0,0 +1,37 @@ +with builtins; + +[ (isNull null) + (isNull (x: x)) + (isFunction (x: x)) + (isFunction "fnord") + (isString ("foo" + "bar")) + (isString [ "x" ]) + (isInt (1 + 2)) + (isInt { x = 123; }) + (isInt (1 / 2)) + (isInt (1 + 1)) + (isInt (1 / 2)) + (isInt (1 * 2)) + (isInt (1 - 2)) + (isFloat (1.2)) + (isFloat (1 + 1.0)) + (isFloat (1 / 2.0)) + (isFloat (1 * 2.0)) + (isFloat (1 - 2.0)) + (isBool (true && false)) + (isBool null) + (isPath /nix/store) + (isPath ./.) + (isAttrs { x = 123; }) + (isAttrs null) + (typeOf (3 * 4)) + (typeOf true) + (typeOf "xyzzy") + (typeOf null) + (typeOf { x = 456; }) + (typeOf [ 1 2 3 ]) + (typeOf (x: x)) + (typeOf ((x: y: x) 1)) + (typeOf map) + (typeOf (map (x: x))) +] diff --git a/third_party/nix/src/tests/lang/eval-okay-versions.exp b/third_party/nix/src/tests/lang/eval-okay-versions.exp new file mode 100644 index 0000000000..27ba77ddaf --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-versions.exp @@ -0,0 +1 @@ +true diff --git a/third_party/nix/src/tests/lang/eval-okay-versions.nix b/third_party/nix/src/tests/lang/eval-okay-versions.nix new file mode 100644 index 0000000000..e63c36586b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-versions.nix @@ -0,0 +1,40 @@ +let + + name1 = "hello-1.0.2"; + name2 = "hello"; + name3 = "915resolution-0.5.2"; + name4 = "xf86-video-i810-1.7.4"; + + eq = 0; + lt = builtins.sub 0 1; + gt = 1; + + versionTest = v1: v2: expected: + let d1 = builtins.compareVersions v1 v2; + d2 = builtins.compareVersions v2 v1; + in d1 == builtins.sub 0 d2 && d1 == expected; + + tests = [ + ((builtins.parseDrvName name1).name == "hello") + ((builtins.parseDrvName name1).version == "1.0.2") + ((builtins.parseDrvName name2).name == "hello") + ((builtins.parseDrvName name2).version == "") + ((builtins.parseDrvName name3).name == "915resolution") + ((builtins.parseDrvName name3).version == "0.5.2") + ((builtins.parseDrvName name4).name == "xf86-video-i810") + ((builtins.parseDrvName name4).version == "1.7.4") + (versionTest "1.0" "2.3" lt) + (versionTest "2.1" "2.3" lt) + (versionTest "2.3" "2.3" eq) + (versionTest "2.5" "2.3" gt) + (versionTest "3.1" "2.3" gt) + (versionTest "2.3.1" "2.3" gt) + (versionTest "2.3.1" "2.3a" gt) + (versionTest "2.3pre1" "2.3" lt) + (versionTest "2.3pre3" "2.3pre12" lt) + (versionTest "2.3a" "2.3c" lt) + (versionTest "2.3pre1" "2.3c" lt) + (versionTest "2.3pre1" "2.3q" lt) + ]; + +in (import ./lib.nix).and tests diff --git a/third_party/nix/src/tests/lang/eval-okay-with.exp b/third_party/nix/src/tests/lang/eval-okay-with.exp new file mode 100644 index 0000000000..378c8dc804 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-with.exp @@ -0,0 +1 @@ +"xyzzybarxyzzybar" diff --git a/third_party/nix/src/tests/lang/eval-okay-with.nix b/third_party/nix/src/tests/lang/eval-okay-with.nix new file mode 100644 index 0000000000..033e8d3aba --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-with.nix @@ -0,0 +1,19 @@ +let { + + a = "xyzzy"; + + as = { + a = "foo"; + b = "bar"; + }; + + bs = { + a = "bar"; + }; + + x = with as; a + b; + + y = with as; with bs; a + b; + + body = x + y; +} diff --git a/third_party/nix/src/tests/lang/eval-okay-xml.exp.xml b/third_party/nix/src/tests/lang/eval-okay-xml.exp.xml new file mode 100644 index 0000000000..92b75e0b8b --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-xml.exp.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/third_party/nix/src/tests/lang/eval-okay-xml.nix b/third_party/nix/src/tests/lang/eval-okay-xml.nix new file mode 100644 index 0000000000..9ee9f8a0b4 --- /dev/null +++ b/third_party/nix/src/tests/lang/eval-okay-xml.nix @@ -0,0 +1,21 @@ +rec { + + x = 123; + + y = 567.890; + + a = "foo"; + + b = "bar"; + + c = "foo" + "bar"; + + f = {z, x, y}: if y then x else z; + + id = x: x; + + at = args@{x, y, z}: x; + + ellipsis = {x, y, z, ...}: x; + +} diff --git a/third_party/nix/src/tests/lang/imported.nix b/third_party/nix/src/tests/lang/imported.nix new file mode 100644 index 0000000000..fb39ee4efa --- /dev/null +++ b/third_party/nix/src/tests/lang/imported.nix @@ -0,0 +1,3 @@ +# The function ‘range’ comes from lib.nix and was added to the lexical +# scope by scopedImport. +range 1 5 ++ import ./imported2.nix diff --git a/third_party/nix/src/tests/lang/imported2.nix b/third_party/nix/src/tests/lang/imported2.nix new file mode 100644 index 0000000000..6d0a2992b7 --- /dev/null +++ b/third_party/nix/src/tests/lang/imported2.nix @@ -0,0 +1 @@ +range 6 10 diff --git a/third_party/nix/src/tests/lang/lib.nix b/third_party/nix/src/tests/lang/lib.nix new file mode 100644 index 0000000000..028a538314 --- /dev/null +++ b/third_party/nix/src/tests/lang/lib.nix @@ -0,0 +1,61 @@ +with builtins; + +rec { + + fold = op: nul: list: + if list == [] + then nul + else op (head list) (fold op nul (tail list)); + + concat = + fold (x: y: x + y) ""; + + and = fold (x: y: x && y) true; + + flatten = x: + if isList x + then fold (x: y: (flatten x) ++ y) [] x + else [x]; + + sum = foldl' (x: y: add x y) 0; + + hasSuffix = ext: fileName: + let lenFileName = stringLength fileName; + lenExt = stringLength ext; + in !(lessThan lenFileName lenExt) && + substring (sub lenFileName lenExt) lenFileName fileName == ext; + + # Split a list at the given position. + splitAt = pos: list: + if pos == 0 then {first = []; second = list;} else + if list == [] then {first = []; second = [];} else + let res = splitAt (sub pos 1) (tail list); + in {first = [(head list)] ++ res.first; second = res.second;}; + + # Stable merge sort. + sortBy = comp: list: + if lessThan 1 (length list) + then + let + split = splitAt (div (length list) 2) list; + first = sortBy comp split.first; + second = sortBy comp split.second; + in mergeLists comp first second + else list; + + mergeLists = comp: list1: list2: + if list1 == [] then list2 else + if list2 == [] then list1 else + if comp (head list2) (head list1) then [(head list2)] ++ mergeLists comp list1 (tail list2) else + [(head list1)] ++ mergeLists comp (tail list1) list2; + + id = x: x; + + const = x: y: x; + + range = first: last: + if first > last + then [] + else genList (n: first + n) (last - first + 1); + +} diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-attrs-1.nix b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-1.nix new file mode 100644 index 0000000000..e590e8a04e --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-1.nix @@ -0,0 +1,5 @@ +{ + x = 123; + y = 456; + x = 789; +} diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-attrs-2.nix b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-2.nix new file mode 100644 index 0000000000..864d9865e0 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-2.nix @@ -0,0 +1,13 @@ +let { + + as = { + x = 123; + y = 456; + }; + + bs = { + x = 789; + inherit (as) x; + }; + +} diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-attrs-3.nix b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-3.nix new file mode 100644 index 0000000000..114d19779f --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-3.nix @@ -0,0 +1,13 @@ +let { + + as = { + x = 123; + y = 456; + }; + + bs = rec { + x = 789; + inherit (as) x; + }; + +} diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-attrs-4.nix b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-4.nix new file mode 100644 index 0000000000..77417432b3 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-4.nix @@ -0,0 +1,4 @@ +{ + services.ssh.port = 22; + services.ssh.port = 23; +} diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-attrs-7.nix b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-7.nix new file mode 100644 index 0000000000..bbc3eb08c0 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-attrs-7.nix @@ -0,0 +1,9 @@ +rec { + + x = 1; + + as = { + inherit x; + inherit x; + }; +} \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/parse-fail-dup-formals.nix b/third_party/nix/src/tests/lang/parse-fail-dup-formals.nix new file mode 100644 index 0000000000..a0edd91a96 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-dup-formals.nix @@ -0,0 +1 @@ +{x, y, x}: x \ No newline at end of file diff --git a/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs1.nix b/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs1.nix new file mode 100644 index 0000000000..11e40e66fd --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs1.nix @@ -0,0 +1,4 @@ +{ + x.z = 3; + x = { y = 3; z = 3; }; +} diff --git a/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs2.nix b/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs2.nix new file mode 100644 index 0000000000..17da82e5f0 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-mixed-nested-attrs2.nix @@ -0,0 +1,4 @@ +{ + x.y.y = 3; + x = { y.y= 3; z = 3; }; +} diff --git a/third_party/nix/src/tests/lang/parse-fail-path-slash.nix b/third_party/nix/src/tests/lang/parse-fail-path-slash.nix new file mode 100644 index 0000000000..8c2e104c78 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-path-slash.nix @@ -0,0 +1,6 @@ +# Trailing slashes in paths are not allowed. +# This restriction could be lifted sometime, +# for example if we make '/' a path concatenation operator. +# See https://github.com/NixOS/nix/issues/1138 +# and https://nixos.org/nix-dev/2016-June/020829.html +/nix/store/ diff --git a/third_party/nix/src/tests/lang/parse-fail-patterns-1.nix b/third_party/nix/src/tests/lang/parse-fail-patterns-1.nix new file mode 100644 index 0000000000..7b40616417 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-patterns-1.nix @@ -0,0 +1 @@ +args@{args, x, y, z}: x diff --git a/third_party/nix/src/tests/lang/parse-fail-regression-20060610.nix b/third_party/nix/src/tests/lang/parse-fail-regression-20060610.nix new file mode 100644 index 0000000000..b1934f7e1e --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-regression-20060610.nix @@ -0,0 +1,11 @@ +let { + x = + {gcc}: + { + inherit gcc; + }; + + body = ({ + inherit gcc; + }).gcc; +} diff --git a/third_party/nix/src/tests/lang/parse-fail-uft8.nix b/third_party/nix/src/tests/lang/parse-fail-uft8.nix new file mode 100644 index 0000000000..34948d48ae --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-uft8.nix @@ -0,0 +1 @@ +123 é 4 diff --git a/third_party/nix/src/tests/lang/parse-fail-undef-var-2.nix b/third_party/nix/src/tests/lang/parse-fail-undef-var-2.nix new file mode 100644 index 0000000000..c10a52b1ea --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-undef-var-2.nix @@ -0,0 +1,7 @@ +let { + + f = {x, y : ["baz" "bar" z "bat"]}: x + y; + + body = f {x = "foo"; y = "bar";}; + +} diff --git a/third_party/nix/src/tests/lang/parse-fail-undef-var.nix b/third_party/nix/src/tests/lang/parse-fail-undef-var.nix new file mode 100644 index 0000000000..7b63008110 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-fail-undef-var.nix @@ -0,0 +1 @@ +x: y diff --git a/third_party/nix/src/tests/lang/parse-okay-1.nix b/third_party/nix/src/tests/lang/parse-okay-1.nix new file mode 100644 index 0000000000..23a58ed109 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-1.nix @@ -0,0 +1 @@ +{x, y, z}: x + y + z diff --git a/third_party/nix/src/tests/lang/parse-okay-crlf.nix b/third_party/nix/src/tests/lang/parse-okay-crlf.nix new file mode 100644 index 0000000000..21518d4c6d --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-crlf.nix @@ -0,0 +1,17 @@ +rec { + + /* Dit is + een test. */ + + x = + # Dit is een test. y; + + y = 123; + + # CR or CR/LF (but not explicit \r's) in strings should be + # translated to LF. + foo = "multi line + string + test\r"; + + z = 456; } diff --git a/third_party/nix/src/tests/lang/parse-okay-dup-attrs-5.nix b/third_party/nix/src/tests/lang/parse-okay-dup-attrs-5.nix new file mode 100644 index 0000000000..f4b9efd0c5 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-dup-attrs-5.nix @@ -0,0 +1,4 @@ +{ + services.ssh = { enable = true; }; + services.ssh.port = 23; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-dup-attrs-6.nix b/third_party/nix/src/tests/lang/parse-okay-dup-attrs-6.nix new file mode 100644 index 0000000000..ae6d7a7693 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-dup-attrs-6.nix @@ -0,0 +1,4 @@ +{ + services.ssh.port = 23; + services.ssh = { enable = true; }; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-1.nix b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-1.nix new file mode 100644 index 0000000000..fd1001c8ca --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-1.nix @@ -0,0 +1,4 @@ +{ + x = { y = 3; z = 3; }; + x.q = 3; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-2.nix b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-2.nix new file mode 100644 index 0000000000..ad066b6803 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-2.nix @@ -0,0 +1,4 @@ +{ + x.q = 3; + x = { y = 3; z = 3; }; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-3.nix b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-3.nix new file mode 100644 index 0000000000..45a33e4803 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-mixed-nested-attrs-3.nix @@ -0,0 +1,7 @@ +{ + services.ssh.enable = true; + services.ssh = { port = 123; }; + services = { + httpd.enable = true; + }; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-regression-20041027.nix b/third_party/nix/src/tests/lang/parse-okay-regression-20041027.nix new file mode 100644 index 0000000000..ae2e256eea --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-regression-20041027.nix @@ -0,0 +1,11 @@ +{stdenv, fetchurl /* pkgconfig, libX11 */ }: + +stdenv.mkDerivation { + name = "libXi-6.0.1"; + src = fetchurl { + url = http://freedesktop.org/~xlibs/release/libXi-6.0.1.tar.bz2; + md5 = "7e935a42428d63a387b3c048be0f2756"; + }; +/* buildInputs = [pkgconfig]; + propagatedBuildInputs = [libX11]; */ +} diff --git a/third_party/nix/src/tests/lang/parse-okay-regression-751.nix b/third_party/nix/src/tests/lang/parse-okay-regression-751.nix new file mode 100644 index 0000000000..05c78b3016 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-regression-751.nix @@ -0,0 +1,2 @@ +let const = a: "const"; in +''${ const { x = "q"; }}'' diff --git a/third_party/nix/src/tests/lang/parse-okay-subversion.nix b/third_party/nix/src/tests/lang/parse-okay-subversion.nix new file mode 100644 index 0000000000..356272815d --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-subversion.nix @@ -0,0 +1,43 @@ +{ localServer ? false +, httpServer ? false +, sslSupport ? false +, pythonBindings ? false +, javaSwigBindings ? false +, javahlBindings ? false +, stdenv, fetchurl +, openssl ? null, httpd ? null, db4 ? null, expat, swig ? null, j2sdk ? null +}: + +assert expat != null; +assert localServer -> db4 != null; +assert httpServer -> httpd != null && httpd.expat == expat; +assert sslSupport -> openssl != null && (httpServer -> httpd.openssl == openssl); +assert pythonBindings -> swig != null && swig.pythonSupport; +assert javaSwigBindings -> swig != null && swig.javaSupport; +assert javahlBindings -> j2sdk != null; + +stdenv.mkDerivation { + name = "subversion-1.1.1"; + + builder = /foo/bar; + src = fetchurl { + url = http://subversion.tigris.org/tarballs/subversion-1.1.1.tar.bz2; + md5 = "a180c3fe91680389c210c99def54d9e0"; + }; + + # This is a hopefully temporary fix for the problem that + # libsvnjavahl.so isn't linked against libstdc++, which causes + # loading the library into the JVM to fail. + patches = if javahlBindings then [/javahl.patch] else []; + + openssl = if sslSupport then openssl else null; + httpd = if httpServer then httpd else null; + db4 = if localServer then db4 else null; + swig = if pythonBindings || javaSwigBindings then swig else null; + python = if pythonBindings then swig.python else null; + j2sdk = if javaSwigBindings then swig.j2sdk else + if javahlBindings then j2sdk else null; + + inherit expat localServer httpServer sslSupport + pythonBindings javaSwigBindings javahlBindings; +} diff --git a/third_party/nix/src/tests/lang/parse-okay-url.nix b/third_party/nix/src/tests/lang/parse-okay-url.nix new file mode 100644 index 0000000000..fce3b13ee6 --- /dev/null +++ b/third_party/nix/src/tests/lang/parse-okay-url.nix @@ -0,0 +1,7 @@ +[ x:x + https://svn.cs.uu.nl:12443/repos/trace/trunk + http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 + http://losser.st-lab.cs.uu.nl/~armijn/.nix/gcc-3.3.4-static-nix.tar.gz + http://fpdownload.macromedia.com/get/shockwave/flash/english/linux/7.0r25/install_flash_player_7_linux.tar.gz + ftp://ftp.gtk.org/pub/gtk/v1.2/gtk+-1.2.10.tar.gz +] diff --git a/third_party/nix/src/tests/lang/readDir/bar b/third_party/nix/src/tests/lang/readDir/bar new file mode 100644 index 0000000000..e69de29bb2 diff --git a/third_party/nix/src/tests/lang/readDir/foo/git-hates-directories b/third_party/nix/src/tests/lang/readDir/foo/git-hates-directories new file mode 100644 index 0000000000..e69de29bb2 diff --git a/third_party/nix/tests/lang/binary-data b/third_party/nix/tests/lang/binary-data deleted file mode 100644 index 06d7405020..0000000000 Binary files a/third_party/nix/tests/lang/binary-data and /dev/null differ diff --git a/third_party/nix/tests/lang/data b/third_party/nix/tests/lang/data deleted file mode 100644 index 257cc5642c..0000000000 --- a/third_party/nix/tests/lang/data +++ /dev/null @@ -1 +0,0 @@ -foo diff --git a/third_party/nix/tests/lang/dir1/a.nix b/third_party/nix/tests/lang/dir1/a.nix deleted file mode 100644 index 231f150c57..0000000000 --- a/third_party/nix/tests/lang/dir1/a.nix +++ /dev/null @@ -1 +0,0 @@ -"a" diff --git a/third_party/nix/tests/lang/dir2/a.nix b/third_party/nix/tests/lang/dir2/a.nix deleted file mode 100644 index 170df520ab..0000000000 --- a/third_party/nix/tests/lang/dir2/a.nix +++ /dev/null @@ -1 +0,0 @@ -"X" diff --git a/third_party/nix/tests/lang/dir2/b.nix b/third_party/nix/tests/lang/dir2/b.nix deleted file mode 100644 index 19010cc35c..0000000000 --- a/third_party/nix/tests/lang/dir2/b.nix +++ /dev/null @@ -1 +0,0 @@ -"b" diff --git a/third_party/nix/tests/lang/dir3/a.nix b/third_party/nix/tests/lang/dir3/a.nix deleted file mode 100644 index 170df520ab..0000000000 --- a/third_party/nix/tests/lang/dir3/a.nix +++ /dev/null @@ -1 +0,0 @@ -"X" diff --git a/third_party/nix/tests/lang/dir3/b.nix b/third_party/nix/tests/lang/dir3/b.nix deleted file mode 100644 index 170df520ab..0000000000 --- a/third_party/nix/tests/lang/dir3/b.nix +++ /dev/null @@ -1 +0,0 @@ -"X" diff --git a/third_party/nix/tests/lang/dir3/c.nix b/third_party/nix/tests/lang/dir3/c.nix deleted file mode 100644 index cdf158597e..0000000000 --- a/third_party/nix/tests/lang/dir3/c.nix +++ /dev/null @@ -1 +0,0 @@ -"c" diff --git a/third_party/nix/tests/lang/dir4/a.nix b/third_party/nix/tests/lang/dir4/a.nix deleted file mode 100644 index 170df520ab..0000000000 --- a/third_party/nix/tests/lang/dir4/a.nix +++ /dev/null @@ -1 +0,0 @@ -"X" diff --git a/third_party/nix/tests/lang/dir4/c.nix b/third_party/nix/tests/lang/dir4/c.nix deleted file mode 100644 index 170df520ab..0000000000 --- a/third_party/nix/tests/lang/dir4/c.nix +++ /dev/null @@ -1 +0,0 @@ -"X" diff --git a/third_party/nix/tests/lang/eval-fail-abort.nix b/third_party/nix/tests/lang/eval-fail-abort.nix deleted file mode 100644 index 75c51bceb5..0000000000 --- a/third_party/nix/tests/lang/eval-fail-abort.nix +++ /dev/null @@ -1 +0,0 @@ -if true then abort "this should fail" else 1 diff --git a/third_party/nix/tests/lang/eval-fail-antiquoted-path.nix b/third_party/nix/tests/lang/eval-fail-antiquoted-path.nix deleted file mode 100644 index f2f08107b5..0000000000 --- a/third_party/nix/tests/lang/eval-fail-antiquoted-path.nix +++ /dev/null @@ -1,4 +0,0 @@ -# This must fail to evaluate, since ./fnord doesn't exist. If it did -# exist, it would produce "/nix/store/-fnord/xyzzy" (with an -# appropriate context). -"${./fnord}/xyzzy" diff --git a/third_party/nix/tests/lang/eval-fail-assert.nix b/third_party/nix/tests/lang/eval-fail-assert.nix deleted file mode 100644 index 3b7a1e8bf0..0000000000 --- a/third_party/nix/tests/lang/eval-fail-assert.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - x = arg: assert arg == "y"; 123; - - body = x "x"; -} \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-fail-bad-antiquote-1.nix b/third_party/nix/tests/lang/eval-fail-bad-antiquote-1.nix deleted file mode 100644 index ffe9c983c2..0000000000 --- a/third_party/nix/tests/lang/eval-fail-bad-antiquote-1.nix +++ /dev/null @@ -1 +0,0 @@ -"${x: x}" diff --git a/third_party/nix/tests/lang/eval-fail-bad-antiquote-2.nix b/third_party/nix/tests/lang/eval-fail-bad-antiquote-2.nix deleted file mode 100644 index 3745235ce9..0000000000 --- a/third_party/nix/tests/lang/eval-fail-bad-antiquote-2.nix +++ /dev/null @@ -1 +0,0 @@ -"${./fnord}" diff --git a/third_party/nix/tests/lang/eval-fail-bad-antiquote-3.nix b/third_party/nix/tests/lang/eval-fail-bad-antiquote-3.nix deleted file mode 100644 index 65b9d4f505..0000000000 --- a/third_party/nix/tests/lang/eval-fail-bad-antiquote-3.nix +++ /dev/null @@ -1 +0,0 @@ -''${x: x}'' diff --git a/third_party/nix/tests/lang/eval-fail-blackhole.nix b/third_party/nix/tests/lang/eval-fail-blackhole.nix deleted file mode 100644 index 81133b511c..0000000000 --- a/third_party/nix/tests/lang/eval-fail-blackhole.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - body = x; - x = y; - y = x; -} diff --git a/third_party/nix/tests/lang/eval-fail-deepseq.nix b/third_party/nix/tests/lang/eval-fail-deepseq.nix deleted file mode 100644 index 9baa49b063..0000000000 --- a/third_party/nix/tests/lang/eval-fail-deepseq.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.deepSeq { x = abort "foo"; } 456 diff --git a/third_party/nix/tests/lang/eval-fail-hashfile-missing.nix b/third_party/nix/tests/lang/eval-fail-hashfile-missing.nix deleted file mode 100644 index ce098b8238..0000000000 --- a/third_party/nix/tests/lang/eval-fail-hashfile-missing.nix +++ /dev/null @@ -1,5 +0,0 @@ -let - paths = [ ./this-file-is-definitely-not-there-7392097 "/and/neither/is/this/37293620" ]; -in - toString (builtins.concatLists (map (hash: map (builtins.hashFile hash) paths) ["md5" "sha1" "sha256" "sha512"])) - diff --git a/third_party/nix/tests/lang/eval-fail-missing-arg.nix b/third_party/nix/tests/lang/eval-fail-missing-arg.nix deleted file mode 100644 index c4be9797c5..0000000000 --- a/third_party/nix/tests/lang/eval-fail-missing-arg.nix +++ /dev/null @@ -1 +0,0 @@ -({x, y, z}: x + y + z) {x = "foo"; z = "bar";} diff --git a/third_party/nix/tests/lang/eval-fail-path-slash.nix b/third_party/nix/tests/lang/eval-fail-path-slash.nix deleted file mode 100644 index 8c2e104c78..0000000000 --- a/third_party/nix/tests/lang/eval-fail-path-slash.nix +++ /dev/null @@ -1,6 +0,0 @@ -# Trailing slashes in paths are not allowed. -# This restriction could be lifted sometime, -# for example if we make '/' a path concatenation operator. -# See https://github.com/NixOS/nix/issues/1138 -# and https://nixos.org/nix-dev/2016-June/020829.html -/nix/store/ diff --git a/third_party/nix/tests/lang/eval-fail-remove.nix b/third_party/nix/tests/lang/eval-fail-remove.nix deleted file mode 100644 index 539e0eb0a6..0000000000 --- a/third_party/nix/tests/lang/eval-fail-remove.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - attrs = {x = 123; y = 456;}; - - body = (removeAttrs attrs ["x"]).x; -} \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-fail-scope-5.nix b/third_party/nix/tests/lang/eval-fail-scope-5.nix deleted file mode 100644 index f89a65a99b..0000000000 --- a/third_party/nix/tests/lang/eval-fail-scope-5.nix +++ /dev/null @@ -1,10 +0,0 @@ -let { - - x = "a"; - y = "b"; - - f = {x ? y, y ? x}: x + y; - - body = f {}; - -} diff --git a/third_party/nix/tests/lang/eval-fail-seq.nix b/third_party/nix/tests/lang/eval-fail-seq.nix deleted file mode 100644 index cddbbfd326..0000000000 --- a/third_party/nix/tests/lang/eval-fail-seq.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.seq (abort "foo") 2 diff --git a/third_party/nix/tests/lang/eval-fail-substring.nix b/third_party/nix/tests/lang/eval-fail-substring.nix deleted file mode 100644 index f37c2bc0a1..0000000000 --- a/third_party/nix/tests/lang/eval-fail-substring.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.substring (builtins.sub 0 1) 1 "x" diff --git a/third_party/nix/tests/lang/eval-fail-to-path.nix b/third_party/nix/tests/lang/eval-fail-to-path.nix deleted file mode 100644 index 5e322bc313..0000000000 --- a/third_party/nix/tests/lang/eval-fail-to-path.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.toPath "foo/bar" diff --git a/third_party/nix/tests/lang/eval-fail-undeclared-arg.nix b/third_party/nix/tests/lang/eval-fail-undeclared-arg.nix deleted file mode 100644 index cafdf16362..0000000000 --- a/third_party/nix/tests/lang/eval-fail-undeclared-arg.nix +++ /dev/null @@ -1 +0,0 @@ -({x, z}: x + z) {x = "foo"; y = "bla"; z = "bar";} diff --git a/third_party/nix/tests/lang/eval-okay-any-all.exp b/third_party/nix/tests/lang/eval-okay-any-all.exp deleted file mode 100644 index eb273f45b2..0000000000 --- a/third_party/nix/tests/lang/eval-okay-any-all.exp +++ /dev/null @@ -1 +0,0 @@ -[ false false true true true true false true ] diff --git a/third_party/nix/tests/lang/eval-okay-any-all.nix b/third_party/nix/tests/lang/eval-okay-any-all.nix deleted file mode 100644 index a3f26ea2aa..0000000000 --- a/third_party/nix/tests/lang/eval-okay-any-all.nix +++ /dev/null @@ -1,11 +0,0 @@ -with builtins; - -[ (any (x: x == 1) []) - (any (x: x == 1) [2 3 4]) - (any (x: x == 1) [1 2 3 4]) - (any (x: x == 1) [4 3 2 1]) - (all (x: x == 1) []) - (all (x: x == 1) [1]) - (all (x: x == 1) [1 2 3]) - (all (x: x == 1) [1 1 1]) -] diff --git a/third_party/nix/tests/lang/eval-okay-arithmetic.exp b/third_party/nix/tests/lang/eval-okay-arithmetic.exp deleted file mode 100644 index 5c54d10b7b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-arithmetic.exp +++ /dev/null @@ -1 +0,0 @@ -2216 diff --git a/third_party/nix/tests/lang/eval-okay-arithmetic.nix b/third_party/nix/tests/lang/eval-okay-arithmetic.nix deleted file mode 100644 index 7e9e6a0b66..0000000000 --- a/third_party/nix/tests/lang/eval-okay-arithmetic.nix +++ /dev/null @@ -1,59 +0,0 @@ -with import ./lib.nix; - -let { - - /* Supposedly tail recursive version: - - range_ = accum: first: last: - if first == last then ([first] ++ accum) - else range_ ([first] ++ accum) (builtins.add first 1) last; - - range = range_ []; - */ - - x = 12; - - err = abort "urgh"; - - body = sum - [ (sum (range 1 50)) - (123 + 456) - (0 + -10 + -(-11) + -x) - (10 - 7 - -2) - (10 - (6 - -1)) - (10 - 1 + 2) - (3 * 4 * 5) - (56088 / 123 / 2) - (3 + 4 * const 5 0 - 6 / id 2) - - (builtins.bitAnd 12 10) # 0b1100 & 0b1010 = 8 - (builtins.bitOr 12 10) # 0b1100 | 0b1010 = 14 - (builtins.bitXor 12 10) # 0b1100 ^ 0b1010 = 6 - - (if 3 < 7 then 1 else err) - (if 7 < 3 then err else 1) - (if 3 < 3 then err else 1) - - (if 3 <= 7 then 1 else err) - (if 7 <= 3 then err else 1) - (if 3 <= 3 then 1 else err) - - (if 3 > 7 then err else 1) - (if 7 > 3 then 1 else err) - (if 3 > 3 then err else 1) - - (if 3 >= 7 then err else 1) - (if 7 >= 3 then 1 else err) - (if 3 >= 3 then 1 else err) - - (if 2 > 1 == 1 < 2 then 1 else err) - (if 1 + 2 * 3 >= 7 then 1 else err) - (if 1 + 2 * 3 < 7 then err else 1) - - # Not integer, but so what. - (if "aa" < "ab" then 1 else err) - (if "aa" < "aa" then err else 1) - (if "foo" < "foobar" then 1 else err) - ]; - -} diff --git a/third_party/nix/tests/lang/eval-okay-attrnames.exp b/third_party/nix/tests/lang/eval-okay-attrnames.exp deleted file mode 100644 index b4aa387e07..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrnames.exp +++ /dev/null @@ -1 +0,0 @@ -"newxfoonewxy" diff --git a/third_party/nix/tests/lang/eval-okay-attrnames.nix b/third_party/nix/tests/lang/eval-okay-attrnames.nix deleted file mode 100644 index e5b26e9f2e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrnames.nix +++ /dev/null @@ -1,11 +0,0 @@ -with import ./lib.nix; - -let - - attrs = {y = "y"; x = "x"; foo = "foo";} // rec {x = "newx"; bar = x;}; - - names = builtins.attrNames attrs; - - values = map (name: builtins.getAttr name attrs) names; - -in assert values == builtins.attrValues attrs; concat values diff --git a/third_party/nix/tests/lang/eval-okay-attrs.exp b/third_party/nix/tests/lang/eval-okay-attrs.exp deleted file mode 100644 index 45b0f829eb..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs.exp +++ /dev/null @@ -1 +0,0 @@ -987 diff --git a/third_party/nix/tests/lang/eval-okay-attrs.nix b/third_party/nix/tests/lang/eval-okay-attrs.nix deleted file mode 100644 index 810b31a5da..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - as = { x = 123; y = 456; } // { z = 789; } // { z = 987; }; - - body = if as ? a then as.a else assert as ? z; as.z; -} diff --git a/third_party/nix/tests/lang/eval-okay-attrs2.exp b/third_party/nix/tests/lang/eval-okay-attrs2.exp deleted file mode 100644 index 45b0f829eb..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs2.exp +++ /dev/null @@ -1 +0,0 @@ -987 diff --git a/third_party/nix/tests/lang/eval-okay-attrs2.nix b/third_party/nix/tests/lang/eval-okay-attrs2.nix deleted file mode 100644 index 9e06b83ac1..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs2.nix +++ /dev/null @@ -1,10 +0,0 @@ -let { - as = { x = 123; y = 456; } // { z = 789; } // { z = 987; }; - - A = "a"; - Z = "z"; - - body = if builtins.hasAttr A as - then builtins.getAttr A as - else assert builtins.hasAttr Z as; builtins.getAttr Z as; -} diff --git a/third_party/nix/tests/lang/eval-okay-attrs3.exp b/third_party/nix/tests/lang/eval-okay-attrs3.exp deleted file mode 100644 index 19de4fdf79..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs3.exp +++ /dev/null @@ -1 +0,0 @@ -"foo 22 80 itchyxac" diff --git a/third_party/nix/tests/lang/eval-okay-attrs3.nix b/third_party/nix/tests/lang/eval-okay-attrs3.nix deleted file mode 100644 index f29de11fe6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs3.nix +++ /dev/null @@ -1,22 +0,0 @@ -let - - config = - { - services.sshd.enable = true; - services.sshd.port = 22; - services.httpd.port = 80; - hostName = "itchy"; - a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z = "x"; - foo = { - a = "a"; - b.c = "c"; - }; - }; - -in - if config.services.sshd.enable - then "foo ${toString config.services.sshd.port} ${toString config.services.httpd.port} ${config.hostName}" - + "${config.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z}" - + "${config.foo.a}" - + "${config.foo.b.c}" - else "bar" diff --git a/third_party/nix/tests/lang/eval-okay-attrs4.exp b/third_party/nix/tests/lang/eval-okay-attrs4.exp deleted file mode 100644 index 1851731442..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs4.exp +++ /dev/null @@ -1 +0,0 @@ -[ true false true false false true false false ] diff --git a/third_party/nix/tests/lang/eval-okay-attrs4.nix b/third_party/nix/tests/lang/eval-okay-attrs4.nix deleted file mode 100644 index 43ec81210f..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs4.nix +++ /dev/null @@ -1,7 +0,0 @@ -let - - as = { x.y.z = 123; a.b.c = 456; }; - - bs = null; - -in [ (as ? x) (as ? y) (as ? x.y.z) (as ? x.y.z.a) (as ? x.y.a) (as ? a.b.c) (bs ? x) (bs ? x.y.z) ] diff --git a/third_party/nix/tests/lang/eval-okay-attrs5.exp b/third_party/nix/tests/lang/eval-okay-attrs5.exp deleted file mode 100644 index ce0430d780..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs5.exp +++ /dev/null @@ -1 +0,0 @@ -[ 123 "foo" 456 456 "foo" "xyzzy" "xyzzy" true ] diff --git a/third_party/nix/tests/lang/eval-okay-attrs5.nix b/third_party/nix/tests/lang/eval-okay-attrs5.nix deleted file mode 100644 index a4584cd3b3..0000000000 --- a/third_party/nix/tests/lang/eval-okay-attrs5.nix +++ /dev/null @@ -1,21 +0,0 @@ -with import ./lib.nix; - -let - - as = { x.y.z = 123; a.b.c = 456; }; - - bs = { f-o-o.bar = "foo"; }; - - or = x: y: x || y; - -in - [ as.x.y.z - as.foo or "foo" - as.x.y.bla or as.a.b.c - as.a.b.c or as.x.y.z - as.x.y.bla or bs.f-o-o.bar or "xyzzy" - as.x.y.bla or bs.bar.foo or "xyzzy" - (123).bla or null.foo or "xyzzy" - # Backwards compatibility test. - (fold or [] [true false false]) - ] diff --git a/third_party/nix/tests/lang/eval-okay-autoargs.exp b/third_party/nix/tests/lang/eval-okay-autoargs.exp deleted file mode 100644 index 7a8391786a..0000000000 --- a/third_party/nix/tests/lang/eval-okay-autoargs.exp +++ /dev/null @@ -1 +0,0 @@ -"xyzzy!xyzzy!foobar" diff --git a/third_party/nix/tests/lang/eval-okay-autoargs.flags b/third_party/nix/tests/lang/eval-okay-autoargs.flags deleted file mode 100644 index ae37622544..0000000000 --- a/third_party/nix/tests/lang/eval-okay-autoargs.flags +++ /dev/null @@ -1 +0,0 @@ ---arg lib import(lang/lib.nix) --argstr xyzzy xyzzy! -A result diff --git a/third_party/nix/tests/lang/eval-okay-autoargs.nix b/third_party/nix/tests/lang/eval-okay-autoargs.nix deleted file mode 100644 index 815f51b1d6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-autoargs.nix +++ /dev/null @@ -1,15 +0,0 @@ -let - - foobar = "foobar"; - -in - -{ xyzzy2 ? xyzzy # mutually recursive args -, xyzzy ? "blaat" # will be overridden by --argstr -, fb ? foobar -, lib # will be set by --arg -}: - -{ - result = lib.concat [xyzzy xyzzy2 fb]; -} diff --git a/third_party/nix/tests/lang/eval-okay-backslash-newline-1.exp b/third_party/nix/tests/lang/eval-okay-backslash-newline-1.exp deleted file mode 100644 index 3e754364cc..0000000000 --- a/third_party/nix/tests/lang/eval-okay-backslash-newline-1.exp +++ /dev/null @@ -1 +0,0 @@ -"a\nb" diff --git a/third_party/nix/tests/lang/eval-okay-backslash-newline-1.nix b/third_party/nix/tests/lang/eval-okay-backslash-newline-1.nix deleted file mode 100644 index 7fef3dddd4..0000000000 --- a/third_party/nix/tests/lang/eval-okay-backslash-newline-1.nix +++ /dev/null @@ -1,2 +0,0 @@ -"a\ -b" diff --git a/third_party/nix/tests/lang/eval-okay-backslash-newline-2.exp b/third_party/nix/tests/lang/eval-okay-backslash-newline-2.exp deleted file mode 100644 index 3e754364cc..0000000000 --- a/third_party/nix/tests/lang/eval-okay-backslash-newline-2.exp +++ /dev/null @@ -1 +0,0 @@ -"a\nb" diff --git a/third_party/nix/tests/lang/eval-okay-backslash-newline-2.nix b/third_party/nix/tests/lang/eval-okay-backslash-newline-2.nix deleted file mode 100644 index 35ddf495c6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-backslash-newline-2.nix +++ /dev/null @@ -1,2 +0,0 @@ -''a''\ -b'' diff --git a/third_party/nix/tests/lang/eval-okay-builtins-add.exp b/third_party/nix/tests/lang/eval-okay-builtins-add.exp deleted file mode 100644 index 0350b518a7..0000000000 --- a/third_party/nix/tests/lang/eval-okay-builtins-add.exp +++ /dev/null @@ -1 +0,0 @@ -[ 5 4 "int" "tt" "float" 4 ] diff --git a/third_party/nix/tests/lang/eval-okay-builtins-add.nix b/third_party/nix/tests/lang/eval-okay-builtins-add.nix deleted file mode 100644 index c841816222..0000000000 --- a/third_party/nix/tests/lang/eval-okay-builtins-add.nix +++ /dev/null @@ -1,8 +0,0 @@ -[ -(builtins.add 2 3) -(builtins.add 2 2) -(builtins.typeOf (builtins.add 2 2)) -("t" + "t") -(builtins.typeOf (builtins.add 2.0 2)) -(builtins.add 2.0 2) -] diff --git a/third_party/nix/tests/lang/eval-okay-builtins.exp b/third_party/nix/tests/lang/eval-okay-builtins.exp deleted file mode 100644 index 0661686d61..0000000000 --- a/third_party/nix/tests/lang/eval-okay-builtins.exp +++ /dev/null @@ -1 +0,0 @@ -/foo diff --git a/third_party/nix/tests/lang/eval-okay-builtins.nix b/third_party/nix/tests/lang/eval-okay-builtins.nix deleted file mode 100644 index e9d65e88a8..0000000000 --- a/third_party/nix/tests/lang/eval-okay-builtins.nix +++ /dev/null @@ -1,12 +0,0 @@ -assert builtins ? currentSystem; -assert !builtins ? __currentSystem; - -let { - - x = if builtins ? dirOf then builtins.dirOf /foo/bar else ""; - - y = if builtins ? fnord then builtins.fnord "foo" else ""; - - body = x + y; - -} diff --git a/third_party/nix/tests/lang/eval-okay-callable-attrs.exp b/third_party/nix/tests/lang/eval-okay-callable-attrs.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-callable-attrs.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-callable-attrs.nix b/third_party/nix/tests/lang/eval-okay-callable-attrs.nix deleted file mode 100644 index 310a030df0..0000000000 --- a/third_party/nix/tests/lang/eval-okay-callable-attrs.nix +++ /dev/null @@ -1 +0,0 @@ -({ __functor = self: x: self.foo && x; foo = false; } // { foo = true; }) true diff --git a/third_party/nix/tests/lang/eval-okay-catattrs.exp b/third_party/nix/tests/lang/eval-okay-catattrs.exp deleted file mode 100644 index b4a1e66d6b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-catattrs.exp +++ /dev/null @@ -1 +0,0 @@ -[ 1 2 ] diff --git a/third_party/nix/tests/lang/eval-okay-catattrs.nix b/third_party/nix/tests/lang/eval-okay-catattrs.nix deleted file mode 100644 index 2c3dc10da5..0000000000 --- a/third_party/nix/tests/lang/eval-okay-catattrs.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.catAttrs "a" [ { a = 1; } { b = 0; } { a = 2; } ] diff --git a/third_party/nix/tests/lang/eval-okay-closure.exp.xml b/third_party/nix/tests/lang/eval-okay-closure.exp.xml deleted file mode 100644 index dffc03a998..0000000000 --- a/third_party/nix/tests/lang/eval-okay-closure.exp.xml +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/third_party/nix/tests/lang/eval-okay-closure.nix b/third_party/nix/tests/lang/eval-okay-closure.nix deleted file mode 100644 index cccd4dc357..0000000000 --- a/third_party/nix/tests/lang/eval-okay-closure.nix +++ /dev/null @@ -1,13 +0,0 @@ -let - - closure = builtins.genericClosure { - startSet = [{key = 80;}]; - operator = {key, foo ? false}: - if builtins.lessThan key 0 - then [] - else [{key = builtins.sub key 9;} {key = builtins.sub key 13; foo = true;}]; - }; - - sort = (import ./lib.nix).sortBy (a: b: builtins.lessThan a.key b.key); - -in sort closure diff --git a/third_party/nix/tests/lang/eval-okay-comments.exp b/third_party/nix/tests/lang/eval-okay-comments.exp deleted file mode 100644 index 7182dc2f9b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-comments.exp +++ /dev/null @@ -1 +0,0 @@ -"abcdefghijklmnopqrstuvwxyz" diff --git a/third_party/nix/tests/lang/eval-okay-comments.nix b/third_party/nix/tests/lang/eval-okay-comments.nix deleted file mode 100644 index cb2cce2180..0000000000 --- a/third_party/nix/tests/lang/eval-okay-comments.nix +++ /dev/null @@ -1,59 +0,0 @@ -# A simple comment -"a"+ # And another -## A double comment -"b"+ ## And another -# Nested # comments # -"c"+ # and # some # other # -# An empty line, following here: - -"d"+ # and a comment not starting the line ! - -"e"+ -/* multiline comments */ -"f" + -/* multiline - comments, - on - multiple - lines -*/ -"g" + -# Small, tricky comments -/**/ "h"+ /*/*/ "i"+ /***/ "j"+ /* /*/ "k"+ /*/* /*/ "l"+ -# Comments with an even number of ending '*' used to fail: -"m"+ -/* */ /* **/ /* ***/ /* ****/ "n"+ -/* */ /** */ /*** */ /**** */ "o"+ -/** **/ /*** ***/ /**** ****/ "p"+ -/* * ** *** **** ***** */ "q"+ -# Random comments -/* ***** ////// * / * / /* */ "r"+ -# Mixed comments -/* # */ -"s"+ -# /* # -"t"+ -# /* # */ -"u"+ -# /*********/ -"v"+ -## */* -"w"+ -/* - * Multiline, decorated comments - * # This ain't a nest'd comm'nt - */ -"x"+ -''${/** with **/"y" - # real - /* comments - inside ! # */ - - # (and empty lines) - -}''+ /* And a multiline comment, - on the same line, - after some spaces -*/ # followed by a one-line comment -"z" -/* EOF */ diff --git a/third_party/nix/tests/lang/eval-okay-concat.exp b/third_party/nix/tests/lang/eval-okay-concat.exp deleted file mode 100644 index bb4bbd5774..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concat.exp +++ /dev/null @@ -1 +0,0 @@ -[ 1 2 3 4 5 6 7 8 9 ] diff --git a/third_party/nix/tests/lang/eval-okay-concat.nix b/third_party/nix/tests/lang/eval-okay-concat.nix deleted file mode 100644 index d158a9bf05..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concat.nix +++ /dev/null @@ -1 +0,0 @@ -[1 2 3] ++ [4 5 6] ++ [7 8 9] diff --git a/third_party/nix/tests/lang/eval-okay-concatmap.exp b/third_party/nix/tests/lang/eval-okay-concatmap.exp deleted file mode 100644 index 3b8be7739d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concatmap.exp +++ /dev/null @@ -1 +0,0 @@ -[ [ 1 3 5 7 9 ] [ "a" "z" "b" "z" ] ] diff --git a/third_party/nix/tests/lang/eval-okay-concatmap.nix b/third_party/nix/tests/lang/eval-okay-concatmap.nix deleted file mode 100644 index 97da5d37a4..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concatmap.nix +++ /dev/null @@ -1,5 +0,0 @@ -with import ./lib.nix; - -[ (builtins.concatMap (x: if x / 2 * 2 == x then [] else [ x ]) (range 0 10)) - (builtins.concatMap (x: [x] ++ ["z"]) ["a" "b"]) -] diff --git a/third_party/nix/tests/lang/eval-okay-concatstringssep.exp b/third_party/nix/tests/lang/eval-okay-concatstringssep.exp deleted file mode 100644 index 93987647ff..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concatstringssep.exp +++ /dev/null @@ -1 +0,0 @@ -[ "" "foobarxyzzy" "foo, bar, xyzzy" "foo" "" ] diff --git a/third_party/nix/tests/lang/eval-okay-concatstringssep.nix b/third_party/nix/tests/lang/eval-okay-concatstringssep.nix deleted file mode 100644 index adc4c41bd5..0000000000 --- a/third_party/nix/tests/lang/eval-okay-concatstringssep.nix +++ /dev/null @@ -1,8 +0,0 @@ -with builtins; - -[ (concatStringsSep "" []) - (concatStringsSep "" ["foo" "bar" "xyzzy"]) - (concatStringsSep ", " ["foo" "bar" "xyzzy"]) - (concatStringsSep ", " ["foo"]) - (concatStringsSep ", " []) -] diff --git a/third_party/nix/tests/lang/eval-okay-context-introspection.exp b/third_party/nix/tests/lang/eval-okay-context-introspection.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-context-introspection.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-context-introspection.nix b/third_party/nix/tests/lang/eval-okay-context-introspection.nix deleted file mode 100644 index 43178bd2ee..0000000000 --- a/third_party/nix/tests/lang/eval-okay-context-introspection.nix +++ /dev/null @@ -1,24 +0,0 @@ -let - drv = derivation { - name = "fail"; - builder = "/bin/false"; - system = "x86_64-linux"; - outputs = [ "out" "foo" ]; - }; - - path = "${./eval-okay-context-introspection.nix}"; - - desired-context = { - "${builtins.unsafeDiscardStringContext path}" = { - path = true; - }; - "${builtins.unsafeDiscardStringContext drv.drvPath}" = { - outputs = [ "foo" "out" ]; - allOutputs = true; - }; - }; - - legit-context = builtins.getContext "${path}${drv.outPath}${drv.foo.outPath}${drv.drvPath}"; - - constructed-context = builtins.getContext (builtins.appendContext "" desired-context); -in legit-context == constructed-context diff --git a/third_party/nix/tests/lang/eval-okay-context.exp b/third_party/nix/tests/lang/eval-okay-context.exp deleted file mode 100644 index 2f535bdbc4..0000000000 --- a/third_party/nix/tests/lang/eval-okay-context.exp +++ /dev/null @@ -1 +0,0 @@ -"foo eval-okay-context.nix bar" diff --git a/third_party/nix/tests/lang/eval-okay-context.nix b/third_party/nix/tests/lang/eval-okay-context.nix deleted file mode 100644 index 7b9531cfe9..0000000000 --- a/third_party/nix/tests/lang/eval-okay-context.nix +++ /dev/null @@ -1,6 +0,0 @@ -let s = "foo ${builtins.substring 33 100 (baseNameOf "${./eval-okay-context.nix}")} bar"; -in - if s != "foo eval-okay-context.nix bar" - then abort "context not discarded" - else builtins.unsafeDiscardStringContext s - diff --git a/third_party/nix/tests/lang/eval-okay-curpos.exp b/third_party/nix/tests/lang/eval-okay-curpos.exp deleted file mode 100644 index 65fd65b4d0..0000000000 --- a/third_party/nix/tests/lang/eval-okay-curpos.exp +++ /dev/null @@ -1 +0,0 @@ -[ 3 7 4 9 ] diff --git a/third_party/nix/tests/lang/eval-okay-curpos.nix b/third_party/nix/tests/lang/eval-okay-curpos.nix deleted file mode 100644 index b79553df0b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-curpos.nix +++ /dev/null @@ -1,5 +0,0 @@ -# Bla -let - x = __curPos; - y = __curPos; -in [ x.line x.column y.line y.column ] diff --git a/third_party/nix/tests/lang/eval-okay-deepseq.exp b/third_party/nix/tests/lang/eval-okay-deepseq.exp deleted file mode 100644 index 8d38505c16..0000000000 --- a/third_party/nix/tests/lang/eval-okay-deepseq.exp +++ /dev/null @@ -1 +0,0 @@ -456 diff --git a/third_party/nix/tests/lang/eval-okay-deepseq.nix b/third_party/nix/tests/lang/eval-okay-deepseq.nix deleted file mode 100644 index 53aa4b1dc2..0000000000 --- a/third_party/nix/tests/lang/eval-okay-deepseq.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.deepSeq (let as = { x = 123; y = as; }; in as) 456 diff --git a/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.exp b/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.exp deleted file mode 100644 index eaacb55c1a..0000000000 --- a/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.exp +++ /dev/null @@ -1 +0,0 @@ -"b-overridden" diff --git a/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.nix b/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.nix deleted file mode 100644 index 84b388c271..0000000000 --- a/third_party/nix/tests/lang/eval-okay-delayed-with-inherit.nix +++ /dev/null @@ -1,24 +0,0 @@ -let - pkgs_ = with pkgs; { - a = derivation { - name = "a"; - system = builtins.currentSystem; - builder = "/bin/sh"; - args = [ "-c" "touch $out" ]; - inherit b; - }; - - inherit b; - }; - - packageOverrides = p: { - b = derivation { - name = "b-overridden"; - system = builtins.currentSystem; - builder = "/bin/sh"; - args = [ "-c" "touch $out" ]; - }; - }; - - pkgs = pkgs_ // (packageOverrides pkgs_); -in pkgs.a.b.name diff --git a/third_party/nix/tests/lang/eval-okay-delayed-with.exp b/third_party/nix/tests/lang/eval-okay-delayed-with.exp deleted file mode 100644 index 8e7c61ab8e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-delayed-with.exp +++ /dev/null @@ -1 +0,0 @@ -"b-overridden b-overridden a" diff --git a/third_party/nix/tests/lang/eval-okay-delayed-with.nix b/third_party/nix/tests/lang/eval-okay-delayed-with.nix deleted file mode 100644 index 3fb023e1cd..0000000000 --- a/third_party/nix/tests/lang/eval-okay-delayed-with.nix +++ /dev/null @@ -1,29 +0,0 @@ -let - - pkgs_ = with pkgs; { - a = derivation { - name = "a"; - system = builtins.currentSystem; - builder = "/bin/sh"; - args = [ "-c" "touch $out" ]; - inherit b; - }; - - b = derivation { - name = "b"; - system = builtins.currentSystem; - builder = "/bin/sh"; - args = [ "-c" "touch $out" ]; - inherit a; - }; - - c = b; - }; - - packageOverrides = pkgs: with pkgs; { - b = derivation (b.drvAttrs // { name = "${b.name}-overridden"; }); - }; - - pkgs = pkgs_ // (packageOverrides pkgs_); - -in "${pkgs.a.b.name} ${pkgs.c.name} ${pkgs.b.a.name}" diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.exp b/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.nix b/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.nix deleted file mode 100644 index 6d57bf8549..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-2.nix +++ /dev/null @@ -1 +0,0 @@ -{ a."${"b"}" = true; a."${"c"}" = false; }.a.b diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.exp b/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.exp deleted file mode 100644 index df8750afc0..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.exp +++ /dev/null @@ -1 +0,0 @@ -{ binds = true; hasAttrs = true; multiAttrs = true; recBinds = true; selectAttrs = true; selectOrAttrs = true; } diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.nix b/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.nix deleted file mode 100644 index 0dbe15e638..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs-bare.nix +++ /dev/null @@ -1,17 +0,0 @@ -let - aString = "a"; - - bString = "b"; -in { - hasAttrs = { a.b = null; } ? ${aString}.b; - - selectAttrs = { a.b = true; }.a.${bString}; - - selectOrAttrs = { }.${aString} or true; - - binds = { ${aString}."${bString}c" = true; }.a.bc; - - recBinds = rec { ${bString} = a; a = true; }.b; - - multiAttrs = { ${aString} = true; ${bString} = false; }.a; -} diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs.exp b/third_party/nix/tests/lang/eval-okay-dynamic-attrs.exp deleted file mode 100644 index df8750afc0..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs.exp +++ /dev/null @@ -1 +0,0 @@ -{ binds = true; hasAttrs = true; multiAttrs = true; recBinds = true; selectAttrs = true; selectOrAttrs = true; } diff --git a/third_party/nix/tests/lang/eval-okay-dynamic-attrs.nix b/third_party/nix/tests/lang/eval-okay-dynamic-attrs.nix deleted file mode 100644 index ee02ac7e65..0000000000 --- a/third_party/nix/tests/lang/eval-okay-dynamic-attrs.nix +++ /dev/null @@ -1,17 +0,0 @@ -let - aString = "a"; - - bString = "b"; -in { - hasAttrs = { a.b = null; } ? "${aString}".b; - - selectAttrs = { a.b = true; }.a."${bString}"; - - selectOrAttrs = { }."${aString}" or true; - - binds = { "${aString}"."${bString}c" = true; }.a.bc; - - recBinds = rec { "${bString}" = a; a = true; }.b; - - multiAttrs = { "${aString}" = true; "${bString}" = false; }.a; -} diff --git a/third_party/nix/tests/lang/eval-okay-elem.exp b/third_party/nix/tests/lang/eval-okay-elem.exp deleted file mode 100644 index 3cf6c0e962..0000000000 --- a/third_party/nix/tests/lang/eval-okay-elem.exp +++ /dev/null @@ -1 +0,0 @@ -[ true false 30 ] diff --git a/third_party/nix/tests/lang/eval-okay-elem.nix b/third_party/nix/tests/lang/eval-okay-elem.nix deleted file mode 100644 index 71ea7a4ed0..0000000000 --- a/third_party/nix/tests/lang/eval-okay-elem.nix +++ /dev/null @@ -1,6 +0,0 @@ -with import ./lib.nix; - -let xs = range 10 40; in - -[ (builtins.elem 23 xs) (builtins.elem 42 xs) (builtins.elemAt xs 20) ] - diff --git a/third_party/nix/tests/lang/eval-okay-empty-args.exp b/third_party/nix/tests/lang/eval-okay-empty-args.exp deleted file mode 100644 index cb5537d5d7..0000000000 --- a/third_party/nix/tests/lang/eval-okay-empty-args.exp +++ /dev/null @@ -1 +0,0 @@ -"ab" diff --git a/third_party/nix/tests/lang/eval-okay-empty-args.nix b/third_party/nix/tests/lang/eval-okay-empty-args.nix deleted file mode 100644 index 78c133afdd..0000000000 --- a/third_party/nix/tests/lang/eval-okay-empty-args.nix +++ /dev/null @@ -1 +0,0 @@ -({}: {x,y,}: "${x}${y}") {} {x = "a"; y = "b";} diff --git a/third_party/nix/tests/lang/eval-okay-eq-derivations.exp b/third_party/nix/tests/lang/eval-okay-eq-derivations.exp deleted file mode 100644 index ec04aab6ae..0000000000 --- a/third_party/nix/tests/lang/eval-okay-eq-derivations.exp +++ /dev/null @@ -1 +0,0 @@ -[ true true true false ] diff --git a/third_party/nix/tests/lang/eval-okay-eq-derivations.nix b/third_party/nix/tests/lang/eval-okay-eq-derivations.nix deleted file mode 100644 index d526cb4a21..0000000000 --- a/third_party/nix/tests/lang/eval-okay-eq-derivations.nix +++ /dev/null @@ -1,10 +0,0 @@ -let - - drvA1 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; }; - drvA2 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; }; - drvA3 = derivation { name = "a"; builder = "/foo"; system = "i686-linux"; } // { dummy = 1; }; - - drvC1 = derivation { name = "c"; builder = "/foo"; system = "i686-linux"; }; - drvC2 = derivation { name = "c"; builder = "/bar"; system = "i686-linux"; }; - -in [ (drvA1 == drvA1) (drvA1 == drvA2) (drvA1 == drvA3) (drvC1 == drvC2) ] diff --git a/third_party/nix/tests/lang/eval-okay-eq.exp.disabled b/third_party/nix/tests/lang/eval-okay-eq.exp.disabled deleted file mode 100644 index 2015847b65..0000000000 --- a/third_party/nix/tests/lang/eval-okay-eq.exp.disabled +++ /dev/null @@ -1 +0,0 @@ -Bool(True) diff --git a/third_party/nix/tests/lang/eval-okay-eq.nix b/third_party/nix/tests/lang/eval-okay-eq.nix deleted file mode 100644 index 73d200b381..0000000000 --- a/third_party/nix/tests/lang/eval-okay-eq.nix +++ /dev/null @@ -1,3 +0,0 @@ -["foobar" (rec {x = 1; y = x;})] -== -[("foo" + "bar") ({x = 1; y = 1;})] diff --git a/third_party/nix/tests/lang/eval-okay-filter.exp b/third_party/nix/tests/lang/eval-okay-filter.exp deleted file mode 100644 index 355d51c27d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-filter.exp +++ /dev/null @@ -1 +0,0 @@ -[ 0 2 4 6 8 10 100 102 104 106 108 110 ] diff --git a/third_party/nix/tests/lang/eval-okay-filter.nix b/third_party/nix/tests/lang/eval-okay-filter.nix deleted file mode 100644 index 85109b0d0e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-filter.nix +++ /dev/null @@ -1,5 +0,0 @@ -with import ./lib.nix; - -builtins.filter - (x: x / 2 * 2 == x) - (builtins.concatLists [ (range 0 10) (range 100 110) ]) diff --git a/third_party/nix/tests/lang/eval-okay-flatten.exp b/third_party/nix/tests/lang/eval-okay-flatten.exp deleted file mode 100644 index b979b2b8b9..0000000000 --- a/third_party/nix/tests/lang/eval-okay-flatten.exp +++ /dev/null @@ -1 +0,0 @@ -"1234567" diff --git a/third_party/nix/tests/lang/eval-okay-flatten.nix b/third_party/nix/tests/lang/eval-okay-flatten.nix deleted file mode 100644 index fe911e9683..0000000000 --- a/third_party/nix/tests/lang/eval-okay-flatten.nix +++ /dev/null @@ -1,8 +0,0 @@ -with import ./lib.nix; - -let { - - l = ["1" "2" ["3" ["4"] ["5" "6"]] "7"]; - - body = concat (flatten l); -} diff --git a/third_party/nix/tests/lang/eval-okay-float.exp b/third_party/nix/tests/lang/eval-okay-float.exp deleted file mode 100644 index 3c50a8adce..0000000000 --- a/third_party/nix/tests/lang/eval-okay-float.exp +++ /dev/null @@ -1 +0,0 @@ -[ 3.4 3.5 2.5 1.5 ] diff --git a/third_party/nix/tests/lang/eval-okay-float.nix b/third_party/nix/tests/lang/eval-okay-float.nix deleted file mode 100644 index b2702c7b16..0000000000 --- a/third_party/nix/tests/lang/eval-okay-float.nix +++ /dev/null @@ -1,6 +0,0 @@ -[ - (1.1 + 2.3) - (builtins.add (0.5 + 0.5) (2.0 + 0.5)) - ((0.5 + 0.5) * (2.0 + 0.5)) - ((1.5 + 1.5) / (0.5 * 4.0)) -] diff --git a/third_party/nix/tests/lang/eval-okay-fromTOML.exp b/third_party/nix/tests/lang/eval-okay-fromTOML.exp deleted file mode 100644 index d0dd3af2c8..0000000000 --- a/third_party/nix/tests/lang/eval-okay-fromTOML.exp +++ /dev/null @@ -1 +0,0 @@ -[ { clients = { data = [ [ "gamma" "delta" ] [ 1 2 ] ]; hosts = [ "alpha" "omega" ]; }; database = { connection_max = 5000; enabled = true; ports = [ 8001 8001 8002 ]; server = "192.168.1.1"; }; owner = { name = "Tom Preston-Werner"; }; servers = { alpha = { dc = "eqdc10"; ip = "10.0.0.1"; }; beta = { dc = "eqdc10"; ip = "10.0.0.2"; }; }; title = "TOML Example"; } { "1234" = "value"; "127.0.0.1" = "value"; a = { b = { c = { }; }; }; arr1 = [ 1 2 3 ]; arr2 = [ "red" "yellow" "green" ]; arr3 = [ [ 1 2 ] [ 3 4 5 ] ]; arr4 = [ "all" "strings" "are the same" "type" ]; arr5 = [ [ 1 2 ] [ "a" "b" "c" ] ]; arr7 = [ 1 2 3 ]; arr8 = [ 1 2 ]; bare-key = "value"; bare_key = "value"; bin1 = 214; bool1 = true; bool2 = false; "character encoding" = "value"; d = { e = { f = { }; }; }; dog = { "tater.man" = { type = { name = "pug"; }; }; }; flt1 = 1; flt2 = 3.1415; flt3 = -0.01; flt4 = 5e+22; flt5 = 1e+06; flt6 = -0.02; flt7 = 6.626e-34; flt8 = 9.22462e+06; fruit = [ { name = "apple"; physical = { color = "red"; shape = "round"; }; variety = [ { name = "red delicious"; } { name = "granny smith"; } ]; } { name = "banana"; variety = [ { name = "plantain"; } ]; } ]; g = { h = { i = { }; }; }; hex1 = 3735928559; hex2 = 3735928559; hex3 = 3735928559; int1 = 99; int2 = 42; int3 = 0; int4 = -17; int5 = 1000; int6 = 5349221; int7 = 12345; j = { "ʞ" = { l = { }; }; }; key = "value"; key2 = "value"; name = "Orange"; oct1 = 342391; oct2 = 493; physical = { color = "orange"; shape = "round"; }; products = [ { name = "Hammer"; sku = 738594937; } { } { color = "gray"; name = "Nail"; sku = 284758393; } ]; "quoted \"value\"" = "value"; site = { "google.com" = true; }; str = "I'm a string. \"You can quote me\". Name\tJosé\nLocation\tSF."; table-1 = { key1 = "some string"; key2 = 123; }; table-2 = { key1 = "another string"; key2 = 456; }; x = { y = { z = { w = { animal = { type = { name = "pug"; }; }; name = { first = "Tom"; last = "Preston-Werner"; }; point = { x = 1; y = 2; }; }; }; }; }; "ʎǝʞ" = "value"; } { metadata = { "checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4"; "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"; "checksum ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6"; "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef"; }; package = [ { dependencies = [ "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" ]; name = "aho-corasick"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.6.4"; } { name = "ansi_term"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.9.0"; } { dependencies = [ "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)" "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" ]; name = "atty"; source = "registry+https://github.com/rust-lang/crates.io-index"; version = "0.2.10"; } ]; } { a = [ [ { b = true; } ] ]; c = [ [ { d = true; } ] ]; e = [ [ 123 ] ]; } ] diff --git a/third_party/nix/tests/lang/eval-okay-fromTOML.nix b/third_party/nix/tests/lang/eval-okay-fromTOML.nix deleted file mode 100644 index 9639326899..0000000000 --- a/third_party/nix/tests/lang/eval-okay-fromTOML.nix +++ /dev/null @@ -1,208 +0,0 @@ -[ - - (builtins.fromTOML '' - # This is a TOML document. - - title = "TOML Example" - - [owner] - name = "Tom Preston-Werner" - #dob = 1979-05-27T07:32:00-08:00 # First class dates - - [database] - server = "192.168.1.1" - ports = [ 8001, 8001, 8002 ] - connection_max = 5000 - enabled = true - - [servers] - - # Indentation (tabs and/or spaces) is allowed but not required - [servers.alpha] - ip = "10.0.0.1" - dc = "eqdc10" - - [servers.beta] - ip = "10.0.0.2" - dc = "eqdc10" - - [clients] - data = [ ["gamma", "delta"], [1, 2] ] - - # Line breaks are OK when inside arrays - hosts = [ - "alpha", - "omega" - ] - '') - - (builtins.fromTOML '' - key = "value" - bare_key = "value" - bare-key = "value" - 1234 = "value" - - "127.0.0.1" = "value" - "character encoding" = "value" - "ʎǝʞ" = "value" - 'key2' = "value" - 'quoted "value"' = "value" - - name = "Orange" - - physical.color = "orange" - physical.shape = "round" - site."google.com" = true - - # This is legal according to the spec, but cpptoml doesn't handle it. - #a.b.c = 1 - #a.d = 2 - - str = "I'm a string. \"You can quote me\". Name\tJos\u00E9\nLocation\tSF." - - int1 = +99 - int2 = 42 - int3 = 0 - int4 = -17 - int5 = 1_000 - int6 = 5_349_221 - int7 = 1_2_3_4_5 - - hex1 = 0xDEADBEEF - hex2 = 0xdeadbeef - hex3 = 0xdead_beef - - oct1 = 0o01234567 - oct2 = 0o755 - - bin1 = 0b11010110 - - flt1 = +1.0 - flt2 = 3.1415 - flt3 = -0.01 - flt4 = 5e+22 - flt5 = 1e6 - flt6 = -2E-2 - flt7 = 6.626e-34 - flt8 = 9_224_617.445_991_228_313 - - bool1 = true - bool2 = false - - # FIXME: not supported because Nix doesn't have a date/time type. - #odt1 = 1979-05-27T07:32:00Z - #odt2 = 1979-05-27T00:32:00-07:00 - #odt3 = 1979-05-27T00:32:00.999999-07:00 - #odt4 = 1979-05-27 07:32:00Z - #ldt1 = 1979-05-27T07:32:00 - #ldt2 = 1979-05-27T00:32:00.999999 - #ld1 = 1979-05-27 - #lt1 = 07:32:00 - #lt2 = 00:32:00.999999 - - arr1 = [ 1, 2, 3 ] - arr2 = [ "red", "yellow", "green" ] - arr3 = [ [ 1, 2 ], [3, 4, 5] ] - arr4 = [ "all", 'strings', """are the same""", ''''type''''] - arr5 = [ [ 1, 2 ], ["a", "b", "c"] ] - - arr7 = [ - 1, 2, 3 - ] - - arr8 = [ - 1, - 2, # this is ok - ] - - [table-1] - key1 = "some string" - key2 = 123 - - - [table-2] - key1 = "another string" - key2 = 456 - - [dog."tater.man"] - type.name = "pug" - - [a.b.c] - [ d.e.f ] - [ g . h . i ] - [ j . "ʞ" . 'l' ] - [x.y.z.w] - - name = { first = "Tom", last = "Preston-Werner" } - point = { x = 1, y = 2 } - animal = { type.name = "pug" } - - [[products]] - name = "Hammer" - sku = 738594937 - - [[products]] - - [[products]] - name = "Nail" - sku = 284758393 - color = "gray" - - [[fruit]] - name = "apple" - - [fruit.physical] - color = "red" - shape = "round" - - [[fruit.variety]] - name = "red delicious" - - [[fruit.variety]] - name = "granny smith" - - [[fruit]] - name = "banana" - - [[fruit.variety]] - name = "plantain" - '') - - (builtins.fromTOML '' - [[package]] - name = "aho-corasick" - version = "0.6.4" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [[package]] - name = "ansi_term" - version = "0.9.0" - source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] - name = "atty" - version = "0.2.10" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)", - "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [metadata] - "checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4" - "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" - "checksum ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6" - "checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" - '') - - (builtins.fromTOML '' - a = [[{ b = true }]] - c = [ [ { d = true } ] ] - e = [[123]] - '') - -] diff --git a/third_party/nix/tests/lang/eval-okay-fromjson.exp b/third_party/nix/tests/lang/eval-okay-fromjson.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-fromjson.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-fromjson.nix b/third_party/nix/tests/lang/eval-okay-fromjson.nix deleted file mode 100644 index 102ee82b5e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-fromjson.nix +++ /dev/null @@ -1,36 +0,0 @@ -# RFC 7159, section 13. -builtins.fromJSON - '' - { - "Image": { - "Width": 800, - "Height": 600, - "Title": "View from 15th Floor", - "Thumbnail": { - "Url": "http://www.example.com/image/481989943", - "Height": 125, - "Width": 100 - }, - "Animated" : false, - "IDs": [116, 943, 234, 38793, true ,false,null, -100], - "Latitude": 37.7668, - "Longitude": -122.3959 - } - } - '' -== - { Image = - { Width = 800; - Height = 600; - Title = "View from 15th Floor"; - Thumbnail = - { Url = http://www.example.com/image/481989943; - Height = 125; - Width = 100; - }; - Animated = false; - IDs = [ 116 943 234 38793 true false null (0-100) ]; - Latitude = 37.7668; - Longitude = -122.3959; - }; - } diff --git a/third_party/nix/tests/lang/eval-okay-functionargs.exp.xml b/third_party/nix/tests/lang/eval-okay-functionargs.exp.xml deleted file mode 100644 index 651f54c363..0000000000 --- a/third_party/nix/tests/lang/eval-okay-functionargs.exp.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/third_party/nix/tests/lang/eval-okay-functionargs.nix b/third_party/nix/tests/lang/eval-okay-functionargs.nix deleted file mode 100644 index 68dca62ee1..0000000000 --- a/third_party/nix/tests/lang/eval-okay-functionargs.nix +++ /dev/null @@ -1,80 +0,0 @@ -let - - stdenvFun = { }: { name = "stdenv"; }; - stdenv2Fun = { }: { name = "stdenv2"; }; - fetchurlFun = { stdenv }: assert stdenv.name == "stdenv"; { name = "fetchurl"; }; - atermFun = { stdenv, fetchurl }: { name = "aterm-${stdenv.name}"; }; - aterm2Fun = { stdenv, fetchurl }: { name = "aterm2-${stdenv.name}"; }; - nixFun = { stdenv, fetchurl, aterm }: { name = "nix-${stdenv.name}-${aterm.name}"; }; - - mplayerFun = - { stdenv, fetchurl, enableX11 ? false, xorg ? null, enableFoo ? true, foo ? null }: - assert stdenv.name == "stdenv2"; - assert enableX11 -> xorg.libXv.name == "libXv"; - assert enableFoo -> foo != null; - { name = "mplayer-${stdenv.name}.${xorg.libXv.name}-${xorg.libX11.name}"; }; - - makeOverridable = f: origArgs: f origArgs // - { override = newArgs: - makeOverridable f (origArgs // (if builtins.isFunction newArgs then newArgs origArgs else newArgs)); - }; - - callPackage_ = pkgs: f: args: - makeOverridable f ((builtins.intersectAttrs (builtins.functionArgs f) pkgs) // args); - - allPackages = - { overrides ? (pkgs: pkgsPrev: { }) }: - let - callPackage = callPackage_ pkgs; - pkgs = pkgsStd // (overrides pkgs pkgsStd); - pkgsStd = { - inherit pkgs; - stdenv = callPackage stdenvFun { }; - stdenv2 = callPackage stdenv2Fun { }; - fetchurl = callPackage fetchurlFun { }; - aterm = callPackage atermFun { }; - xorg = callPackage xorgFun { }; - mplayer = callPackage mplayerFun { stdenv = pkgs.stdenv2; enableFoo = false; }; - nix = callPackage nixFun { }; - }; - in pkgs; - - libX11Fun = { stdenv, fetchurl }: { name = "libX11"; }; - libX11_2Fun = { stdenv, fetchurl }: { name = "libX11_2"; }; - libXvFun = { stdenv, fetchurl, libX11 }: { name = "libXv"; }; - - xorgFun = - { pkgs }: - let callPackage = callPackage_ (pkgs // pkgs.xorg); in - { - libX11 = callPackage libX11Fun { }; - libXv = callPackage libXvFun { }; - }; - -in - -let - - pkgs = allPackages { }; - - pkgs2 = allPackages { - overrides = pkgs: pkgsPrev: { - stdenv = pkgs.stdenv2; - nix = pkgsPrev.nix.override { aterm = aterm2Fun { inherit (pkgs) stdenv fetchurl; }; }; - xorg = pkgsPrev.xorg // { libX11 = libX11_2Fun { inherit (pkgs) stdenv fetchurl; }; }; - }; - }; - -in - - [ pkgs.stdenv.name - pkgs.fetchurl.name - pkgs.aterm.name - pkgs2.aterm.name - pkgs.xorg.libX11.name - pkgs.xorg.libXv.name - pkgs.mplayer.name - pkgs2.mplayer.name - pkgs.nix.name - pkgs2.nix.name - ] diff --git a/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.exp b/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.exp deleted file mode 100644 index 19765bd501..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.exp +++ /dev/null @@ -1 +0,0 @@ -null diff --git a/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.nix b/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.nix deleted file mode 100644 index 14dd38f773..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getattrpos-undefined.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.unsafeGetAttrPos "abort" builtins diff --git a/third_party/nix/tests/lang/eval-okay-getattrpos.exp b/third_party/nix/tests/lang/eval-okay-getattrpos.exp deleted file mode 100644 index 469249bbc6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getattrpos.exp +++ /dev/null @@ -1 +0,0 @@ -{ column = 5; file = "eval-okay-getattrpos.nix"; line = 3; } diff --git a/third_party/nix/tests/lang/eval-okay-getattrpos.nix b/third_party/nix/tests/lang/eval-okay-getattrpos.nix deleted file mode 100644 index ca6b079615..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getattrpos.nix +++ /dev/null @@ -1,6 +0,0 @@ -let - as = { - foo = "bar"; - }; - pos = builtins.unsafeGetAttrPos "foo" as; -in { inherit (pos) column line; file = baseNameOf pos.file; } diff --git a/third_party/nix/tests/lang/eval-okay-getenv.exp b/third_party/nix/tests/lang/eval-okay-getenv.exp deleted file mode 100644 index 14e24d4190..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getenv.exp +++ /dev/null @@ -1 +0,0 @@ -"foobar" diff --git a/third_party/nix/tests/lang/eval-okay-getenv.nix b/third_party/nix/tests/lang/eval-okay-getenv.nix deleted file mode 100644 index 4cfec5f553..0000000000 --- a/third_party/nix/tests/lang/eval-okay-getenv.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.getEnv "TEST_VAR" + (if builtins.getEnv "NO_SUCH_VAR" == "" then "bar" else "bla") diff --git a/third_party/nix/tests/lang/eval-okay-hash.exp b/third_party/nix/tests/lang/eval-okay-hash.exp deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/third_party/nix/tests/lang/eval-okay-hashfile.exp b/third_party/nix/tests/lang/eval-okay-hashfile.exp deleted file mode 100644 index ff1e8293ef..0000000000 --- a/third_party/nix/tests/lang/eval-okay-hashfile.exp +++ /dev/null @@ -1 +0,0 @@ -[ "d3b07384d113edec49eaa6238ad5ff00" "0f343b0931126a20f133d67c2b018a3b" "f1d2d2f924e986ac86fdf7b36c94bcdf32beec15" "60cacbf3d72e1e7834203da608037b1bf83b40e8" "b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c" "5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef" "0cf9180a764aba863a67b6d72f0918bc131c6772642cb2dce5a34f0a702f9470ddc2bf125c12198b1995c233c34b4afd346c54a2334c350a948a51b6e8b4e6b6" "8efb4f73c5655351c444eb109230c556d39e2c7624e9c11abc9e3fb4b9b9254218cc5085b454a9698d085cfa92198491f07a723be4574adc70617b73eb0b6461" ] diff --git a/third_party/nix/tests/lang/eval-okay-hashfile.nix b/third_party/nix/tests/lang/eval-okay-hashfile.nix deleted file mode 100644 index aff5a18568..0000000000 --- a/third_party/nix/tests/lang/eval-okay-hashfile.nix +++ /dev/null @@ -1,4 +0,0 @@ -let - paths = [ ./data ./binary-data ]; -in - builtins.concatLists (map (hash: map (builtins.hashFile hash) paths) ["md5" "sha1" "sha256" "sha512"]) diff --git a/third_party/nix/tests/lang/eval-okay-hashstring.exp b/third_party/nix/tests/lang/eval-okay-hashstring.exp deleted file mode 100644 index d720a082dd..0000000000 --- a/third_party/nix/tests/lang/eval-okay-hashstring.exp +++ /dev/null @@ -1 +0,0 @@ -[ "d41d8cd98f00b204e9800998ecf8427e" "6c69ee7f211c640419d5366cc076ae46" "bb3438fbabd460ea6dbd27d153e2233b" "da39a3ee5e6b4b0d3255bfef95601890afd80709" "cd54e8568c1b37cf1e5badb0779bcbf382212189" "6d12e10b1d331dad210e47fd25d4f260802b7e77" "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" "900a4469df00ccbfd0c145c6d1e4b7953dd0afafadd7534e3a4019e8d38fc663" "ad0387b3bd8652f730ca46d25f9c170af0fd589f42e7f23f5a9e6412d97d7e56" "cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" "9d0886f8c6b389398a16257bc79780fab9831c7fc11c8ab07fa732cb7b348feade382f92617c9c5305fefba0af02ab5fd39a587d330997ff5bd0db19f7666653" "21644b72aa259e5a588cd3afbafb1d4310f4889680f6c83b9d531596a5a284f34dbebff409d23bcc86aee6bad10c891606f075c6f4755cb536da27db5693f3a7" ] diff --git a/third_party/nix/tests/lang/eval-okay-hashstring.nix b/third_party/nix/tests/lang/eval-okay-hashstring.nix deleted file mode 100644 index b0f62b245c..0000000000 --- a/third_party/nix/tests/lang/eval-okay-hashstring.nix +++ /dev/null @@ -1,4 +0,0 @@ -let - strings = [ "" "text 1" "text 2" ]; -in - builtins.concatLists (map (hash: map (builtins.hashString hash) strings) ["md5" "sha1" "sha256" "sha512"]) diff --git a/third_party/nix/tests/lang/eval-okay-if.exp b/third_party/nix/tests/lang/eval-okay-if.exp deleted file mode 100644 index 00750edc07..0000000000 --- a/third_party/nix/tests/lang/eval-okay-if.exp +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/third_party/nix/tests/lang/eval-okay-if.nix b/third_party/nix/tests/lang/eval-okay-if.nix deleted file mode 100644 index 23e4c74d50..0000000000 --- a/third_party/nix/tests/lang/eval-okay-if.nix +++ /dev/null @@ -1 +0,0 @@ -if "foo" != "f" + "oo" then 1 else if false then 2 else 3 diff --git a/third_party/nix/tests/lang/eval-okay-import.exp b/third_party/nix/tests/lang/eval-okay-import.exp deleted file mode 100644 index c508125b55..0000000000 --- a/third_party/nix/tests/lang/eval-okay-import.exp +++ /dev/null @@ -1 +0,0 @@ -[ 1 2 3 4 5 6 7 8 9 10 ] diff --git a/third_party/nix/tests/lang/eval-okay-import.nix b/third_party/nix/tests/lang/eval-okay-import.nix deleted file mode 100644 index 0b18d94131..0000000000 --- a/third_party/nix/tests/lang/eval-okay-import.nix +++ /dev/null @@ -1,11 +0,0 @@ -let - - overrides = { - import = fn: scopedImport overrides fn; - - scopedImport = attrs: fn: scopedImport (overrides // attrs) fn; - - builtins = builtins // overrides; - } // import ./lib.nix; - -in scopedImport overrides ./imported.nix diff --git a/third_party/nix/tests/lang/eval-okay-ind-string.exp b/third_party/nix/tests/lang/eval-okay-ind-string.exp deleted file mode 100644 index 9cf4bd2ee7..0000000000 --- a/third_party/nix/tests/lang/eval-okay-ind-string.exp +++ /dev/null @@ -1 +0,0 @@ -"This is an indented multi-line string\nliteral. An amount of whitespace at\nthe start of each line matching the minimum\nindentation of all lines in the string\nliteral together will be removed. Thus,\nin this case four spaces will be\nstripped from each line, even though\n THIS LINE is indented six spaces.\n\nAlso, empty lines don't count in the\ndetermination of the indentation level (the\nprevious empty line has indentation 0, but\nit doesn't matter).\nIf the string starts with whitespace\n followed by a newline, it's stripped, but\n that's not the case here. Two spaces are\n stripped because of the \" \" at the start. \nThis line is indented\na bit further.\nAnti-quotations, like so, are\nalso allowed.\n The \\ is not special here.\n' can be followed by any character except another ', e.g. 'x'.\nLikewise for $, e.g. $$ or $varName.\nBut ' followed by ' is special, as is $ followed by {.\nIf you want them, use anti-quotations: '', ${.\n Tabs are not interpreted as whitespace (since we can't guess\n what tab settings are intended), so don't use them.\n\tThis line starts with a space and a tab, so only one\n space will be stripped from each line.\nAlso note that if the last line (just before the closing ' ')\nconsists only of whitespace, it's ignored. But here there is\nsome non-whitespace stuff, so the line isn't removed. \nThis shows a hacky way to preserve an empty line after the start.\nBut there's no reason to do so: you could just repeat the empty\nline.\n Similarly you can force an indentation level,\n in this case to 2 spaces. This works because the anti-quote\n is significant (not whitespace).\nstart on network-interfaces\n\nstart script\n\n rm -f /var/run/opengl-driver\n ln -sf 123 /var/run/opengl-driver\n\n rm -f /var/log/slim.log\n \nend script\n\nenv SLIM_CFGFILE=abc\nenv SLIM_THEMESDIR=def\nenv FONTCONFIG_FILE=/etc/fonts/fonts.conf \t\t\t\t# !!! cleanup\nenv XKB_BINDIR=foo/bin \t\t\t\t# Needed for the Xkb extension.\nenv LD_LIBRARY_PATH=libX11/lib:libXext/lib:/usr/lib/ # related to xorg-sys-opengl - needed to load libglx for (AI)GLX support (for compiz)\n\nenv XORG_DRI_DRIVER_PATH=nvidiaDrivers/X11R6/lib/modules/drivers/ \n\nexec slim/bin/slim\nEscaping of ' followed by ': ''\nEscaping of $ followed by {: ${\nAnd finally to interpret \\n etc. as in a string: \n, \r, \t.\nfoo\n'bla'\nbar\ncut -d $'\\t' -f 1\nending dollar $$\n" diff --git a/third_party/nix/tests/lang/eval-okay-ind-string.nix b/third_party/nix/tests/lang/eval-okay-ind-string.nix deleted file mode 100644 index 1669dc0648..0000000000 --- a/third_party/nix/tests/lang/eval-okay-ind-string.nix +++ /dev/null @@ -1,128 +0,0 @@ -let - - s1 = '' - This is an indented multi-line string - literal. An amount of whitespace at - the start of each line matching the minimum - indentation of all lines in the string - literal together will be removed. Thus, - in this case four spaces will be - stripped from each line, even though - THIS LINE is indented six spaces. - - Also, empty lines don't count in the - determination of the indentation level (the - previous empty line has indentation 0, but - it doesn't matter). - ''; - - s2 = '' If the string starts with whitespace - followed by a newline, it's stripped, but - that's not the case here. Two spaces are - stripped because of the " " at the start. - ''; - - s3 = '' - This line is indented - a bit further. - ''; # indentation of last line doesn't count if it's empty - - s4 = '' - Anti-quotations, like ${if true then "so" else "not so"}, are - also allowed. - ''; - - s5 = '' - The \ is not special here. - ' can be followed by any character except another ', e.g. 'x'. - Likewise for $, e.g. $$ or $varName. - But ' followed by ' is special, as is $ followed by {. - If you want them, use anti-quotations: ${"''"}, ${"\${"}. - ''; - - s6 = '' - Tabs are not interpreted as whitespace (since we can't guess - what tab settings are intended), so don't use them. - This line starts with a space and a tab, so only one - space will be stripped from each line. - ''; - - s7 = '' - Also note that if the last line (just before the closing ' ') - consists only of whitespace, it's ignored. But here there is - some non-whitespace stuff, so the line isn't removed. ''; - - s8 = '' ${""} - This shows a hacky way to preserve an empty line after the start. - But there's no reason to do so: you could just repeat the empty - line. - ''; - - s9 = '' - ${""} Similarly you can force an indentation level, - in this case to 2 spaces. This works because the anti-quote - is significant (not whitespace). - ''; - - s10 = '' - ''; - - s11 = ''''; - - s12 = '' ''; - - s13 = '' - start on network-interfaces - - start script - - rm -f /var/run/opengl-driver - ${if true - then "ln -sf 123 /var/run/opengl-driver" - else if true - then "ln -sf 456 /var/run/opengl-driver" - else "" - } - - rm -f /var/log/slim.log - - end script - - env SLIM_CFGFILE=${"abc"} - env SLIM_THEMESDIR=${"def"} - env FONTCONFIG_FILE=/etc/fonts/fonts.conf # !!! cleanup - env XKB_BINDIR=${"foo"}/bin # Needed for the Xkb extension. - env LD_LIBRARY_PATH=${"libX11"}/lib:${"libXext"}/lib:/usr/lib/ # related to xorg-sys-opengl - needed to load libglx for (AI)GLX support (for compiz) - - ${if true - then "env XORG_DRI_DRIVER_PATH=${"nvidiaDrivers"}/X11R6/lib/modules/drivers/" - else if true - then "env XORG_DRI_DRIVER_PATH=${"mesa"}/lib/modules/dri" - else "" - } - - exec ${"slim"}/bin/slim - ''; - - s14 = '' - Escaping of ' followed by ': ''' - Escaping of $ followed by {: ''${ - And finally to interpret \n etc. as in a string: ''\n, ''\r, ''\t. - ''; - - # Regression test: antiquotation in '${x}' should work, but didn't. - s15 = let x = "bla"; in '' - foo - '${x}' - bar - ''; - - # Regression test: accept $'. - s16 = '' - cut -d $'\t' -f 1 - ''; - - # Accept dollars at end of strings - s17 = ''ending dollar $'' + ''$'' + "\n"; - -in s1 + s2 + s3 + s4 + s5 + s6 + s7 + s8 + s9 + s10 + s11 + s12 + s13 + s14 + s15 + s16 + s17 diff --git a/third_party/nix/tests/lang/eval-okay-let.exp b/third_party/nix/tests/lang/eval-okay-let.exp deleted file mode 100644 index 14e24d4190..0000000000 --- a/third_party/nix/tests/lang/eval-okay-let.exp +++ /dev/null @@ -1 +0,0 @@ -"foobar" diff --git a/third_party/nix/tests/lang/eval-okay-let.nix b/third_party/nix/tests/lang/eval-okay-let.nix deleted file mode 100644 index fe118c5282..0000000000 --- a/third_party/nix/tests/lang/eval-okay-let.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - x = "foo"; - y = "bar"; - body = x + y; -} diff --git a/third_party/nix/tests/lang/eval-okay-list.exp b/third_party/nix/tests/lang/eval-okay-list.exp deleted file mode 100644 index f784f26d83..0000000000 --- a/third_party/nix/tests/lang/eval-okay-list.exp +++ /dev/null @@ -1 +0,0 @@ -"foobarblatest" diff --git a/third_party/nix/tests/lang/eval-okay-list.nix b/third_party/nix/tests/lang/eval-okay-list.nix deleted file mode 100644 index d433bcf908..0000000000 --- a/third_party/nix/tests/lang/eval-okay-list.nix +++ /dev/null @@ -1,7 +0,0 @@ -with import ./lib.nix; - -let { - - body = concat ["foo" "bar" "bla" "test"]; - -} \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-okay-listtoattrs.exp b/third_party/nix/tests/lang/eval-okay-listtoattrs.exp deleted file mode 100644 index 74abef7bc6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-listtoattrs.exp +++ /dev/null @@ -1 +0,0 @@ -"AAbar" diff --git a/third_party/nix/tests/lang/eval-okay-listtoattrs.nix b/third_party/nix/tests/lang/eval-okay-listtoattrs.nix deleted file mode 100644 index 4186e029b5..0000000000 --- a/third_party/nix/tests/lang/eval-okay-listtoattrs.nix +++ /dev/null @@ -1,11 +0,0 @@ -# this test shows how to use listToAttrs and that evaluation is still lazy (throw isn't called) -with import ./lib.nix; - -let - asi = name: value : { inherit name value; }; - list = [ ( asi "a" "A" ) ( asi "b" "B" ) ]; - a = builtins.listToAttrs list; - b = builtins.listToAttrs ( list ++ list ); - r = builtins.listToAttrs [ (asi "result" [ a b ]) ( asi "throw" (throw "this should not be thrown")) ]; - x = builtins.listToAttrs [ (asi "foo" "bar") (asi "foo" "bla") ]; -in concat (map (x: x.a) r.result) + x.foo diff --git a/third_party/nix/tests/lang/eval-okay-logic.exp b/third_party/nix/tests/lang/eval-okay-logic.exp deleted file mode 100644 index d00491fd7e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-logic.exp +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/third_party/nix/tests/lang/eval-okay-logic.nix b/third_party/nix/tests/lang/eval-okay-logic.nix deleted file mode 100644 index fbb1279440..0000000000 --- a/third_party/nix/tests/lang/eval-okay-logic.nix +++ /dev/null @@ -1 +0,0 @@ -assert !false && (true || false) -> true; 1 diff --git a/third_party/nix/tests/lang/eval-okay-map.exp b/third_party/nix/tests/lang/eval-okay-map.exp deleted file mode 100644 index dbb64f717b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-map.exp +++ /dev/null @@ -1 +0,0 @@ -"foobarblabarxyzzybar" diff --git a/third_party/nix/tests/lang/eval-okay-map.nix b/third_party/nix/tests/lang/eval-okay-map.nix deleted file mode 100644 index a76c1d8114..0000000000 --- a/third_party/nix/tests/lang/eval-okay-map.nix +++ /dev/null @@ -1,3 +0,0 @@ -with import ./lib.nix; - -concat (map (x: x + "bar") [ "foo" "bla" "xyzzy" ]) \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-okay-mapattrs.exp b/third_party/nix/tests/lang/eval-okay-mapattrs.exp deleted file mode 100644 index 3f113f17ba..0000000000 --- a/third_party/nix/tests/lang/eval-okay-mapattrs.exp +++ /dev/null @@ -1 +0,0 @@ -{ x = "x-foo"; y = "y-bar"; } diff --git a/third_party/nix/tests/lang/eval-okay-mapattrs.nix b/third_party/nix/tests/lang/eval-okay-mapattrs.nix deleted file mode 100644 index f075b6275e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-mapattrs.nix +++ /dev/null @@ -1,3 +0,0 @@ -with import ./lib.nix; - -builtins.mapAttrs (name: value: name + "-" + value) { x = "foo"; y = "bar"; } diff --git a/third_party/nix/tests/lang/eval-okay-nested-with.exp b/third_party/nix/tests/lang/eval-okay-nested-with.exp deleted file mode 100644 index 0cfbf08886..0000000000 --- a/third_party/nix/tests/lang/eval-okay-nested-with.exp +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/third_party/nix/tests/lang/eval-okay-nested-with.nix b/third_party/nix/tests/lang/eval-okay-nested-with.nix deleted file mode 100644 index ba9d79aa79..0000000000 --- a/third_party/nix/tests/lang/eval-okay-nested-with.nix +++ /dev/null @@ -1,3 +0,0 @@ -with { x = 1; }; -with { x = 2; }; -x diff --git a/third_party/nix/tests/lang/eval-okay-new-let.exp b/third_party/nix/tests/lang/eval-okay-new-let.exp deleted file mode 100644 index f98b388071..0000000000 --- a/third_party/nix/tests/lang/eval-okay-new-let.exp +++ /dev/null @@ -1 +0,0 @@ -"xyzzyfoobar" diff --git a/third_party/nix/tests/lang/eval-okay-new-let.nix b/third_party/nix/tests/lang/eval-okay-new-let.nix deleted file mode 100644 index 7381231415..0000000000 --- a/third_party/nix/tests/lang/eval-okay-new-let.nix +++ /dev/null @@ -1,14 +0,0 @@ -let - - f = z: - - let - x = "foo"; - y = "bar"; - body = 1; # compat test - in - z + x + y; - - arg = "xyzzy"; - -in f arg diff --git a/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.exp b/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.nix b/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.nix deleted file mode 100644 index b060c0bc98..0000000000 --- a/third_party/nix/tests/lang/eval-okay-null-dynamic-attrs.nix +++ /dev/null @@ -1 +0,0 @@ -{ ${null} = true; } == {} diff --git a/third_party/nix/tests/lang/eval-okay-partition.exp b/third_party/nix/tests/lang/eval-okay-partition.exp deleted file mode 100644 index cd8b8b020c..0000000000 --- a/third_party/nix/tests/lang/eval-okay-partition.exp +++ /dev/null @@ -1 +0,0 @@ -{ right = [ 0 2 4 6 8 10 100 102 104 106 108 110 ]; wrong = [ 1 3 5 7 9 101 103 105 107 109 ]; } diff --git a/third_party/nix/tests/lang/eval-okay-partition.nix b/third_party/nix/tests/lang/eval-okay-partition.nix deleted file mode 100644 index 846d2ce494..0000000000 --- a/third_party/nix/tests/lang/eval-okay-partition.nix +++ /dev/null @@ -1,5 +0,0 @@ -with import ./lib.nix; - -builtins.partition - (x: x / 2 * 2 == x) - (builtins.concatLists [ (range 0 10) (range 100 110) ]) diff --git a/third_party/nix/tests/lang/eval-okay-path.nix b/third_party/nix/tests/lang/eval-okay-path.nix deleted file mode 100644 index e67168cf3e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-path.nix +++ /dev/null @@ -1,7 +0,0 @@ -builtins.path - { path = ./.; - filter = path: _: baseNameOf path == "data"; - recursive = true; - sha256 = "1yhm3gwvg5a41yylymgblsclk95fs6jy72w0wv925mmidlhcq4sw"; - name = "output"; - } diff --git a/third_party/nix/tests/lang/eval-okay-pathexists.exp b/third_party/nix/tests/lang/eval-okay-pathexists.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-pathexists.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-pathexists.nix b/third_party/nix/tests/lang/eval-okay-pathexists.nix deleted file mode 100644 index 50c28ee0cd..0000000000 --- a/third_party/nix/tests/lang/eval-okay-pathexists.nix +++ /dev/null @@ -1,5 +0,0 @@ -builtins.pathExists (builtins.toPath ./lib.nix) -&& builtins.pathExists (builtins.toPath (builtins.toString ./lib.nix)) -&& !builtins.pathExists (builtins.toPath (builtins.toString ./bla.nix)) -&& builtins.pathExists ./lib.nix -&& !builtins.pathExists ./bla.nix diff --git a/third_party/nix/tests/lang/eval-okay-patterns.exp b/third_party/nix/tests/lang/eval-okay-patterns.exp deleted file mode 100644 index a4304010fe..0000000000 --- a/third_party/nix/tests/lang/eval-okay-patterns.exp +++ /dev/null @@ -1 +0,0 @@ -"abcxyzDDDDEFijk" diff --git a/third_party/nix/tests/lang/eval-okay-patterns.nix b/third_party/nix/tests/lang/eval-okay-patterns.nix deleted file mode 100644 index 96fd25a015..0000000000 --- a/third_party/nix/tests/lang/eval-okay-patterns.nix +++ /dev/null @@ -1,16 +0,0 @@ -let - - f = args@{x, y, z}: x + args.y + z; - - g = {x, y, z}@args: f args; - - h = {x ? "d", y ? x, z ? args.x}@args: x + y + z; - - j = {x, y, z, ...}: x + y + z; - -in - f {x = "a"; y = "b"; z = "c";} + - g {x = "x"; y = "y"; z = "z";} + - h {x = "D";} + - h {x = "D"; y = "E"; z = "F";} + - j {x = "i"; y = "j"; z = "k"; bla = "bla"; foo = "bar";} diff --git a/third_party/nix/tests/lang/eval-okay-readDir.exp b/third_party/nix/tests/lang/eval-okay-readDir.exp deleted file mode 100644 index bf8d2c14ea..0000000000 --- a/third_party/nix/tests/lang/eval-okay-readDir.exp +++ /dev/null @@ -1 +0,0 @@ -{ bar = "regular"; foo = "directory"; } diff --git a/third_party/nix/tests/lang/eval-okay-readDir.nix b/third_party/nix/tests/lang/eval-okay-readDir.nix deleted file mode 100644 index a7ec9292aa..0000000000 --- a/third_party/nix/tests/lang/eval-okay-readDir.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.readDir ./readDir diff --git a/third_party/nix/tests/lang/eval-okay-readfile.exp b/third_party/nix/tests/lang/eval-okay-readfile.exp deleted file mode 100644 index a2c87d0c43..0000000000 --- a/third_party/nix/tests/lang/eval-okay-readfile.exp +++ /dev/null @@ -1 +0,0 @@ -"builtins.readFile ./eval-okay-readfile.nix\n" diff --git a/third_party/nix/tests/lang/eval-okay-readfile.nix b/third_party/nix/tests/lang/eval-okay-readfile.nix deleted file mode 100644 index 82f7cb1743..0000000000 --- a/third_party/nix/tests/lang/eval-okay-readfile.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.readFile ./eval-okay-readfile.nix diff --git a/third_party/nix/tests/lang/eval-okay-redefine-builtin.exp b/third_party/nix/tests/lang/eval-okay-redefine-builtin.exp deleted file mode 100644 index c508d5366f..0000000000 --- a/third_party/nix/tests/lang/eval-okay-redefine-builtin.exp +++ /dev/null @@ -1 +0,0 @@ -false diff --git a/third_party/nix/tests/lang/eval-okay-redefine-builtin.nix b/third_party/nix/tests/lang/eval-okay-redefine-builtin.nix deleted file mode 100644 index df9fc3f37d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-redefine-builtin.nix +++ /dev/null @@ -1,3 +0,0 @@ -let - throw = abort "Error!"; -in (builtins.tryEval ).success diff --git a/third_party/nix/tests/lang/eval-okay-regex-match.exp b/third_party/nix/tests/lang/eval-okay-regex-match.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-regex-match.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-regex-match.nix b/third_party/nix/tests/lang/eval-okay-regex-match.nix deleted file mode 100644 index 273e259071..0000000000 --- a/third_party/nix/tests/lang/eval-okay-regex-match.nix +++ /dev/null @@ -1,29 +0,0 @@ -with builtins; - -let - - matches = pat: s: match pat s != null; - - splitFN = match "((.*)/)?([^/]*)\\.(nix|cc)"; - -in - -assert matches "foobar" "foobar"; -assert matches "fo*" "f"; -assert !matches "fo+" "f"; -assert matches "fo*" "fo"; -assert matches "fo*" "foo"; -assert matches "fo+" "foo"; -assert matches "fo{1,2}" "foo"; -assert !matches "fo{1,2}" "fooo"; -assert !matches "fo*" "foobar"; -assert matches "[[:space:]]+([^[:space:]]+)[[:space:]]+" " foo "; -assert !matches "[[:space:]]+([[:upper:]]+)[[:space:]]+" " foo "; - -assert match "(.*)\\.nix" "foobar.nix" == [ "foobar" ]; -assert match "[[:space:]]+([[:upper:]]+)[[:space:]]+" " FOO " == [ "FOO" ]; - -assert splitFN "/path/to/foobar.nix" == [ "/path/to/" "/path/to" "foobar" "nix" ]; -assert splitFN "foobar.cc" == [ null null "foobar" "cc" ]; - -true diff --git a/third_party/nix/tests/lang/eval-okay-regex-split.exp b/third_party/nix/tests/lang/eval-okay-regex-split.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-regex-split.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-regex-split.nix b/third_party/nix/tests/lang/eval-okay-regex-split.nix deleted file mode 100644 index 0073e05778..0000000000 --- a/third_party/nix/tests/lang/eval-okay-regex-split.nix +++ /dev/null @@ -1,48 +0,0 @@ -with builtins; - -# Non capturing regex returns empty lists -assert split "foobar" "foobar" == ["" [] ""]; -assert split "fo*" "f" == ["" [] ""]; -assert split "fo+" "f" == ["f"]; -assert split "fo*" "fo" == ["" [] ""]; -assert split "fo*" "foo" == ["" [] ""]; -assert split "fo+" "foo" == ["" [] ""]; -assert split "fo{1,2}" "foo" == ["" [] ""]; -assert split "fo{1,2}" "fooo" == ["" [] "o"]; -assert split "fo*" "foobar" == ["" [] "bar"]; - -# Capturing regex returns a list of sub-matches -assert split "(fo*)" "f" == ["" ["f"] ""]; -assert split "(fo+)" "f" == ["f"]; -assert split "(fo*)" "fo" == ["" ["fo"] ""]; -assert split "(f)(o*)" "f" == ["" ["f" ""] ""]; -assert split "(f)(o*)" "foo" == ["" ["f" "oo"] ""]; -assert split "(fo+)" "foo" == ["" ["foo"] ""]; -assert split "(fo{1,2})" "foo" == ["" ["foo"] ""]; -assert split "(fo{1,2})" "fooo" == ["" ["foo"] "o"]; -assert split "(fo*)" "foobar" == ["" ["foo"] "bar"]; - -# Matches are greedy. -assert split "(o+)" "oooofoooo" == ["" ["oooo"] "f" ["oooo"] ""]; - -# Matches multiple times. -assert split "(b)" "foobarbaz" == ["foo" ["b"] "ar" ["b"] "az"]; - -# Split large strings containing newlines. null are inserted when a -# pattern within the current did not match anything. -assert split "[[:space:]]+|([',.!?])" '' - Nix Rocks! - That's why I use it. -'' == [ - "Nix" [ null ] "Rocks" ["!"] "" [ null ] - "That" ["'"] "s" [ null ] "why" [ null ] "I" [ null ] "use" [ null ] "it" ["."] "" [ null ] - "" -]; - -# Documentation examples -assert split "(a)b" "abc" == [ "" [ "a" ] "c" ]; -assert split "([ac])" "abc" == [ "" [ "a" ] "b" [ "c" ] "" ]; -assert split "(a)|(c)" "abc" == [ "" [ "a" null ] "b" [ null "c" ] "" ]; -assert split "([[:upper:]]+)" " FOO " == [ " " [ "FOO" ] " " ]; - -true diff --git a/third_party/nix/tests/lang/eval-okay-remove.exp b/third_party/nix/tests/lang/eval-okay-remove.exp deleted file mode 100644 index 8d38505c16..0000000000 --- a/third_party/nix/tests/lang/eval-okay-remove.exp +++ /dev/null @@ -1 +0,0 @@ -456 diff --git a/third_party/nix/tests/lang/eval-okay-remove.nix b/third_party/nix/tests/lang/eval-okay-remove.nix deleted file mode 100644 index 4ad5ba897f..0000000000 --- a/third_party/nix/tests/lang/eval-okay-remove.nix +++ /dev/null @@ -1,5 +0,0 @@ -let { - attrs = {x = 123; y = 456;}; - - body = (removeAttrs attrs ["x"]).y; -} \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-okay-replacestrings.exp b/third_party/nix/tests/lang/eval-okay-replacestrings.exp deleted file mode 100644 index 72e8274d8c..0000000000 --- a/third_party/nix/tests/lang/eval-okay-replacestrings.exp +++ /dev/null @@ -1 +0,0 @@ -[ "faabar" "fbar" "fubar" "faboor" "fubar" "XaXbXcX" "X" "a_b" ] diff --git a/third_party/nix/tests/lang/eval-okay-replacestrings.nix b/third_party/nix/tests/lang/eval-okay-replacestrings.nix deleted file mode 100644 index bd8031fc00..0000000000 --- a/third_party/nix/tests/lang/eval-okay-replacestrings.nix +++ /dev/null @@ -1,11 +0,0 @@ -with builtins; - -[ (replaceStrings ["o"] ["a"] "foobar") - (replaceStrings ["o"] [""] "foobar") - (replaceStrings ["oo"] ["u"] "foobar") - (replaceStrings ["oo" "a"] ["a" "oo"] "foobar") - (replaceStrings ["oo" "oo"] ["u" "i"] "foobar") - (replaceStrings [""] ["X"] "abc") - (replaceStrings [""] ["X"] "") - (replaceStrings ["-"] ["_"] "a-b") -] diff --git a/third_party/nix/tests/lang/eval-okay-scope-1.exp b/third_party/nix/tests/lang/eval-okay-scope-1.exp deleted file mode 100644 index 00750edc07..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-1.exp +++ /dev/null @@ -1 +0,0 @@ -3 diff --git a/third_party/nix/tests/lang/eval-okay-scope-1.nix b/third_party/nix/tests/lang/eval-okay-scope-1.nix deleted file mode 100644 index fa38a7174e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-1.nix +++ /dev/null @@ -1,6 +0,0 @@ -(({x}: x: - - { x = 1; - y = x; - } -) {x = 2;} 3).y diff --git a/third_party/nix/tests/lang/eval-okay-scope-2.exp b/third_party/nix/tests/lang/eval-okay-scope-2.exp deleted file mode 100644 index d00491fd7e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-2.exp +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/third_party/nix/tests/lang/eval-okay-scope-2.nix b/third_party/nix/tests/lang/eval-okay-scope-2.nix deleted file mode 100644 index eb8b02bc49..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-2.nix +++ /dev/null @@ -1,6 +0,0 @@ -((x: {x}: - rec { - x = 1; - y = x; - } -) 2 {x = 3;}).y diff --git a/third_party/nix/tests/lang/eval-okay-scope-3.exp b/third_party/nix/tests/lang/eval-okay-scope-3.exp deleted file mode 100644 index b8626c4cff..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-3.exp +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/third_party/nix/tests/lang/eval-okay-scope-3.nix b/third_party/nix/tests/lang/eval-okay-scope-3.nix deleted file mode 100644 index 10d6bc04d8..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-3.nix +++ /dev/null @@ -1,6 +0,0 @@ -((x: as: {x}: - rec { - inherit (as) x; - y = x; - } -) 2 {x = 4;} {x = 3;}).y diff --git a/third_party/nix/tests/lang/eval-okay-scope-4.exp b/third_party/nix/tests/lang/eval-okay-scope-4.exp deleted file mode 100644 index 00ff03a46c..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-4.exp +++ /dev/null @@ -1 +0,0 @@ -"ccdd" diff --git a/third_party/nix/tests/lang/eval-okay-scope-4.nix b/third_party/nix/tests/lang/eval-okay-scope-4.nix deleted file mode 100644 index dc8243bc85..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-4.nix +++ /dev/null @@ -1,10 +0,0 @@ -let { - - x = "a"; - y = "b"; - - f = {x ? y, y ? x}: x + y; - - body = f {x = "c";} + f {y = "d";}; - -} diff --git a/third_party/nix/tests/lang/eval-okay-scope-6.exp b/third_party/nix/tests/lang/eval-okay-scope-6.exp deleted file mode 100644 index 00ff03a46c..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-6.exp +++ /dev/null @@ -1 +0,0 @@ -"ccdd" diff --git a/third_party/nix/tests/lang/eval-okay-scope-6.nix b/third_party/nix/tests/lang/eval-okay-scope-6.nix deleted file mode 100644 index 0995d4e7e7..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-6.nix +++ /dev/null @@ -1,7 +0,0 @@ -let { - - f = {x ? y, y ? x}: x + y; - - body = f {x = "c";} + f {y = "d";}; - -} diff --git a/third_party/nix/tests/lang/eval-okay-scope-7.exp b/third_party/nix/tests/lang/eval-okay-scope-7.exp deleted file mode 100644 index d00491fd7e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-7.exp +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/third_party/nix/tests/lang/eval-okay-scope-7.nix b/third_party/nix/tests/lang/eval-okay-scope-7.nix deleted file mode 100644 index 4da02968f6..0000000000 --- a/third_party/nix/tests/lang/eval-okay-scope-7.nix +++ /dev/null @@ -1,6 +0,0 @@ -rec { - inherit (x) y; - x = { - y = 1; - }; -}.y diff --git a/third_party/nix/tests/lang/eval-okay-search-path.exp b/third_party/nix/tests/lang/eval-okay-search-path.exp deleted file mode 100644 index 4519bc406d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-search-path.exp +++ /dev/null @@ -1 +0,0 @@ -"abccX" diff --git a/third_party/nix/tests/lang/eval-okay-search-path.flags b/third_party/nix/tests/lang/eval-okay-search-path.flags deleted file mode 100644 index a28e682100..0000000000 --- a/third_party/nix/tests/lang/eval-okay-search-path.flags +++ /dev/null @@ -1 +0,0 @@ --I lang/dir1 -I lang/dir2 -I dir5=lang/dir3 \ No newline at end of file diff --git a/third_party/nix/tests/lang/eval-okay-search-path.nix b/third_party/nix/tests/lang/eval-okay-search-path.nix deleted file mode 100644 index cca41f821f..0000000000 --- a/third_party/nix/tests/lang/eval-okay-search-path.nix +++ /dev/null @@ -1,11 +0,0 @@ -with import ./lib.nix; -with builtins; - -assert pathExists ; - -assert length __nixPath == 6; -assert length (filter (x: x.prefix == "nix") __nixPath) == 1; -assert length (filter (x: baseNameOf x.path == "dir4") __nixPath) == 1; - -import + import + import + import - + (let __nixPath = [ { path = ./dir2; } { path = ./dir1; } ]; in import ) diff --git a/third_party/nix/tests/lang/eval-okay-seq.exp b/third_party/nix/tests/lang/eval-okay-seq.exp deleted file mode 100644 index 0cfbf08886..0000000000 --- a/third_party/nix/tests/lang/eval-okay-seq.exp +++ /dev/null @@ -1 +0,0 @@ -2 diff --git a/third_party/nix/tests/lang/eval-okay-seq.nix b/third_party/nix/tests/lang/eval-okay-seq.nix deleted file mode 100644 index 0a9a21c03b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-seq.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.seq 1 2 diff --git a/third_party/nix/tests/lang/eval-okay-sort.exp b/third_party/nix/tests/lang/eval-okay-sort.exp deleted file mode 100644 index 148b935163..0000000000 --- a/third_party/nix/tests/lang/eval-okay-sort.exp +++ /dev/null @@ -1 +0,0 @@ -[ [ 42 77 147 249 483 526 ] [ 526 483 249 147 77 42 ] [ "bar" "fnord" "foo" "xyzzy" ] [ { key = 1; value = "foo"; } { key = 1; value = "fnord"; } { key = 2; value = "bar"; } ] ] diff --git a/third_party/nix/tests/lang/eval-okay-sort.nix b/third_party/nix/tests/lang/eval-okay-sort.nix deleted file mode 100644 index 8299c3a4a3..0000000000 --- a/third_party/nix/tests/lang/eval-okay-sort.nix +++ /dev/null @@ -1,8 +0,0 @@ -with builtins; - -[ (sort lessThan [ 483 249 526 147 42 77 ]) - (sort (x: y: y < x) [ 483 249 526 147 42 77 ]) - (sort lessThan [ "foo" "bar" "xyzzy" "fnord" ]) - (sort (x: y: x.key < y.key) - [ { key = 1; value = "foo"; } { key = 2; value = "bar"; } { key = 1; value = "fnord"; } ]) -] diff --git a/third_party/nix/tests/lang/eval-okay-splitversion.exp b/third_party/nix/tests/lang/eval-okay-splitversion.exp deleted file mode 100644 index 153ceb8186..0000000000 --- a/third_party/nix/tests/lang/eval-okay-splitversion.exp +++ /dev/null @@ -1 +0,0 @@ -[ "1" "2" "3" ] diff --git a/third_party/nix/tests/lang/eval-okay-splitversion.nix b/third_party/nix/tests/lang/eval-okay-splitversion.nix deleted file mode 100644 index 9e5c99d2e7..0000000000 --- a/third_party/nix/tests/lang/eval-okay-splitversion.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.splitVersion "1.2.3" diff --git a/third_party/nix/tests/lang/eval-okay-string.exp b/third_party/nix/tests/lang/eval-okay-string.exp deleted file mode 100644 index 63f650f73a..0000000000 --- a/third_party/nix/tests/lang/eval-okay-string.exp +++ /dev/null @@ -1 +0,0 @@ -"foobar/a/b/c/d/foo/xyzzy/foo.txt/../foo/x/yescape: \"quote\" \n \\end\nof\nlinefoobarblaatfoo$bar$\"$\"$" diff --git a/third_party/nix/tests/lang/eval-okay-string.nix b/third_party/nix/tests/lang/eval-okay-string.nix deleted file mode 100644 index 47cc989ad4..0000000000 --- a/third_party/nix/tests/lang/eval-okay-string.nix +++ /dev/null @@ -1,12 +0,0 @@ -"foo" + "bar" - + toString (/a/b + /c/d) - + toString (/foo/bar + "/../xyzzy/." + "/foo.txt") - + ("/../foo" + toString /x/y) - + "escape: \"quote\" \n \\" - + "end -of -line" - + "foo${if true then "b${"a" + "r"}" else "xyzzy"}blaat" - + "foo$bar" - + "$\"$\"" - + "$" diff --git a/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.exp b/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.nix b/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.nix deleted file mode 100644 index 5e40928dbe..0000000000 --- a/third_party/nix/tests/lang/eval-okay-strings-as-attrs-names.nix +++ /dev/null @@ -1,20 +0,0 @@ -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"] diff --git a/third_party/nix/tests/lang/eval-okay-substring.exp b/third_party/nix/tests/lang/eval-okay-substring.exp deleted file mode 100644 index 6aace04b0f..0000000000 --- a/third_party/nix/tests/lang/eval-okay-substring.exp +++ /dev/null @@ -1 +0,0 @@ -"ooxfoobarybarzobaabbc" diff --git a/third_party/nix/tests/lang/eval-okay-substring.nix b/third_party/nix/tests/lang/eval-okay-substring.nix deleted file mode 100644 index 424af00d9b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-substring.nix +++ /dev/null @@ -1,21 +0,0 @@ -with builtins; - -let - - s = "foobar"; - -in - -substring 1 2 s -+ "x" -+ substring 0 (stringLength s) s -+ "y" -+ substring 3 100 s -+ "z" -+ substring 2 (sub (stringLength s) 3) s -+ "a" -+ substring 3 0 s -+ "b" -+ substring 3 1 s -+ "c" -+ substring 5 10 "perl" diff --git a/third_party/nix/tests/lang/eval-okay-tail-call-1.exp-disabled b/third_party/nix/tests/lang/eval-okay-tail-call-1.exp-disabled deleted file mode 100644 index f7393e847d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tail-call-1.exp-disabled +++ /dev/null @@ -1 +0,0 @@ -100000 diff --git a/third_party/nix/tests/lang/eval-okay-tail-call-1.nix b/third_party/nix/tests/lang/eval-okay-tail-call-1.nix deleted file mode 100644 index a3962ce3fd..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tail-call-1.nix +++ /dev/null @@ -1,3 +0,0 @@ -let - f = n: if n == 100000 then n else f (n + 1); -in f 0 diff --git a/third_party/nix/tests/lang/eval-okay-tojson.exp b/third_party/nix/tests/lang/eval-okay-tojson.exp deleted file mode 100644 index e92aae3235..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tojson.exp +++ /dev/null @@ -1 +0,0 @@ -"{\"a\":123,\"b\":-456,\"c\":\"foo\",\"d\":\"foo\\n\\\"bar\\\"\",\"e\":true,\"f\":false,\"g\":[1,2,3],\"h\":[\"a\",[\"b\",{\"foo\\nbar\":{}}]],\"i\":3,\"j\":1.44,\"k\":\"foo\"}" diff --git a/third_party/nix/tests/lang/eval-okay-tojson.nix b/third_party/nix/tests/lang/eval-okay-tojson.nix deleted file mode 100644 index ce67943bea..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tojson.nix +++ /dev/null @@ -1,13 +0,0 @@ -builtins.toJSON - { a = 123; - b = -456; - c = "foo"; - d = "foo\n\"bar\""; - e = true; - f = false; - g = [ 1 2 3 ]; - h = [ "a" [ "b" { "foo\nbar" = {}; } ] ]; - i = 1 + 2; - j = 1.44; - k = { __toString = self: self.a; a = "foo"; }; - } diff --git a/third_party/nix/tests/lang/eval-okay-toxml.exp b/third_party/nix/tests/lang/eval-okay-toxml.exp deleted file mode 100644 index 828220890e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-toxml.exp +++ /dev/null @@ -1 +0,0 @@ -"\n\n \n \n \n \n \n\n" diff --git a/third_party/nix/tests/lang/eval-okay-toxml.nix b/third_party/nix/tests/lang/eval-okay-toxml.nix deleted file mode 100644 index 068c97a6c1..0000000000 --- a/third_party/nix/tests/lang/eval-okay-toxml.nix +++ /dev/null @@ -1,3 +0,0 @@ -# Make sure the expected XML output is produced; in particular, make sure it -# doesn't contain source location information. -builtins.toXML { a = "s"; } diff --git a/third_party/nix/tests/lang/eval-okay-toxml2.exp b/third_party/nix/tests/lang/eval-okay-toxml2.exp deleted file mode 100644 index 634a841eb1..0000000000 --- a/third_party/nix/tests/lang/eval-okay-toxml2.exp +++ /dev/null @@ -1 +0,0 @@ -"\n\n \n \n \n \n \n \n \n \n \n \n \n \n\n" diff --git a/third_party/nix/tests/lang/eval-okay-toxml2.nix b/third_party/nix/tests/lang/eval-okay-toxml2.nix deleted file mode 100644 index ff1791b30e..0000000000 --- a/third_party/nix/tests/lang/eval-okay-toxml2.nix +++ /dev/null @@ -1 +0,0 @@ -builtins.toXML [("a" + "b") 10 (rec {x = "x"; y = x;})] diff --git a/third_party/nix/tests/lang/eval-okay-tryeval.exp b/third_party/nix/tests/lang/eval-okay-tryeval.exp deleted file mode 100644 index 2b2e6fa711..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tryeval.exp +++ /dev/null @@ -1 +0,0 @@ -{ x = { success = true; value = "x"; }; y = { success = false; value = false; }; z = { success = false; value = false; }; } diff --git a/third_party/nix/tests/lang/eval-okay-tryeval.nix b/third_party/nix/tests/lang/eval-okay-tryeval.nix deleted file mode 100644 index 629bc440a8..0000000000 --- a/third_party/nix/tests/lang/eval-okay-tryeval.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - x = builtins.tryEval "x"; - y = builtins.tryEval (assert false; "y"); - z = builtins.tryEval (throw "bla"); -} diff --git a/third_party/nix/tests/lang/eval-okay-types.exp b/third_party/nix/tests/lang/eval-okay-types.exp deleted file mode 100644 index 92a1532993..0000000000 --- a/third_party/nix/tests/lang/eval-okay-types.exp +++ /dev/null @@ -1 +0,0 @@ -[ true false true false true false true false true true true true true true true true true true true false true true true false "int" "bool" "string" "null" "set" "list" "lambda" "lambda" "lambda" "lambda" ] diff --git a/third_party/nix/tests/lang/eval-okay-types.nix b/third_party/nix/tests/lang/eval-okay-types.nix deleted file mode 100644 index 9b58be5d1d..0000000000 --- a/third_party/nix/tests/lang/eval-okay-types.nix +++ /dev/null @@ -1,37 +0,0 @@ -with builtins; - -[ (isNull null) - (isNull (x: x)) - (isFunction (x: x)) - (isFunction "fnord") - (isString ("foo" + "bar")) - (isString [ "x" ]) - (isInt (1 + 2)) - (isInt { x = 123; }) - (isInt (1 / 2)) - (isInt (1 + 1)) - (isInt (1 / 2)) - (isInt (1 * 2)) - (isInt (1 - 2)) - (isFloat (1.2)) - (isFloat (1 + 1.0)) - (isFloat (1 / 2.0)) - (isFloat (1 * 2.0)) - (isFloat (1 - 2.0)) - (isBool (true && false)) - (isBool null) - (isPath /nix/store) - (isPath ./.) - (isAttrs { x = 123; }) - (isAttrs null) - (typeOf (3 * 4)) - (typeOf true) - (typeOf "xyzzy") - (typeOf null) - (typeOf { x = 456; }) - (typeOf [ 1 2 3 ]) - (typeOf (x: x)) - (typeOf ((x: y: x) 1)) - (typeOf map) - (typeOf (map (x: x))) -] diff --git a/third_party/nix/tests/lang/eval-okay-versions.exp b/third_party/nix/tests/lang/eval-okay-versions.exp deleted file mode 100644 index 27ba77ddaf..0000000000 --- a/third_party/nix/tests/lang/eval-okay-versions.exp +++ /dev/null @@ -1 +0,0 @@ -true diff --git a/third_party/nix/tests/lang/eval-okay-versions.nix b/third_party/nix/tests/lang/eval-okay-versions.nix deleted file mode 100644 index e63c36586b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-versions.nix +++ /dev/null @@ -1,40 +0,0 @@ -let - - name1 = "hello-1.0.2"; - name2 = "hello"; - name3 = "915resolution-0.5.2"; - name4 = "xf86-video-i810-1.7.4"; - - eq = 0; - lt = builtins.sub 0 1; - gt = 1; - - versionTest = v1: v2: expected: - let d1 = builtins.compareVersions v1 v2; - d2 = builtins.compareVersions v2 v1; - in d1 == builtins.sub 0 d2 && d1 == expected; - - tests = [ - ((builtins.parseDrvName name1).name == "hello") - ((builtins.parseDrvName name1).version == "1.0.2") - ((builtins.parseDrvName name2).name == "hello") - ((builtins.parseDrvName name2).version == "") - ((builtins.parseDrvName name3).name == "915resolution") - ((builtins.parseDrvName name3).version == "0.5.2") - ((builtins.parseDrvName name4).name == "xf86-video-i810") - ((builtins.parseDrvName name4).version == "1.7.4") - (versionTest "1.0" "2.3" lt) - (versionTest "2.1" "2.3" lt) - (versionTest "2.3" "2.3" eq) - (versionTest "2.5" "2.3" gt) - (versionTest "3.1" "2.3" gt) - (versionTest "2.3.1" "2.3" gt) - (versionTest "2.3.1" "2.3a" gt) - (versionTest "2.3pre1" "2.3" lt) - (versionTest "2.3pre3" "2.3pre12" lt) - (versionTest "2.3a" "2.3c" lt) - (versionTest "2.3pre1" "2.3c" lt) - (versionTest "2.3pre1" "2.3q" lt) - ]; - -in (import ./lib.nix).and tests diff --git a/third_party/nix/tests/lang/eval-okay-with.exp b/third_party/nix/tests/lang/eval-okay-with.exp deleted file mode 100644 index 378c8dc804..0000000000 --- a/third_party/nix/tests/lang/eval-okay-with.exp +++ /dev/null @@ -1 +0,0 @@ -"xyzzybarxyzzybar" diff --git a/third_party/nix/tests/lang/eval-okay-with.nix b/third_party/nix/tests/lang/eval-okay-with.nix deleted file mode 100644 index 033e8d3aba..0000000000 --- a/third_party/nix/tests/lang/eval-okay-with.nix +++ /dev/null @@ -1,19 +0,0 @@ -let { - - a = "xyzzy"; - - as = { - a = "foo"; - b = "bar"; - }; - - bs = { - a = "bar"; - }; - - x = with as; a + b; - - y = with as; with bs; a + b; - - body = x + y; -} diff --git a/third_party/nix/tests/lang/eval-okay-xml.exp.xml b/third_party/nix/tests/lang/eval-okay-xml.exp.xml deleted file mode 100644 index 92b75e0b8b..0000000000 --- a/third_party/nix/tests/lang/eval-okay-xml.exp.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/third_party/nix/tests/lang/eval-okay-xml.nix b/third_party/nix/tests/lang/eval-okay-xml.nix deleted file mode 100644 index 9ee9f8a0b4..0000000000 --- a/third_party/nix/tests/lang/eval-okay-xml.nix +++ /dev/null @@ -1,21 +0,0 @@ -rec { - - x = 123; - - y = 567.890; - - a = "foo"; - - b = "bar"; - - c = "foo" + "bar"; - - f = {z, x, y}: if y then x else z; - - id = x: x; - - at = args@{x, y, z}: x; - - ellipsis = {x, y, z, ...}: x; - -} diff --git a/third_party/nix/tests/lang/imported.nix b/third_party/nix/tests/lang/imported.nix deleted file mode 100644 index fb39ee4efa..0000000000 --- a/third_party/nix/tests/lang/imported.nix +++ /dev/null @@ -1,3 +0,0 @@ -# The function ‘range’ comes from lib.nix and was added to the lexical -# scope by scopedImport. -range 1 5 ++ import ./imported2.nix diff --git a/third_party/nix/tests/lang/imported2.nix b/third_party/nix/tests/lang/imported2.nix deleted file mode 100644 index 6d0a2992b7..0000000000 --- a/third_party/nix/tests/lang/imported2.nix +++ /dev/null @@ -1 +0,0 @@ -range 6 10 diff --git a/third_party/nix/tests/lang/lib.nix b/third_party/nix/tests/lang/lib.nix deleted file mode 100644 index 028a538314..0000000000 --- a/third_party/nix/tests/lang/lib.nix +++ /dev/null @@ -1,61 +0,0 @@ -with builtins; - -rec { - - fold = op: nul: list: - if list == [] - then nul - else op (head list) (fold op nul (tail list)); - - concat = - fold (x: y: x + y) ""; - - and = fold (x: y: x && y) true; - - flatten = x: - if isList x - then fold (x: y: (flatten x) ++ y) [] x - else [x]; - - sum = foldl' (x: y: add x y) 0; - - hasSuffix = ext: fileName: - let lenFileName = stringLength fileName; - lenExt = stringLength ext; - in !(lessThan lenFileName lenExt) && - substring (sub lenFileName lenExt) lenFileName fileName == ext; - - # Split a list at the given position. - splitAt = pos: list: - if pos == 0 then {first = []; second = list;} else - if list == [] then {first = []; second = [];} else - let res = splitAt (sub pos 1) (tail list); - in {first = [(head list)] ++ res.first; second = res.second;}; - - # Stable merge sort. - sortBy = comp: list: - if lessThan 1 (length list) - then - let - split = splitAt (div (length list) 2) list; - first = sortBy comp split.first; - second = sortBy comp split.second; - in mergeLists comp first second - else list; - - mergeLists = comp: list1: list2: - if list1 == [] then list2 else - if list2 == [] then list1 else - if comp (head list2) (head list1) then [(head list2)] ++ mergeLists comp list1 (tail list2) else - [(head list1)] ++ mergeLists comp (tail list1) list2; - - id = x: x; - - const = x: y: x; - - range = first: last: - if first > last - then [] - else genList (n: first + n) (last - first + 1); - -} diff --git a/third_party/nix/tests/lang/parse-fail-dup-attrs-1.nix b/third_party/nix/tests/lang/parse-fail-dup-attrs-1.nix deleted file mode 100644 index 2c02317d2a..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-attrs-1.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ x = 123; - y = 456; - x = 789; -} diff --git a/third_party/nix/tests/lang/parse-fail-dup-attrs-2.nix b/third_party/nix/tests/lang/parse-fail-dup-attrs-2.nix deleted file mode 100644 index 864d9865e0..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-attrs-2.nix +++ /dev/null @@ -1,13 +0,0 @@ -let { - - as = { - x = 123; - y = 456; - }; - - bs = { - x = 789; - inherit (as) x; - }; - -} diff --git a/third_party/nix/tests/lang/parse-fail-dup-attrs-3.nix b/third_party/nix/tests/lang/parse-fail-dup-attrs-3.nix deleted file mode 100644 index 114d19779f..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-attrs-3.nix +++ /dev/null @@ -1,13 +0,0 @@ -let { - - as = { - x = 123; - y = 456; - }; - - bs = rec { - x = 789; - inherit (as) x; - }; - -} diff --git a/third_party/nix/tests/lang/parse-fail-dup-attrs-4.nix b/third_party/nix/tests/lang/parse-fail-dup-attrs-4.nix deleted file mode 100644 index 77417432b3..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-attrs-4.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - services.ssh.port = 22; - services.ssh.port = 23; -} diff --git a/third_party/nix/tests/lang/parse-fail-dup-attrs-7.nix b/third_party/nix/tests/lang/parse-fail-dup-attrs-7.nix deleted file mode 100644 index bbc3eb08c0..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-attrs-7.nix +++ /dev/null @@ -1,9 +0,0 @@ -rec { - - x = 1; - - as = { - inherit x; - inherit x; - }; -} \ No newline at end of file diff --git a/third_party/nix/tests/lang/parse-fail-dup-formals.nix b/third_party/nix/tests/lang/parse-fail-dup-formals.nix deleted file mode 100644 index a0edd91a96..0000000000 --- a/third_party/nix/tests/lang/parse-fail-dup-formals.nix +++ /dev/null @@ -1 +0,0 @@ -{x, y, x}: x \ No newline at end of file diff --git a/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs1.nix b/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs1.nix deleted file mode 100644 index 11e40e66fd..0000000000 --- a/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs1.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - x.z = 3; - x = { y = 3; z = 3; }; -} diff --git a/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs2.nix b/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs2.nix deleted file mode 100644 index 17da82e5f0..0000000000 --- a/third_party/nix/tests/lang/parse-fail-mixed-nested-attrs2.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - x.y.y = 3; - x = { y.y= 3; z = 3; }; -} diff --git a/third_party/nix/tests/lang/parse-fail-patterns-1.nix b/third_party/nix/tests/lang/parse-fail-patterns-1.nix deleted file mode 100644 index 7b40616417..0000000000 --- a/third_party/nix/tests/lang/parse-fail-patterns-1.nix +++ /dev/null @@ -1 +0,0 @@ -args@{args, x, y, z}: x diff --git a/third_party/nix/tests/lang/parse-fail-regression-20060610.nix b/third_party/nix/tests/lang/parse-fail-regression-20060610.nix deleted file mode 100644 index b1934f7e1e..0000000000 --- a/third_party/nix/tests/lang/parse-fail-regression-20060610.nix +++ /dev/null @@ -1,11 +0,0 @@ -let { - x = - {gcc}: - { - inherit gcc; - }; - - body = ({ - inherit gcc; - }).gcc; -} diff --git a/third_party/nix/tests/lang/parse-fail-uft8.nix b/third_party/nix/tests/lang/parse-fail-uft8.nix deleted file mode 100644 index 34948d48ae..0000000000 --- a/third_party/nix/tests/lang/parse-fail-uft8.nix +++ /dev/null @@ -1 +0,0 @@ -123 é 4 diff --git a/third_party/nix/tests/lang/parse-fail-undef-var-2.nix b/third_party/nix/tests/lang/parse-fail-undef-var-2.nix deleted file mode 100644 index c10a52b1ea..0000000000 --- a/third_party/nix/tests/lang/parse-fail-undef-var-2.nix +++ /dev/null @@ -1,7 +0,0 @@ -let { - - f = {x, y : ["baz" "bar" z "bat"]}: x + y; - - body = f {x = "foo"; y = "bar";}; - -} diff --git a/third_party/nix/tests/lang/parse-fail-undef-var.nix b/third_party/nix/tests/lang/parse-fail-undef-var.nix deleted file mode 100644 index 7b63008110..0000000000 --- a/third_party/nix/tests/lang/parse-fail-undef-var.nix +++ /dev/null @@ -1 +0,0 @@ -x: y diff --git a/third_party/nix/tests/lang/parse-okay-1.nix b/third_party/nix/tests/lang/parse-okay-1.nix deleted file mode 100644 index 23a58ed109..0000000000 --- a/third_party/nix/tests/lang/parse-okay-1.nix +++ /dev/null @@ -1 +0,0 @@ -{x, y, z}: x + y + z diff --git a/third_party/nix/tests/lang/parse-okay-crlf.nix b/third_party/nix/tests/lang/parse-okay-crlf.nix deleted file mode 100644 index 21518d4c6d..0000000000 --- a/third_party/nix/tests/lang/parse-okay-crlf.nix +++ /dev/null @@ -1,17 +0,0 @@ -rec { - - /* Dit is - een test. */ - - x = - # Dit is een test. y; - - y = 123; - - # CR or CR/LF (but not explicit \r's) in strings should be - # translated to LF. - foo = "multi line - string - test\r"; - - z = 456; } diff --git a/third_party/nix/tests/lang/parse-okay-dup-attrs-5.nix b/third_party/nix/tests/lang/parse-okay-dup-attrs-5.nix deleted file mode 100644 index f4b9efd0c5..0000000000 --- a/third_party/nix/tests/lang/parse-okay-dup-attrs-5.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - services.ssh = { enable = true; }; - services.ssh.port = 23; -} diff --git a/third_party/nix/tests/lang/parse-okay-dup-attrs-6.nix b/third_party/nix/tests/lang/parse-okay-dup-attrs-6.nix deleted file mode 100644 index ae6d7a7693..0000000000 --- a/third_party/nix/tests/lang/parse-okay-dup-attrs-6.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - services.ssh.port = 23; - services.ssh = { enable = true; }; -} diff --git a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-1.nix b/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-1.nix deleted file mode 100644 index fd1001c8ca..0000000000 --- a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-1.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - x = { y = 3; z = 3; }; - x.q = 3; -} diff --git a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-2.nix b/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-2.nix deleted file mode 100644 index ad066b6803..0000000000 --- a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-2.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ - x.q = 3; - x = { y = 3; z = 3; }; -} diff --git a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-3.nix b/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-3.nix deleted file mode 100644 index 45a33e4803..0000000000 --- a/third_party/nix/tests/lang/parse-okay-mixed-nested-attrs-3.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - services.ssh.enable = true; - services.ssh = { port = 123; }; - services = { - httpd.enable = true; - }; -} diff --git a/third_party/nix/tests/lang/parse-okay-regression-20041027.nix b/third_party/nix/tests/lang/parse-okay-regression-20041027.nix deleted file mode 100644 index ae2e256eea..0000000000 --- a/third_party/nix/tests/lang/parse-okay-regression-20041027.nix +++ /dev/null @@ -1,11 +0,0 @@ -{stdenv, fetchurl /* pkgconfig, libX11 */ }: - -stdenv.mkDerivation { - name = "libXi-6.0.1"; - src = fetchurl { - url = http://freedesktop.org/~xlibs/release/libXi-6.0.1.tar.bz2; - md5 = "7e935a42428d63a387b3c048be0f2756"; - }; -/* buildInputs = [pkgconfig]; - propagatedBuildInputs = [libX11]; */ -} diff --git a/third_party/nix/tests/lang/parse-okay-regression-751.nix b/third_party/nix/tests/lang/parse-okay-regression-751.nix deleted file mode 100644 index 05c78b3016..0000000000 --- a/third_party/nix/tests/lang/parse-okay-regression-751.nix +++ /dev/null @@ -1,2 +0,0 @@ -let const = a: "const"; in -''${ const { x = "q"; }}'' diff --git a/third_party/nix/tests/lang/parse-okay-subversion.nix b/third_party/nix/tests/lang/parse-okay-subversion.nix deleted file mode 100644 index 356272815d..0000000000 --- a/third_party/nix/tests/lang/parse-okay-subversion.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ localServer ? false -, httpServer ? false -, sslSupport ? false -, pythonBindings ? false -, javaSwigBindings ? false -, javahlBindings ? false -, stdenv, fetchurl -, openssl ? null, httpd ? null, db4 ? null, expat, swig ? null, j2sdk ? null -}: - -assert expat != null; -assert localServer -> db4 != null; -assert httpServer -> httpd != null && httpd.expat == expat; -assert sslSupport -> openssl != null && (httpServer -> httpd.openssl == openssl); -assert pythonBindings -> swig != null && swig.pythonSupport; -assert javaSwigBindings -> swig != null && swig.javaSupport; -assert javahlBindings -> j2sdk != null; - -stdenv.mkDerivation { - name = "subversion-1.1.1"; - - builder = /foo/bar; - src = fetchurl { - url = http://subversion.tigris.org/tarballs/subversion-1.1.1.tar.bz2; - md5 = "a180c3fe91680389c210c99def54d9e0"; - }; - - # This is a hopefully temporary fix for the problem that - # libsvnjavahl.so isn't linked against libstdc++, which causes - # loading the library into the JVM to fail. - patches = if javahlBindings then [/javahl.patch] else []; - - openssl = if sslSupport then openssl else null; - httpd = if httpServer then httpd else null; - db4 = if localServer then db4 else null; - swig = if pythonBindings || javaSwigBindings then swig else null; - python = if pythonBindings then swig.python else null; - j2sdk = if javaSwigBindings then swig.j2sdk else - if javahlBindings then j2sdk else null; - - inherit expat localServer httpServer sslSupport - pythonBindings javaSwigBindings javahlBindings; -} diff --git a/third_party/nix/tests/lang/parse-okay-url.nix b/third_party/nix/tests/lang/parse-okay-url.nix deleted file mode 100644 index fce3b13ee6..0000000000 --- a/third_party/nix/tests/lang/parse-okay-url.nix +++ /dev/null @@ -1,7 +0,0 @@ -[ x:x - https://svn.cs.uu.nl:12443/repos/trace/trunk - http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2 - http://losser.st-lab.cs.uu.nl/~armijn/.nix/gcc-3.3.4-static-nix.tar.gz - http://fpdownload.macromedia.com/get/shockwave/flash/english/linux/7.0r25/install_flash_player_7_linux.tar.gz - ftp://ftp.gtk.org/pub/gtk/v1.2/gtk+-1.2.10.tar.gz -] diff --git a/third_party/nix/tests/lang/readDir/bar b/third_party/nix/tests/lang/readDir/bar deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/third_party/nix/tests/lang/readDir/foo/git-hates-directories b/third_party/nix/tests/lang/readDir/foo/git-hates-directories deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/third_party/nix/tests/meson.build b/third_party/nix/tests/meson.build deleted file mode 100644 index c45e00f3ac..0000000000 --- a/third_party/nix/tests/meson.build +++ /dev/null @@ -1,5 +0,0 @@ -# nix doc build file -#============================================================================ - - -# TODO: all of this :| \ No newline at end of file -- cgit 1.4.1