diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-05-12T13·59+0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-05-12T13·59+0000 |
commit | 8032f26ca0bd2233de066ce5786ff976bbd641ae (patch) | |
tree | 954b2ecdce037dcf47b0376616ac05dbad8542ab /tests | |
parent | 4750065ada362bd46e85879975a3148e18df5b0c (diff) | |
parent | bd25ac2260267abd2181324e1650820da70e5e60 (diff) |
* Merged the `fast-eval' branch.
Diffstat (limited to 'tests')
54 files changed, 65 insertions, 69 deletions
diff --git a/tests/common.sh.in b/tests/common.sh.in index 85dd3a38906b..b30bc44b5cc0 100644 --- a/tests/common.sh.in +++ b/tests/common.sh.in @@ -30,7 +30,6 @@ export REAL_STORE_DIR=@storedir@ export NIX_BUILD_HOOK= export PERL=perl export TOP=$(pwd)/.. -export aterm_bin=@aterm_bin@ export bzip2_bin_test="@bzip2_bin_test@" if test "${bzip2_bin_test:0:1}" != "/"; then bzip2_bin_test=`pwd`/${bzip2_bin_test} @@ -41,10 +40,6 @@ export xmlflags="@xmlflags@" export xsltproc="@xsltproc@" export SHELL="@shell@" -# Hack to get "atdiff" to run on Cygwin (Windows looks for -# DLLs in $PATH). -export PATH=$aterm_bin/../lib:$PATH - export version=@version@ export system=@system@ diff --git a/tests/dependencies.nix b/tests/dependencies.nix index a397e1ce4159..00717ae98d90 100644 --- a/tests/dependencies.nix +++ b/tests/dependencies.nix @@ -9,7 +9,7 @@ let { input2 = mkDerivation { name = "dependencies-input-2"; - builder = ./. ~ "dependencies.builder2.sh"; + builder = ./dependencies.builder2.sh; }; body = mkDerivation { diff --git a/tests/lang.sh b/tests/lang.sh index 54f01076371e..fab8c6e0d7f9 100644 --- a/tests/lang.sh +++ b/tests/lang.sh @@ -16,14 +16,10 @@ done for i in lang/parse-okay-*.nix; do echo "parsing $i (should succeed)"; i=$(basename $i .nix) - if ! $nixinstantiate --parse-only - < lang/$i.nix > lang/$i.ast; then + if ! $nixinstantiate --parse-only - < lang/$i.nix > lang/$i.out; then echo "FAIL: $i should parse" fail=1 fi - if ! $aterm_bin/atdiff lang/$i.ast lang/$i.exp; then - echo "FAIL: parse tree of $i not as expected" - fail=1 - fi done for i in lang/eval-fail-*.nix; do @@ -44,10 +40,10 @@ for i in lang/eval-okay-*.nix; do if test -e lang/$i.flags; then flags=$(cat lang/$i.flags) fi - if ! $nixinstantiate $flags --eval-only lang/$i.nix > lang/$i.out; then + if ! $nixinstantiate $flags --eval-only --strict lang/$i.nix > lang/$i.out; then echo "FAIL: $i should evaluate" fail=1 - elif ! $aterm_bin/atdiff lang/$i.out lang/$i.exp; then + elif ! diff lang/$i.out lang/$i.exp; then echo "FAIL: evaluation result of $i not as expected" fail=1 fi diff --git a/tests/lang/eval-okay-arithmetic.exp b/tests/lang/eval-okay-arithmetic.exp index 433cb1c9bb6d..9c113c6f75f9 100644 --- a/tests/lang/eval-okay-arithmetic.exp +++ b/tests/lang/eval-okay-arithmetic.exp @@ -1 +1 @@ -Int(1275) +1275 diff --git a/tests/lang/eval-okay-attrnames.exp b/tests/lang/eval-okay-attrnames.exp index 98af99a0cab0..b4aa387e07b8 100644 --- a/tests/lang/eval-okay-attrnames.exp +++ b/tests/lang/eval-okay-attrnames.exp @@ -1 +1 @@ -Str("newxfoonewxy",[]) +"newxfoonewxy" diff --git a/tests/lang/eval-okay-attrs.exp b/tests/lang/eval-okay-attrs.exp index add36384d296..45b0f829eb33 100644 --- a/tests/lang/eval-okay-attrs.exp +++ b/tests/lang/eval-okay-attrs.exp @@ -1 +1 @@ -Int(987) \ No newline at end of file +987 diff --git a/tests/lang/eval-okay-attrs2.exp b/tests/lang/eval-okay-attrs2.exp index add36384d296..45b0f829eb33 100644 --- a/tests/lang/eval-okay-attrs2.exp +++ b/tests/lang/eval-okay-attrs2.exp @@ -1 +1 @@ -Int(987) \ No newline at end of file +987 diff --git a/tests/lang/eval-okay-attrs3.exp b/tests/lang/eval-okay-attrs3.exp index d2c7555c1f6c..19de4fdf79f7 100644 --- a/tests/lang/eval-okay-attrs3.exp +++ b/tests/lang/eval-okay-attrs3.exp @@ -1 +1 @@ -Str("foo 22 80 itchyxac",[]) +"foo 22 80 itchyxac" diff --git a/tests/lang/eval-okay-autoargs.exp b/tests/lang/eval-okay-autoargs.exp index 3b12bdd5e596..7a8391786a09 100644 --- a/tests/lang/eval-okay-autoargs.exp +++ b/tests/lang/eval-okay-autoargs.exp @@ -1 +1 @@ -Str("xyzzy!xyzzy!foobar",[]) +"xyzzy!xyzzy!foobar" diff --git a/tests/lang/eval-okay-builtins.exp b/tests/lang/eval-okay-builtins.exp index f4f3ba81a101..0661686d611d 100644 --- a/tests/lang/eval-okay-builtins.exp +++ b/tests/lang/eval-okay-builtins.exp @@ -1 +1 @@ -Path("/foo") +/foo diff --git a/tests/lang/eval-okay-concat.exp b/tests/lang/eval-okay-concat.exp index 359ccef86f0f..bb4bbd577410 100644 --- a/tests/lang/eval-okay-concat.exp +++ b/tests/lang/eval-okay-concat.exp @@ -1 +1 @@ -List([Int(1),Int(2),Int(3),Int(4),Int(5),Int(6),Int(7),Int(8),Int(9)]) +[ 1 2 3 4 5 6 7 8 9 ] diff --git a/tests/lang/eval-okay-context.exp b/tests/lang/eval-okay-context.exp index 95a993654263..2f535bdbc454 100644 --- a/tests/lang/eval-okay-context.exp +++ b/tests/lang/eval-okay-context.exp @@ -1 +1 @@ -Str("foo eval-okay-context.nix bar",[]) +"foo eval-okay-context.nix bar" diff --git a/tests/lang/eval-okay-empty-args.exp b/tests/lang/eval-okay-empty-args.exp index c386bbc80410..cb5537d5d7ce 100644 --- a/tests/lang/eval-okay-empty-args.exp +++ b/tests/lang/eval-okay-empty-args.exp @@ -1 +1 @@ -Str("ab",[]) +"ab" diff --git a/tests/lang/eval-okay-flatten.exp b/tests/lang/eval-okay-flatten.exp index 50c91bee5ed5..b979b2b8b9bc 100644 --- a/tests/lang/eval-okay-flatten.exp +++ b/tests/lang/eval-okay-flatten.exp @@ -1 +1 @@ -Str("1234567",[]) +"1234567" diff --git a/tests/lang/eval-okay-getenv.exp b/tests/lang/eval-okay-getenv.exp index 7c3659b970e8..14e24d419005 100644 --- a/tests/lang/eval-okay-getenv.exp +++ b/tests/lang/eval-okay-getenv.exp @@ -1 +1 @@ -Str("foobar",[]) +"foobar" diff --git a/tests/lang/eval-okay-if.exp b/tests/lang/eval-okay-if.exp index 8b99801d3596..00750edc07d6 100644 --- a/tests/lang/eval-okay-if.exp +++ b/tests/lang/eval-okay-if.exp @@ -1 +1 @@ -Int(3) \ No newline at end of file +3 diff --git a/tests/lang/eval-okay-ind-string.exp b/tests/lang/eval-okay-ind-string.exp index b8d2f5b39ac3..886219dcf652 100644 --- a/tests/lang/eval-okay-ind-string.exp +++ b/tests/lang/eval-okay-ind-string.exp @@ -1 +1 @@ -Str("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\n",[]) +"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\n" diff --git a/tests/lang/eval-okay-let.exp b/tests/lang/eval-okay-let.exp index 7c3659b970e8..14e24d419005 100644 --- a/tests/lang/eval-okay-let.exp +++ b/tests/lang/eval-okay-let.exp @@ -1 +1 @@ -Str("foobar",[]) +"foobar" diff --git a/tests/lang/eval-okay-list.exp b/tests/lang/eval-okay-list.exp index b9cad67dd1e4..f784f26d83f4 100644 --- a/tests/lang/eval-okay-list.exp +++ b/tests/lang/eval-okay-list.exp @@ -1 +1 @@ -Str("foobarblatest",[]) +"foobarblatest" diff --git a/tests/lang/eval-okay-listToAttrs.out b/tests/lang/eval-okay-listToAttrs.out deleted file mode 100644 index 4e779ff063f0..000000000000 --- a/tests/lang/eval-okay-listToAttrs.out +++ /dev/null @@ -1 +0,0 @@ -List([Attrs([Bind("a",Str("A",[]),NoPos),Bind("b",Str("B",[]),NoPos)]),Attrs([Bind("a",Str("A",[]),NoPos),Bind("b",Str("B",[]),NoPos)])]) diff --git a/tests/lang/eval-okay-listtoattrs.exp b/tests/lang/eval-okay-listtoattrs.exp new file mode 100644 index 000000000000..11d29b588ac1 --- /dev/null +++ b/tests/lang/eval-okay-listtoattrs.exp @@ -0,0 +1 @@ +"AA" diff --git a/tests/lang/eval-okay-listToAttrs.nix b/tests/lang/eval-okay-listtoattrs.nix index f5eae92ccd98..d5cd726b0c64 100644 --- a/tests/lang/eval-okay-listToAttrs.nix +++ b/tests/lang/eval-okay-listtoattrs.nix @@ -1,8 +1,10 @@ # this test shows how to use listToAttrs and that evaluation is still lazy (throw isn't called) +with import ./lib.nix; + let - asi = attr: value : { inherit attr value; }; + 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")) ]; -in r.result +in concat (map (x: x.a) r.result) diff --git a/tests/lang/eval-okay-logic.exp b/tests/lang/eval-okay-logic.exp index f1161b8d5588..d00491fd7e5b 100644 --- a/tests/lang/eval-okay-logic.exp +++ b/tests/lang/eval-okay-logic.exp @@ -1 +1 @@ -Int(1) \ No newline at end of file +1 diff --git a/tests/lang/eval-okay-map.exp b/tests/lang/eval-okay-map.exp index 2d9456dc00d5..dbb64f717b96 100644 --- a/tests/lang/eval-okay-map.exp +++ b/tests/lang/eval-okay-map.exp @@ -1 +1 @@ -Str("foobarblabarxyzzybar",[]) +"foobarblabarxyzzybar" diff --git a/tests/lang/eval-okay-new-let.exp b/tests/lang/eval-okay-new-let.exp index f10a34e7109e..f98b388071c2 100644 --- a/tests/lang/eval-okay-new-let.exp +++ b/tests/lang/eval-okay-new-let.exp @@ -1 +1 @@ -Str("xyzzyfoobar",[]) +"xyzzyfoobar" diff --git a/tests/lang/eval-okay-pathexists.exp b/tests/lang/eval-okay-pathexists.exp index 2015847b65e7..27ba77ddaf61 100644 --- a/tests/lang/eval-okay-pathexists.exp +++ b/tests/lang/eval-okay-pathexists.exp @@ -1 +1 @@ -Bool(True) +true diff --git a/tests/lang/eval-okay-patterns.exp b/tests/lang/eval-okay-patterns.exp index 8422900dd9e8..a4304010fe80 100644 --- a/tests/lang/eval-okay-patterns.exp +++ b/tests/lang/eval-okay-patterns.exp @@ -1 +1 @@ -Str("abcxyzDDDDEFghijk",[]) +"abcxyzDDDDEFijk" diff --git a/tests/lang/eval-okay-patterns.nix b/tests/lang/eval-okay-patterns.nix index c233c406c766..96fd25a01517 100644 --- a/tests/lang/eval-okay-patterns.nix +++ b/tests/lang/eval-okay-patterns.nix @@ -6,8 +6,6 @@ let h = {x ? "d", y ? x, z ? args.x}@args: x + y + z; - i = args@args2: args.x + args2.y; - j = {x, y, z, ...}: x + y + z; in @@ -15,5 +13,4 @@ in g {x = "x"; y = "y"; z = "z";} + h {x = "D";} + h {x = "D"; y = "E"; z = "F";} + - i {x = "g"; y = "h";} + j {x = "i"; y = "j"; z = "k"; bla = "bla"; foo = "bar";} diff --git a/tests/lang/eval-okay-readfile.exp b/tests/lang/eval-okay-readfile.exp index 979771c7a320..a2c87d0c439f 100644 --- a/tests/lang/eval-okay-readfile.exp +++ b/tests/lang/eval-okay-readfile.exp @@ -1 +1 @@ -Str("builtins.readFile ./eval-okay-readfile.nix\n",[]) +"builtins.readFile ./eval-okay-readfile.nix\n" diff --git a/tests/lang/eval-okay-remove.exp b/tests/lang/eval-okay-remove.exp index e22e6b1b2162..8d38505c1686 100644 --- a/tests/lang/eval-okay-remove.exp +++ b/tests/lang/eval-okay-remove.exp @@ -1 +1 @@ -Int(456) +456 diff --git a/tests/lang/eval-okay-scope-1.exp b/tests/lang/eval-okay-scope-1.exp index 7da0e4219eee..00750edc07d6 100644 --- a/tests/lang/eval-okay-scope-1.exp +++ b/tests/lang/eval-okay-scope-1.exp @@ -1 +1 @@ -Int(3) +3 diff --git a/tests/lang/eval-okay-scope-2.exp b/tests/lang/eval-okay-scope-2.exp index 067d2b7461e8..d00491fd7e5b 100644 --- a/tests/lang/eval-okay-scope-2.exp +++ b/tests/lang/eval-okay-scope-2.exp @@ -1 +1 @@ -Int(1) +1 diff --git a/tests/lang/eval-okay-scope-3.exp b/tests/lang/eval-okay-scope-3.exp index 65c1faee25ec..b8626c4cff28 100644 --- a/tests/lang/eval-okay-scope-3.exp +++ b/tests/lang/eval-okay-scope-3.exp @@ -1 +1 @@ -Int(4) +4 diff --git a/tests/lang/eval-okay-scope-4.exp b/tests/lang/eval-okay-scope-4.exp index ea9580603593..00ff03a46c9b 100644 --- a/tests/lang/eval-okay-scope-4.exp +++ b/tests/lang/eval-okay-scope-4.exp @@ -1 +1 @@ -Str("ccdd",[]) +"ccdd" diff --git a/tests/lang/eval-okay-scope-6.exp b/tests/lang/eval-okay-scope-6.exp index ea9580603593..00ff03a46c9b 100644 --- a/tests/lang/eval-okay-scope-6.exp +++ b/tests/lang/eval-okay-scope-6.exp @@ -1 +1 @@ -Str("ccdd",[]) +"ccdd" diff --git a/tests/lang/eval-okay-scope-7.exp b/tests/lang/eval-okay-scope-7.exp index 067d2b7461e8..d00491fd7e5b 100644 --- a/tests/lang/eval-okay-scope-7.exp +++ b/tests/lang/eval-okay-scope-7.exp @@ -1 +1 @@ -Int(1) +1 diff --git a/tests/lang/eval-okay-string.exp b/tests/lang/eval-okay-string.exp index 8249c7c8d2ce..6079202470e3 100644 --- a/tests/lang/eval-okay-string.exp +++ b/tests/lang/eval-okay-string.exp @@ -1 +1 @@ -Str("foobar/a/b/c/d/foo/xyzzy/foo.txt/../foo/x/yescape: \"quote\" \n \\end\nof\nlinefoobarblaatfoo$bar",[]) +"foobar/a/b/c/d/foo/xyzzy/foo.txt/../foo/x/yescape: \"quote\" \n \\end\nof\nlinefoobarblaatfoo$bar" diff --git a/tests/lang/eval-okay-substring.exp b/tests/lang/eval-okay-substring.exp index d6098476b820..d936b7e96f94 100644 --- a/tests/lang/eval-okay-substring.exp +++ b/tests/lang/eval-okay-substring.exp @@ -1 +1 @@ -Str("ooxfoobarybarzobaabb",[]) +"ooxfoobarybarzobaabb" diff --git a/tests/lang/eval-okay-to-xml.exp b/tests/lang/eval-okay-to-xml.exp deleted file mode 100644 index 0a4d1884eddd..000000000000 --- a/tests/lang/eval-okay-to-xml.exp +++ /dev/null @@ -1 +0,0 @@ -Str("<?xml version='1.0' encoding='utf-8'?>\n<expr>\n <list>\n <string value=\"ab\" />\n <int value=\"10\" />\n <attrs>\n <attr name=\"x\">\n <string value=\"x\" />\n </attr>\n <attr name=\"y\">\n <string value=\"x\" />\n </attr>\n </attrs>\n </list>\n</expr>\n",[]) diff --git a/tests/lang/eval-okay-toxml.exp b/tests/lang/eval-okay-toxml.exp index 379f3c07617e..828220890ecd 100644 --- a/tests/lang/eval-okay-toxml.exp +++ b/tests/lang/eval-okay-toxml.exp @@ -1 +1 @@ -Str("<?xml version='1.0' encoding='utf-8'?>\n<expr>\n <attrs>\n <attr name=\"a\">\n <string value=\"s\" />\n </attr>\n </attrs>\n</expr>\n",[]) +"<?xml version='1.0' encoding='utf-8'?>\n<expr>\n <attrs>\n <attr name=\"a\">\n <string value=\"s\" />\n </attr>\n </attrs>\n</expr>\n" diff --git a/tests/lang/eval-okay-toxml2.exp b/tests/lang/eval-okay-toxml2.exp new file mode 100644 index 000000000000..634a841eb190 --- /dev/null +++ b/tests/lang/eval-okay-toxml2.exp @@ -0,0 +1 @@ +"<?xml version='1.0' encoding='utf-8'?>\n<expr>\n <list>\n <string value=\"ab\" />\n <int value=\"10\" />\n <attrs>\n <attr name=\"x\">\n <string value=\"x\" />\n </attr>\n <attr name=\"y\">\n <string value=\"x\" />\n </attr>\n </attrs>\n </list>\n</expr>\n" diff --git a/tests/lang/eval-okay-to-xml.nix b/tests/lang/eval-okay-toxml2.nix index ff1791b30eb5..ff1791b30eb5 100644 --- a/tests/lang/eval-okay-to-xml.nix +++ b/tests/lang/eval-okay-toxml2.nix diff --git a/tests/lang/eval-okay-tryeval.exp b/tests/lang/eval-okay-tryeval.exp new file mode 100644 index 000000000000..2b2e6fa711f4 --- /dev/null +++ b/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/tests/lang/eval-okay-tryeval.nix b/tests/lang/eval-okay-tryeval.nix new file mode 100644 index 000000000000..629bc440a85a --- /dev/null +++ b/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/tests/lang/eval-okay-versions.exp b/tests/lang/eval-okay-versions.exp index 2015847b65e7..27ba77ddaf61 100644 --- a/tests/lang/eval-okay-versions.exp +++ b/tests/lang/eval-okay-versions.exp @@ -1 +1 @@ -Bool(True) +true diff --git a/tests/lang/eval-okay-with.exp b/tests/lang/eval-okay-with.exp index 2c9bd8ba0e27..378c8dc80403 100644 --- a/tests/lang/eval-okay-with.exp +++ b/tests/lang/eval-okay-with.exp @@ -1 +1 @@ -Str("xyzzybarxyzzybar",[]) +"xyzzybarxyzzybar" diff --git a/tests/lang/eval-okay-xml.exp.xml b/tests/lang/eval-okay-xml.exp.xml index 72a96d54c7d3..f124f939ed48 100644 --- a/tests/lang/eval-okay-xml.exp.xml +++ b/tests/lang/eval-okay-xml.exp.xml @@ -6,14 +6,11 @@ </attr> <attr name="at"> <function> - <at> - <varpat name="args" /> - <attrspat> - <attr name="x" /> - <attr name="y" /> - <attr name="z" /> - </attrspat> - </at> + <attrspat name="args"> + <attr name="x" /> + <attr name="y" /> + <attr name="z" /> + </attrspat> </function> </attr> <attr name="b"> @@ -24,11 +21,10 @@ </attr> <attr name="ellipsis"> <function> - <attrspat> + <attrspat ellipsis="1"> <attr name="x" /> <attr name="y" /> <attr name="z" /> - <ellipsis /> </attrspat> </function> </attr> diff --git a/tests/lang/parse-fail-dup-attrs-7.nix b/tests/lang/parse-fail-dup-attrs-7.nix new file mode 100644 index 000000000000..bbc3eb08c0f6 --- /dev/null +++ b/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/tests/lang/parse-okay-1.exp b/tests/lang/parse-okay-1.exp deleted file mode 100644 index bb8746ec45a6..000000000000 --- a/tests/lang/parse-okay-1.exp +++ /dev/null @@ -1 +0,0 @@ -Function(AttrsPat([Formal("x",NoDefaultValue),Formal("y",NoDefaultValue),Formal("z",NoDefaultValue)],Bool(False)),OpPlus(OpPlus(Var("x"),Var("y")),Var("z")),NoPos) diff --git a/tests/lang/parse-okay-crlf.exp b/tests/lang/parse-okay-crlf.exp deleted file mode 100644 index 7d4d9e3876c2..000000000000 --- a/tests/lang/parse-okay-crlf.exp +++ /dev/null @@ -1 +0,0 @@ -Rec([Bind("x",Var("y"),NoPos),Bind("y",Int(123),NoPos),Bind("foo",Str("multi\nline\n string\n test\r",[]),NoPos),Bind("z",Int(456),NoPos)],[]) diff --git a/tests/lang/parse-fail-dup-attrs-5.nix b/tests/lang/parse-okay-dup-attrs-5.nix index f4b9efd0c596..f4b9efd0c596 100644 --- a/tests/lang/parse-fail-dup-attrs-5.nix +++ b/tests/lang/parse-okay-dup-attrs-5.nix diff --git a/tests/lang/parse-okay-regression-20041027.exp b/tests/lang/parse-okay-regression-20041027.exp deleted file mode 100644 index a302e248844f..000000000000 --- a/tests/lang/parse-okay-regression-20041027.exp +++ /dev/null @@ -1 +0,0 @@ -Function(AttrsPat([Formal("stdenv",NoDefaultValue),Formal("fetchurl",NoDefaultValue)],Bool(False)),Call(Select(Var("stdenv"),"mkDerivation"),Attrs([Bind("name",Str("libXi-6.0.1",[]),NoPos),Bind("src",Call(Var("fetchurl"),Attrs([Bind("md5",Str("7e935a42428d63a387b3c048be0f2756",[]),NoPos),Bind("url",Str("http://freedesktop.org/~xlibs/release/libXi-6.0.1.tar.bz2",[]),NoPos)])),NoPos)])),NoPos) diff --git a/tests/lang/parse-okay-subversion.exp b/tests/lang/parse-okay-subversion.exp deleted file mode 100644 index 102153c18a84..000000000000 --- a/tests/lang/parse-okay-subversion.exp +++ /dev/null @@ -1 +0,0 @@ -Function(AttrsPat([Formal("localServer",DefaultValue(Var("false"))),Formal("httpServer",DefaultValue(Var("false"))),Formal("sslSupport",DefaultValue(Var("false"))),Formal("pythonBindings",DefaultValue(Var("false"))),Formal("javaSwigBindings",DefaultValue(Var("false"))),Formal("javahlBindings",DefaultValue(Var("false"))),Formal("stdenv",NoDefaultValue),Formal("fetchurl",NoDefaultValue),Formal("openssl",DefaultValue(Var("null"))),Formal("httpd",DefaultValue(Var("null"))),Formal("db4",DefaultValue(Var("null"))),Formal("expat",NoDefaultValue),Formal("swig",DefaultValue(Var("null"))),Formal("j2sdk",DefaultValue(Var("null")))],Bool(False)),Assert(OpNEq(Var("expat"),Var("null")),Assert(OpImpl(Var("localServer"),OpNEq(Var("db4"),Var("null"))),Assert(OpImpl(Var("httpServer"),OpAnd(OpNEq(Var("httpd"),Var("null")),OpEq(Select(Var("httpd"),"expat"),Var("expat")))),Assert(OpImpl(Var("sslSupport"),OpAnd(OpNEq(Var("openssl"),Var("null")),OpImpl(Var("httpServer"),OpEq(Select(Var("httpd"),"openssl"),Var("openssl"))))),Assert(OpImpl(Var("pythonBindings"),OpAnd(OpNEq(Var("swig"),Var("null")),Select(Var("swig"),"pythonSupport"))),Assert(OpImpl(Var("javaSwigBindings"),OpAnd(OpNEq(Var("swig"),Var("null")),Select(Var("swig"),"javaSupport"))),Assert(OpImpl(Var("javahlBindings"),OpNEq(Var("j2sdk"),Var("null"))),Call(Select(Var("stdenv"),"mkDerivation"),Attrs([Bind("builder",Path("/foo/bar"),NoPos),Bind("db4",If(Var("localServer"),Var("db4"),Var("null")),NoPos),Bind("expat",Var("expat"),NoPos),Bind("httpServer",Var("httpServer"),NoPos),Bind("httpd",If(Var("httpServer"),Var("httpd"),Var("null")),NoPos),Bind("j2sdk",If(Var("javaSwigBindings"),Select(Var("swig"),"j2sdk"),If(Var("javahlBindings"),Var("j2sdk"),Var("null"))),NoPos),Bind("javaSwigBindings",Var("javaSwigBindings"),NoPos),Bind("javahlBindings",Var("javahlBindings"),NoPos),Bind("localServer",Var("localServer"),NoPos),Bind("name",Str("subversion-1.1.1",[]),NoPos),Bind("openssl",If(Var("sslSupport"),Var("openssl"),Var("null")),NoPos),Bind("patches",If(Var("javahlBindings"),List([Path("/javahl.patch")]),List([])),NoPos),Bind("python",If(Var("pythonBindings"),Select(Var("swig"),"python"),Var("null")),NoPos),Bind("pythonBindings",Var("pythonBindings"),NoPos),Bind("src",Call(Var("fetchurl"),Attrs([Bind("md5",Str("a180c3fe91680389c210c99def54d9e0",[]),NoPos),Bind("url",Str("http://subversion.tigris.org/tarballs/subversion-1.1.1.tar.bz2",[]),NoPos)])),NoPos),Bind("sslSupport",Var("sslSupport"),NoPos),Bind("swig",If(OpOr(Var("pythonBindings"),Var("javaSwigBindings")),Var("swig"),Var("null")),NoPos)])),NoPos),NoPos),NoPos),NoPos),NoPos),NoPos),NoPos),NoPos) diff --git a/tests/lang/parse-okay-url.exp b/tests/lang/parse-okay-url.exp deleted file mode 100644 index 2aa22c379e74..000000000000 --- a/tests/lang/parse-okay-url.exp +++ /dev/null @@ -1 +0,0 @@ -List([Str("x:x",[]),Str("https://svn.cs.uu.nl:12443/repos/trace/trunk",[]),Str("http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2",[]),Str("http://losser.st-lab.cs.uu.nl/~armijn/.nix/gcc-3.3.4-static-nix.tar.gz",[]),Str("http://fpdownload.macromedia.com/get/shockwave/flash/english/linux/7.0r25/install_flash_player_7_linux.tar.gz",[]),Str("ftp://ftp.gtk.org/pub/gtk/v1.2/gtk+-1.2.10.tar.gz",[])]) |