From 8c8fd132894f98dfa3ba636a9173e2c8e4708476 Mon Sep 17 00:00:00 2001 From: moritz Date: Thu, 11 Sep 2008 18:52:57 +0000 Subject: [PATCH] [t/spec] many test fixes, mostly related to undef git-svn-id: http://svn.pugscode.org/pugs@22215 c213334d-75ef-0310-aa23-eaa082d1ae64 --- S02-builtin_data_types/anon_block.t | 2 +- S02-builtin_data_types/array.t | 4 +- S02-builtin_data_types/array_ref.t | 4 +- S02-builtin_data_types/num.t | 4 +- S02-literals/hash-interpolation.t | 2 +- S02-literals/quoting.t | 5 +- S02-names_and_variables/perl.t | 3 -- S03-operators/assign.t | 80 ++++++++++++++--------------- S03-operators/binding-scalars.t | 2 +- S03-operators/feed.t | 2 +- S05-metasyntax/regex.t | 4 +- S29-hash/delete.t | 2 +- 12 files changed, 56 insertions(+), 58 deletions(-) diff --git a/S02-builtin_data_types/anon_block.t b/S02-builtin_data_types/anon_block.t index f3529ee470..c4e21bfbc2 100644 --- a/S02-builtin_data_types/anon_block.t +++ b/S02-builtin_data_types/anon_block.t @@ -84,7 +84,7 @@ my $two; # Additionally, a smart compiler will detect thus errors at compile-time, so I # added an eval(). --iblech try { eval '0,{$one = 1}{$two = 2}' }; -is($one, undef, 'two blocks ({} {}) no semicolon after either,.. first block does not execute'); +ok(!defined($one), 'two blocks ({} {}) no semicolon after either,.. first block does not execute'); #?rakudo todo 'blocks as subscripts (?)' is($two, 2, '... but second block does (parsed as hash subscript)'); diff --git a/S02-builtin_data_types/array.t b/S02-builtin_data_types/array.t index 2dc581f2e8..5f7365f5be 100644 --- a/S02-builtin_data_types/array.t +++ b/S02-builtin_data_types/array.t @@ -53,7 +53,7 @@ my @array2 = ("test", 1, undef); #?rakudo todo 'list assignment' is(+@array4, 3, 'the array4 has 3 elements'); - is(@array4[0], undef, 'got the right value at array4 index 0'); + ok(!defined(@array4[0]), 'got the right value at array4 index 0'); #?rakudo 2 todo 'list assignment' is(@array4[1], 1, 'got the right value at array4 index 1'); is(@array4[2], 'test', 'got the right value at array4 index 2'); @@ -66,7 +66,7 @@ my @array2 = ("test", 1, undef); #?rakudo todo 'array slices and list assignment' is(+@array5, 6, 'the array5 has 6 elements'); - is(@array5[0], undef, 'got the right value at array5 index 0'); + ok(!defined(@array5[0]), 'got the right value at array5 index 0'); #?rakudo 5 todo 'array slices and list assignment' is(@array5[1], 1, 'got the right value at array5 index 1'); is(@array5[2], 'test', 'got the right value at array5 index 2'); diff --git a/S02-builtin_data_types/array_ref.t b/S02-builtin_data_types/array_ref.t index 87e68b883d..fea85d3ff1 100644 --- a/S02-builtin_data_types/array_ref.t +++ b/S02-builtin_data_types/array_ref.t @@ -49,7 +49,7 @@ isa_ok($array_ref4, Array); my $array_ref5 = [ $array_ref2[2, 1, 0], $array_ref1[2, 1, 0] ]; isa_ok($array_ref5, Array); -#?rakudo skip 'flatten and slices are not working' +#?rakudo todo 'flatten and slices are not working' { is(+$array_ref5, 6, 'the array_ref5 has 6 elements'); is(!$array_ref5[0].defined, 'got the right value at array_ref5 index 0'); @@ -79,7 +79,7 @@ isa_ok($array_ref5, Array); my $array_ref7 = [ $array_ref1[(2, 1, 0)] ]; isa_ok($array_ref7, Array); -#?rakudo skip 'flatten and slices are not working' +#?rakudo todo 'flatten and slices are not working' { is(+$array_ref7, 3, 'the array_ref7 has 3 elements'); is($array_ref7[0], 'baz', 'got the right value at array_ref7 index 0'); diff --git a/S02-builtin_data_types/num.t b/S02-builtin_data_types/num.t index 3b876eef12..54a85bd5cf 100644 --- a/S02-builtin_data_types/num.t +++ b/S02-builtin_data_types/num.t @@ -150,12 +150,12 @@ plan 47; is(42_000, 42000, 'underscores allowed (and ignored) in numeric literals'); is(42_127_000, 42127000, 'multiple underscores ok'); -#?rakudo 2 skip "underscores cause weird IMCC errors" +#?rakudo 2 todo "underscores cause weird IMCC errors" is(42.0_1, 42.01, 'underscores in fraction ok'); is(4_2.01, 42.01, 'underscores in whole part ok'); eval_dies_ok('4_2._0_1', 'single underscores are not ok directly after the dot'); -#?rakudo skip 'Underscores in numbers' +#?rakudo todo 'Underscores in numbers' is(4_2.0_1, 42.01, 'single underscores are ok'); is 0_1, 1, "0_1 is parsed as 0d1"; diff --git a/S02-literals/hash-interpolation.t b/S02-literals/hash-interpolation.t index 27de757e66..fd34c6fa85 100644 --- a/S02-literals/hash-interpolation.t +++ b/S02-literals/hash-interpolation.t @@ -27,7 +27,7 @@ plan 10; is "%hash", '%hash', 'no interpolation'; } -#?rakudo skip 'Hash interpolation' +#?rakudo todo 'Hash interpolation' { # "%hash{a}" actually calls a(). Test that. my %hash = (a => 1, b => 2); diff --git a/S02-literals/quoting.t b/S02-literals/quoting.t index b79c6f88b3..a3a9fdf6d8 100644 --- a/S02-literals/quoting.t +++ b/S02-literals/quoting.t @@ -2,7 +2,7 @@ use v6; use Test; -plan 198; +plan 199; my $foo = "FOO"; my $bar = "BAR"; @@ -13,7 +13,7 @@ Tests quoting constructs as defined in L =todo -* Q, q:b, and other interpolation levels (half-done) +* q:b and other interpolation levels (half-done) * meaningful quotations (qx, rx, etc) * review shell quoting semantics of «» * arrays in «» @@ -47,6 +47,7 @@ Tests quoting constructs as defined in L ok Q{\n}.chars == 2, 'Q{..} do not interpolate \n'; is Q{$x}, '$x', 'Q{..} do not interpolate scalars'; ok Q{$x}.chars == 2, 'Q{..} do not interpolate scalars'; + is Q {\\}, '\\\\', 'Q {..} quoting'; } #?rakudo skip 'Q quoting' diff --git a/S02-names_and_variables/perl.t b/S02-names_and_variables/perl.t index 2de788a4e6..54c6435ca0 100644 --- a/S02-names_and_variables/perl.t +++ b/S02-names_and_variables/perl.t @@ -35,11 +35,8 @@ my @tests = ( [], # empty array [ 42 ], # only one elem [< a b c>], - #?rakudo emit # {...}.perl is invalid {}, # empty hash - #?rakudo emit # {...}.perl is invalid { a => 42 }, # only one elem - #?rakudo emit # {...}.perl is invalid { :a(1), :b(2), :c(3) }, [ 3..42 ], diff --git a/S03-operators/assign.t b/S03-operators/assign.t index 5fa8b6c003..2f9e2fbb69 100644 --- a/S03-operators/assign.t +++ b/S03-operators/assign.t @@ -152,7 +152,7 @@ plan 304; is(@a[1], 100, "assigned correct value from list to sliced array"); is(@a[2], 200, "... and second"); is(@a[3], 300, "... and third"); - is(@a[0], undef, "won't modify unassigned one"); + is(!defined(@a[0]), "won't modify unassigned one"); my @b; (@b[2, 1, 0]) = 401, 201, 1; @@ -169,7 +169,7 @@ plan 304; is(@c[3], 300, "... and third"); is(@d[0], 400, "... and fourth"); is(@d[1], 500, "... and fifth"); - is(@c[0], undef, "won't modify unassigned one"); + is(!defined(@c[0]), "won't modify unassigned one"); } @@ -200,7 +200,7 @@ plan 304; @a = 1; @b = 2; (@b, @a) = (@a, @b); - is(@a[0], undef, '(@b, @a) = (@a, @b) assignment \@a[0] == undef'); + is(!defined(@a[0]), '(@b, @a) = (@a, @b) assignment \@a[0] == undef'); is(@b[0], 1, '(@b, @a) = (@a, @b) assignment \@b[0]'); is(@b[1], 2, '(@b, @a) = (@a, @b) assignment \@b[1]'); } @@ -213,7 +213,7 @@ plan 304; @a = (1); @b = (2); (@b, @a) = @a, @b; - is(@a[0], undef, '(@b, @a) = @a, @b assignment \@a[0] == undef'); + is(!defined(@a[0]), '(@b, @a) = @a, @b assignment \@a[0] == undef'); is(@b[0], 1, '(@b, @a) = @a, @b assignment \@b[0]'); is(@b[1], 2, '(@b, @a) = @a, @b assignment \@b[1]'); } @@ -352,7 +352,7 @@ my @p; is(@x[3], 'z', 'xx= operator 3'); is(@x[4], 'a', 'xx= operator 4'); is(@x[5], 'z', 'xx= operator 5'); - is(@x[6], undef, 'xx= operator 6'); + is(!defined(@x[6]), 'xx= operator 6'); is(~@p,~(@x,4), "xx= operator parses as item assignment 1"); } @@ -570,7 +570,7 @@ sub W () { substr(eval('want'), 0, 1) } my $a; my @z = (@$a = W, W, W); is($a, 'L L L', 'lhs treats @$a as list'); - is(@z, undef, 'lhs treats @$a as list'); + is(!defined(@z), 'lhs treats @$a as list'); } #?rakudo skip "unknown reasons" @@ -579,7 +579,7 @@ sub W () { substr(eval('want'), 0, 1) } my $a; my @z = ($a[] = W, W, W); is($a, 'L L L', 'lhs treats $a[] as list'); - is(@z, undef, 'lhs treats $a[] as list'); + is(!defined(@z), 'lhs treats $a[] as list'); } #?rakudo skip "unknown reasons" @@ -600,7 +600,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0] = W, W); is(@a, 'L', 'lhs treats @a[0] as list'); is(@z[0], 'L', 'lhs treats @a[0] as list'); - is(@z[1], undef, 'lhs treats @a[0] as list'); + is(!defined(@z[1]), 'lhs treats @a[0] as list'); } #?rakudo todo "unknown reasons" @@ -610,7 +610,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0,] = W, W); is(@a, 'L', 'lhs treats @a[0,] as list'); is(@z[0], 'L', 'lhs treats @a[0,] as list'); - is(@z[1], undef, 'lhs treats @a[0,] as list'); + is(!defined(@z[1]), 'lhs treats @a[0,] as list'); } #?rakudo todo "unknown reasons" @@ -620,7 +620,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (%a = W, W); is(%a{"x"}, 'L', 'lhs treats %a as list'); is(@z[0], 'L', 'lhs treats %a as list'); - is(@z[1], undef, 'lhs treats %a as list'); + is(!defined(@z[1]), 'lhs treats %a as list'); } #?rakudo todo "unknown reasons" @@ -640,7 +640,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (%a{'x'} = W, W); is(%a{"x"}, 'L', q/lhs treats %a{'x'} as list/); is(@z[0], 'L', q/lhs treats %a{'x'} as list/); - is(@z[1], undef, q/lhs treats %a{'x'} as list/); + is(!defined(@z[1]), q/lhs treats %a{'x'} as list/); } #?rakudo skip "unknown reasons" @@ -676,7 +676,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (%a{'x' x 1} = W, W); is(%a{"x"}, 'L', q/lhs treats %a{'x' x 1} as list/); is(@z[0], 'L', q/lhs treats %a{'x' x 1} as list/); - is(@z[1], undef, q/lhs treats %a{'x' x 1} as list/); + is(!defined(@z[1]), q/lhs treats %a{'x' x 1} as list/); } #?rakudo skip "unknown reasons" @@ -686,7 +686,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (%a{'x' xx 1} = W, W, W); is(%a, 'L', q/lhs treats %a{'x' xx 1} as list/); is(@z[0], 'L', q/lhs treats %a{'x' xx 1} as list/); - is(@z[1], undef, q/lhs treats %a{'x' xx 1} as list/); + is(!defined(@z[1]), q/lhs treats %a{'x' xx 1} as list/); } #?rakudo todo "unknown reasons" @@ -697,7 +697,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[$b] = W, W); is(@a, 'L', 'lhs treats @a[$b] as list'); is(@z[0], 'L', 'lhs treats @a[$b] as list'); - is(@z[1], undef, 'lhs treats @a[$b] as list'); + is(!defined(@z[1]), 'lhs treats @a[$b] as list'); } #?rakudo todo "unknown reasons" @@ -708,7 +708,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[$b,] = W, W); is(@a, 'L', 'lhs treats @a[$b,] as list'); is(@z[0], 'L', 'lhs treats @a[$b,] as list'); - is(@z[1], undef, 'lhs treats @a[$b,] as list'); + is(!defined(@z[1]), 'lhs treats @a[$b,] as list'); } #?rakudo todo "unknown reasons" @@ -720,7 +720,7 @@ sub W () { substr(eval('want'), 0, 1) } is(@a, 'L L', 'lhs treats @a[@b] as list'); is(@z[0], 'L', 'lhs treats @a[@b] as list'); is(@z[1], 'L', 'lhs treats @a[@b] as list'); - is(@z[2], undef, 'lhs treats @a[@b] as list'); + is(!defined(@z[2]), 'lhs treats @a[@b] as list'); } #?rakudo todo "unknown reasons" @@ -732,7 +732,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[@b[$c]] = W, W); is(@a, 'L', 'lhs treats @a[@b[$c]] as list'); is(@z[0], 'L', 'lhs treats @a[@b[$c]] as list'); - is(@z[1], undef, 'lhs treats @a[@b[$c]] as list'); + is(!defined(@z[1]), 'lhs treats @a[@b[$c]] as list'); } #?rakudo todo "unknown reasons" @@ -744,7 +744,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[@b[$c,]] = W, W); is(@a, 'L', 'lhs treats @a[@b[$c,]] as list'); is(@z[0], 'L', 'lhs treats @a[@b[$c,]] as list'); - is(@z[1], undef, 'lhs treats @a[@b[$c,]] as list'); + is(!defined(@z[1]), 'lhs treats @a[@b[$c,]] as list'); } #?rakudo skip "unknown reasons" @@ -756,7 +756,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = eval '(foo()[$b] = W, W)'; is(@a, 'L', 'lhs treats foo()[$b] as list'); is(@z[0], 'L', 'lhs treats foo()[$b] as list'); - is(@z[1], undef, 'lhs treats foo()[$b] as list'); + is(!defined(@z[1]), 'lhs treats foo()[$b] as list'); } #?rakudo skip "unknown reasons" @@ -768,7 +768,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = eval '(foo()[$b,] = W, W)'; is(@a, 'L', 'lhs treats foo()[$b,] as list'); is(@z[0], 'L', 'lhs treats foo()[$b,] as list'); - is(@z[1], undef, 'lhs treats foo()[$b,] as list'); + is(!defined(@z[1]), 'lhs treats foo()[$b,] as list'); } #?rakudo skip "unknown reasons" @@ -792,7 +792,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[foo()[$b,]] = W, W); is(@a, 'L', 'lhs treats @a[foo()[$b,]] as list'); is(@z[0], 'L', 'lhs treats @a[foo()[$b,]] as list'); - is(@z[1], undef, 'lhs treats @a[foo()[$b,]] as list'); + is(!defined(@z[1]), 'lhs treats @a[foo()[$b,]] as list'); } #?rakudo skip "unknown reasons" @@ -814,7 +814,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[~foo()] = W, W); is(@a, 'L', 'lhs treats @a[~foo()] as list'); is(@z[0], 'L', 'lhs treats @a[~foo()] as list'); - is(@z[1], undef, 'lhs treats @a[~foo()] as list'); + is(!defined(@z[1]), 'lhs treats @a[~foo()] as list'); } #?rakudo skip "unknown reasons" @@ -825,7 +825,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[?foo()] = W, W); is(@a, 'L', 'lhs treats @a[?foo()] as list'); is(@z[0], 'L', 'lhs treats @a[?foo()] as list'); - is(@z[1], undef, 'lhs treats @a[?foo()] as list'); + is(!defined(@z[1]), 'lhs treats @a[?foo()] as list'); } #?rakudo skip "unknown reasons" @@ -835,7 +835,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[!foo()] = W, W); is(@a, 'L', 'lhs treats @a[!foo()] as list'); is(@z[0], 'L', 'lhs treats @a[!foo()] as list'); - is(@z[1], undef, 'lhs treats @a[!foo()] as list'); + is(!defined(@z[1]), 'lhs treats @a[!foo()] as list'); } #?rakudo skip "unknown reasons" @@ -846,7 +846,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[foo()] = W, W); is(@a, 'L', 'lhs treats @a[foo()] as list'); is(@z[0], 'L', 'lhs treats @a[foo()] as list'); - is(@z[1], undef, 'lhs treats @a[foo()] as list'); + is(!defined(@z[1]), 'lhs treats @a[foo()] as list'); } #?rakudo skip "unknown reasons" @@ -868,7 +868,7 @@ sub W () { substr(eval('want'), 0, 1) } #?pugs todo 'bug' is(%a, 'L', 'lhs treats %a{+foo()} as list'); is(@z[0], 'L', 'lhs treats %a{+foo()} as list'); - is(@z[1], undef, 'lhs treats %a{+foo()} as list'); + is(!defined(@z[1]), 'lhs treats %a{+foo()} as list'); } #?rakudo skip "unknown reasons" @@ -879,7 +879,7 @@ sub W () { substr(eval('want'), 0, 1) } #?pugs todo 'bug' is(%a, 'L', 'lhs treats %a{~foo()} as list'); is(@z[0], 'L', 'lhs treats %a{~foo()} as list'); - is(@z[1], undef, 'lhs treats %a{~foo()} as list'); + is(!defined(@z[1]), 'lhs treats %a{~foo()} as list'); } #?rakudo skip "unknown reasons" @@ -890,7 +890,7 @@ sub W () { substr(eval('want'), 0, 1) } #?pugs todo 'bug' is(%a, 'L', 'lhs treats %a{?foo()} as list'); is(@z[0], 'L', 'lhs treats %a{?foo()} as list'); - is(@z[1], undef, 'lhs treats %a{?foo()} as list'); + is(!defined(@z[1]), 'lhs treats %a{?foo()} as list'); } #?rakudo skip "unknown reasons" @@ -901,7 +901,7 @@ sub W () { substr(eval('want'), 0, 1) } #?pugs todo 'bug' is(%a, 'L', 'lhs treats %a{!foo()} as list'); is(@z[0], 'L', 'lhs treats %a{!foo()} as list'); - is(@z[1], undef, 'lhs treats %a{!foo()} as list'); + ok(@z[1] ~~ undef, 'lhs treats %a{!foo()} as list'); } #?rakudo skip "unknown reasons" @@ -912,7 +912,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (%a{foo()} = W, W); is(%a{0}, 'L', 'lhs treats %a{foo()} as list'); is(@z[0], 'L L', 'lhs treats %a{foo()} as list'); - is(@z[1], undef, 'lhs treats %a{foo()} as list'); + ok(@z[1] ~~ undef, 'lhs treats %a{foo()} as list'); } #?rakudo skip "unknown reasons" @@ -935,7 +935,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0+0] = W, W); is(@a, 'L', 'lhs treats @a[0+0] as list'); is(@z[0], 'L', 'lhs treats @a[0+0] as list'); - is(@z[1], undef, 'lhs treats @a[0+0] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[0+0] as list'); } #?rakudo todo "unknown reasons" @@ -945,7 +945,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0*0] = W, W); is(@a, 'L', 'lhs treats @a[0*0] as list'); is(@z[0], 'L', 'lhs treats @a[0*0] as list'); - is(@z[1], undef, 'lhs treats @a[0*0] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[0*0] as list'); } #?rakudo todo "unknown reasons" @@ -955,7 +955,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0/1] = W, W); is(@a, 'L', 'lhs treats @a[0/1] as list'); is(@z[0], 'L', 'lhs treats @a[0/1] as list'); - is(@z[1], undef, 'lhs treats @a[0/1] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[0/1] as list'); } #?rakudo todo "unknown reasons" @@ -965,7 +965,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0*1**1] = W, W); is(@a, 'L', 'lhs treats @a[0*1**1] as list'); is(@z[0], 'L', 'lhs treats @a[0*1**1] as list'); - is(@z[1], undef, 'lhs treats @a[0*1**1] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[0*1**1] as list'); } #?rakudo todo "unknown reasons" @@ -976,7 +976,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[$b++] = W, W); is(@a, 'L', 'lhs treats @a[$b++] as list'); is(@z[0], 'L', 'lhs treats @a[$b++] as list'); - is(@z[1], undef, 'lhs treats @a[$b++] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[$b++] as list'); } #?rakudo todo "unknown reasons" @@ -987,7 +987,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[--$b] = W, W); is(@a, 'L', 'lhs treats @a[--$b] as list'); is(@z[0], 'L', 'lhs treats @a[--$b] as list'); - is(@z[1], undef, 'lhs treats @a[--$b] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[--$b] as list'); } #?rakudo todo "unknown reasons" @@ -997,7 +997,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[0==1] = W, W); is(@a, 'L L', 'lhs treats @a[0==1] as list (but coerce rhs list to one thing)'); is(@z[0], 'L L', 'lhs treats @a[0==1] as list (but coerce rhs list to one thing)'); - is(@z[1], undef, 'lhs treats @a[0==1] as list (but coerce rhs list to one thing)'); + ok(@z[1] ~~ undef, 'lhs treats @a[0==1] as list (but coerce rhs list to one thing)'); } #?rakudo todo "unknown reasons" @@ -1007,7 +1007,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[rand] = W, W); is(@a, 'L L', 'lhs treats @a[rand] as run-time list'); is(@z[0], 'L L', 'lhs treats @a[rand] as run-time list'); - is(@z[1], undef, 'lhs treats @a[rand] as run-time list'); + ok(@z[1] ~~ undef, 'lhs treats @a[rand] as run-time list'); } #?rakudo todo "unknown reasons" @@ -1017,7 +1017,7 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[rand,] = W, W); is(@a, 'L', 'lhs treats @a[rand,] as list'); is(@z[0], 'L', 'lhs treats @a[rand,] as list'); - is(@z[1], undef, 'lhs treats @a[rand,] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[rand,] as list'); } #?rakudo skip "unknown reasons" @@ -1027,6 +1027,6 @@ sub W () { substr(eval('want'), 0, 1) } my @z = (@a[(0|0).pick] = W, W); is(@a, 'L L', 'lhs treats @a[(0|0).pick] as list'); is(@z[0], 'L L', 'lhs treats @a[(0|0).pick] as list'); - is(@z[1], undef, 'lhs treats @a[(0|0).pick] as list'); + ok(@z[1] ~~ undef, 'lhs treats @a[(0|0).pick] as list'); } diff --git a/S03-operators/binding-scalars.t b/S03-operators/binding-scalars.t index 07bd4834d1..d5efe23299 100644 --- a/S03-operators/binding-scalars.t +++ b/S03-operators/binding-scalars.t @@ -120,7 +120,7 @@ plan 28; } # := actually takes subroutine parameter list -#?rakudo skip 'List binding' +#?rakudo todo 'List binding' { my $a; eval '(:$a) := (:a)'; diff --git a/S03-operators/feed.t b/S03-operators/feed.t index e1a22eb5c6..793a2e6da0 100644 --- a/S03-operators/feed.t +++ b/S03-operators/feed.t @@ -60,7 +60,7 @@ plan 23; #?pugs todo 'feed operators do not work' is($got_x, "x", "x was passed as explicit param"); - is($got_y, undef, "optional param y was not bound to fed list"); + ok(!defined($got_y), "optional param y was not bound to fed list"); #?pugs todo 'feed operators do not work' is(~@got_z, ~@a, '...slurpy array *@z got it'); } diff --git a/S05-metasyntax/regex.t b/S05-metasyntax/regex.t index 3e0c7ad980..b2624e9ea3 100644 --- a/S05-metasyntax/regex.t +++ b/S05-metasyntax/regex.t @@ -22,14 +22,14 @@ eval_dies_ok('rx :foo:', 'colons are not allowed as rx delimiters'); isa_ok($var, Regex, '$var = /foo/ returns a Regex object'); } -#?rakudo skip 'my $match = m{oo} does not match on $_' +#?rakudo todo 'my $match = m{oo} does not match on $_' { $_ = 'foo'; my $match = m{oo}; is($match, 'oo', 'm{} always matches instead of making a Regex object'); } -#?rakudo skip 'my $match = m/oo/ parsefail' +#?rakudo todo 'my $match = m/oo/ parsefail' { $_ = 'foo'; diff --git a/S29-hash/delete.t b/S29-hash/delete.t index 9e268008e0..fab8c303a9 100644 --- a/S29-hash/delete.t +++ b/S29-hash/delete.t @@ -31,7 +31,7 @@ sub gen_hash { is %h1.delete(), $b, "Test for delete single key. (Method call)"; } -#?rakudo skip 'Slices' +#?rakudo todo 'Slices' { my %h1 = gen_hash; my @cde = %h1;