Skip to content

Commit db85667

Browse files
committed
reflect current rakudo/nom state
1 parent b075ede commit db85667

File tree

15 files changed

+52
-13
lines changed

15 files changed

+52
-13
lines changed

S03-metaops/zip.t

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ is (1 Z* 3), (3), 'zip-product works with scalar both sides';
2828

2929
# L<S03/"Hyper operators"/is assumed to be infinitely extensible>
3030

31+
#?rakudo todo 'nom regression'
32+
{
3133
is (<a b c d> Z 'x', 'z', *), <a x b z c z d z>, 'non-meta zip extends right argument ending with *';
3234
is (1, 2, 3, * Z 10, 20, 30, 40, 50),
3335
(1, 10, 2, 20, 3, 30, 3, 40, 3, 50), 'non-meta zip extends left argument ending with *';
@@ -36,9 +38,14 @@ is (2, 10, * Z 3, 4, 5, *).munch(10),
3638
'non-meta zip extends two arguments ending with *';
3739

3840
is (<a b c d> Z~ 'x', 'z', *), <ax bz cz dz>, 'zip-concat extends right argument ending with *';
41+
}
42+
43+
#?rakudo 2 skip 'nom regression'
44+
{
3945
is (1, 2, 3, * Z+ 10, 20, 30, 40, 50), (11, 22, 33, 43, 53), 'zip-plus extends left argument ending with *';
4046
is (2, 10, * Z* 3, 4, 5, *).munch(5),
4147
(6, 40, 50, 50, 50), 'zip-product extends two arguments ending with *';
48+
}
4249

4350
done;
4451

S03-operators/binding-ro.t

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ plan 9;
1010
my $y = 3;
1111
$x ::= $y;
1212
is $x, 3, '::= on scalars took the value from the RHS';
13+
#?rakudo todo 'nom regression'
1314
dies_ok { $x = 5 }; '... and made the LHS RO';
15+
#?rakudo todo 'nom regression'
1416
is $x, 3, 'variable is still 3';
1517
}
1618

S03-operators/binding-scalars.t

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ plan 29;
2121
my $y := $x;
2222
is($y, 'Just Another', 'y is now bound to x');
2323

24-
#?rakudo todo 'binding, =:='
2524
ok($y =:= $x, 'y is bound to x (we checked with the =:= identity op)');
2625

2726
my $z = $x;
@@ -99,11 +98,13 @@ plan 29;
9998
is $a, 42, "bound readonly sub param was bound correctly (1)";
10099
$val++;
101100
#?niecza skip "difference of interpretation on ro binding"
101+
#?rakudo todo 'nom regression'
102102
is $a, 43, "bound readonly sub param was bound correctly (2)";
103103

104104
dies_ok { $a = 23 },
105105
"bound readonly sub param remains readonly (1)";
106106
#?niecza skip "difference of interpretation on ro binding"
107+
#?rakudo todo 'nom regression'
107108
is $a, 43,
108109
"bound readonly sub param remains readonly (2)";
109110
is $val, 43,

S03-operators/eqv.t

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ plan 53;
4545
ok \@a eqv \@b, '\@array of two bound arrays are eqv';
4646
}
4747

48-
#?rakudo skip 'backslashes'
4948
{
5049
my $a = \3;
5150
my $b = \3;
@@ -57,7 +56,7 @@ plan 53;
5756
ok (\$a !eqv \$b), "eqv on scalar references (1-4)";
5857
}
5958

60-
#?
59+
#?rakudo skip 'nom regression'
6160
{
6261
my $a = { 3 };
6362
my $b = { 3 };
@@ -69,6 +68,7 @@ plan 53;
6968
ok !($a eqv { 5 }), 'eqv on sub references (1-4)';
7069
}
7170

71+
#?rakudo skip 'nom regression'
7272
{
7373
ok (&say eqv &say), "eqv on sub references (2-1)";
7474
ok (&map eqv &map), "eqv on sub references (2-2)";
@@ -93,6 +93,7 @@ plan 53;
9393
{
9494
ok !({a => 1} eqv {a => 2}), "eqv on anonymous hash references (-)";
9595
ok ({a => 1} eqv {a => 1}), "eqv on anonymous hash references (+)";
96+
#?rakudo todo 'nom regression'
9697
ok ({a => 2, b => 1} eqv { b => 1, a => 2}), 'order really does not matter';
9798
ok !({a => 1} eqv {a => 1, b => 2}), 'hashes: different number of pairs';
9899
}
@@ -131,6 +132,7 @@ plan 53;
131132
is(0 eqv 1, Bool::False, 'eqv returns Bool::False when false');
132133
}
133134

135+
#?rakudo skip 'nom regression'
134136
{
135137
is Mu eqv Mu, Bool::True, 'Mu eqv Mu';
136138
is Any eqv Any, Bool::True, 'Any eqv Any';

S03-operators/increment.t

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ Verify that autoincrement/autodecrement work properly.
1313
1414
=end description
1515

16-
#?rakudo skip 'unimpl Mu++'
1716
my $a = Mu;
1817
is($a++, 0, 'Mu++ == 0');
1918

19+
#?rakudo todo 'nom regression'
2020
$a = Mu;
2121
nok(defined($a--), 'Mu-- is undefined');
2222

S03-operators/numeric-context.t

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,26 +21,35 @@ isa_ok(+'1.9e3', Num, "+'1.9e3' is a Num");
2121
is(+'Inf', Inf, "+'Inf' is Inf");
2222
is(+'Info', 0, "+'Info' is 0");
2323
is(+'-Inf', -Inf, "+'-Inf' is -Inf");
24+
#?rakudo todo 'nom regression'
2425
is(+'-Info', 0, "+'-Info' is 0");
2526
is(+'NaN', NaN, "+'NaN' is NaN");
2627
is(+'NaNa', 0, "+'NaNa' is 0");
2728

2829
{
2930
# XXX Not sure whether the following tests are correct
31+
#?rakudo todo 'nom regression'
3032
is(+'Inf ', Inf, "numification of strings with whitspace (1)");
3133
is(+'Inf o', 0, "numification of strings with whitspace (2)");
34+
#?rakudo todo 'nom regression'
3235
is(+'NaN ', NaN, "numification of strings with whitspace (3)");
3336
is(+'NaN a', 0, "numification of strings with whitspace (4)");
37+
#?rakudo todo 'nom regression'
3438
is(+"Inf\t", Inf, "numification of strings with whitspace (5)");
3539
is(+"Inf\to", 0, "numification of strings with whitspace (6)");
40+
#?rakudo todo 'nom regression'
3641
is(+"NaN\t", NaN, "numification of strings with whitspace (7)");
3742
is(+"NaN\ta", 0, "numification of strings with whitspace (8)");
43+
#?rakudo todo 'nom regression'
3844
is(+"Inf\n", Inf, "numification of strings with whitspace (9)");
3945
is(+"Inf\no", 0, "numification of strings with whitspace (10)");
46+
#?rakudo todo 'nom regression'
4047
is(+"NaN\n", NaN, "numification of strings with whitspace (11)");
4148
is(+"NaN\na", 0, "numification of strings with whitspace (12)");
49+
#?rakudo todo 'nom regression'
4250
is(+"Inf\n\t ", Inf, "numification of strings with whitspace (13)");
4351
is(+"Inf\n\t o", 0, "numification of strings with whitspace (14)");
52+
#?rakudo todo 'nom regression'
4453
is(+"NaN\n\t ", NaN, "numification of strings with whitspace (15)");
4554
is(+"NaN\n\t a", 0, "numification of strings with whitspace (16)");
4655
is(+"3 ", 3, "numification of strings with whitspace (17)");

S03-operators/precedence.t

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,10 @@ ok(?((2 ~ 2 | 4 ~ 1) == 41), "and ~ binds tighter than |");
6767

6868
# junctive and
6969

70+
#?rakudo skip 'nom regression'
7071
ok( ?( (1 & 2 | 3) ==3), '& binds tighter than |');
7172
ok((!(1 & 2 | 3) < 2), "ditto");
73+
#?rakudo skip 'nom regression'
7274
ok(?((1 & 2 ^ 3) < 3), "and also ^");
7375
ok(?(!(1 & 2 ^ 4) != 3), "blah blah blah");
7476

@@ -80,11 +82,13 @@ ok(?(!(1 & 2 ^ 4) != 3), "blah blah blah");
8082
eval_dies_ok 'my Mu $a = (1 ^ 2 | 3)', '^ and | may not associate';
8183
};
8284

85+
#?rakudo skip 'nom regression'
8386
{
8487
my Mu $a = (abs -1 ^ -1); # read as abs(-1 ^ -1) -> (1^1)
8588
ok(!($a == 1), 'junctive or binds more tightly then abs (1)');
8689
}
8790

91+
#?rakudo skip 'nom regression'
8892
{
8993
my Mu $b = ((abs -1) ^ -1); # -> (1 ^ -1)
9094
ok($b == 1, "this is true because only one is == 1");
@@ -212,6 +216,7 @@ ok ((1 => 2 => 3).value ~~ Pair), '=> is right-assoc (2)';
212216
eval_dies_ok '1, 2 Z 3, 4 X 5, 6',
213217
'list associativity only works between identical operators';
214218

219+
#?rakudo skip 'nom regression'
215220
{
216221
# Check a 3 != 3 vs 3 !=3 parsing issue that can cropped up in Rakudo.
217222
# Needs careful following of STD to get it right. :-)

S03-smartmatch/any-hash-pair.t

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plan 7;
99
ok !(%a ~~ b => 'ugh'), '%hash ~~ Pair (Str, -)';
1010
ok (%a ~~ a => 1.0), '%hash ~~ Pair (Num, +)';
1111
ok (%a ~~ :b<foo>), '%hash ~~ Colonpair';
12+
#?rakudo 2 todo 'nom regression'
1213
ok (%a ~~ c => !*.defined), '%hash ~~ Pair (!*.defined, Mu)';
1314
ok (%a ~~ d => !*.defined), '%hash ~~ Pair (!*.defined, Nil)';
1415
ok !(%a ~~ a => 'foo'), '%hash ~~ Pair (key and val not paired)';

S03-smartmatch/disorganized.t

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ This tests the smartmatch operator, defined in L<S03/"Smart matching">
1111
sub eval_elsewhere($code){ eval($code) }
1212

1313
#L<S03/Smart matching/Any undef undefined not .defined>
14-
#?rakudo skip 'syntactic smar-matching'
1514
{
1615
ok("foo" ~~ .defined, "foo is ~~ .defined");
1716
nok "foo" !~~ .defined, 'not foo !~~ .defined';
@@ -65,31 +64,34 @@ caught that case.
6564
$result = all(@x) ~~ { $_ < 21 };
6665
$parsed = 1;
6766
};
67+
#?rakudo 2 todo 'nom regression'
6868
ok $parsed, 'C<all(@x) ~~ { ... }> parses';
6969
ok ?$result, 'C<all(@x) ~~ { ... } when true for all';
7070

7171
$result = 0;
7272
try {
7373
$result = !(all(@x) ~~ { $_ < 20 });
7474
};
75+
#?rakudo todo 'nom regression'
7576
ok $result,
7677
'C<all(@x) ~~ {...} when true for one';
7778

7879
$result = 0;
7980
try {
8081
$result = !(all(@x) ~~ { $_ < 12 });
8182
};
82-
ok $result,
83-
'C<all(@x) ~~ {...} when true for most';
83+
#?rakudo todo 'nom regression'
84+
ok $result, 'C<all(@x) ~~ {...} when true for most';
8485

8586
$result = 0;
8687
try {
8788
$result = !(all(@x) ~~ { $_ < 1 });
8889
};
89-
ok $result,
90-
'C<all(@x) ~~ {...} when true for one';
90+
#?rakudo todo 'nom regression'
91+
ok $result, 'C<all(@x) ~~ {...} when true for one';
9192
};
9293

94+
#?rakudo todo 'nom regression'
9395
ok NaN ~~ NaN, 'NaN ~~ NaN is True';
9496

9597
# need to test in eval() since class definitions happen at compile time,
@@ -145,6 +147,7 @@ eval_lives_ok 'class A { method foo { return "" ~~ * } }; A.new.foo',
145147
}
146148

147149
ok "foo" ~~ *, 'thing ~~ * is true';
150+
#?rakudo todo 'nom regression'
148151
ok ("foo" ~~ *) ~~ Bool, 'thing ~~ * is a boolean';
149152

150153
done();

S04-declarations/multiple.t

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ eval_lives_ok 'my $x; my $x',
1010
'it is legal to declare my $x twice in the same scope.';
1111

1212
#?niecza skip 'Not working'
13+
#?rakudo todo 'nom regression'
1314
eval_lives_ok 'state $x; state $x',
1415
'it is legal to declare state $x twice in the same scope.';
1516

@@ -29,6 +30,7 @@ eval_dies_ok 'only sub foo {1; }; sub foo($x) {1; };',
2930
'multiple declarations need multi or proto';
3031

3132
#?niecza skip "MMD"
33+
#?rakudo todo 'nom regression'
3234
eval_lives_ok 'proto foo {1; }; sub foo {1; }; sub foo($x) {1; };',
3335
'multiple declarations need multi or proto';
3436

0 commit comments

Comments
 (0)