Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
first basic tests for non-integer enums and enums of mixed types
  • Loading branch information
moritz committed May 12, 2012
1 parent 39bcd72 commit 1ec0b65
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions S12-enums/non-int.t
@@ -0,0 +1,24 @@
use v6;
use Test;
plan 6;

{
my enum A (a => 'foo', b => 'bar');
is a.Str, 'foo', 'stringy enum first value';
is b.Str, 'bar', 'stringy enum first value';
}

eval_dies_ok 'my enum B (a => 1, b => "bar")',
'mixed type enums are forbidden';

#?rakudo todo 'NYI'
eval_lives_ok 'my Cool enum C (a => 1, b => "bar")',
'... unles that type covers both enum value types';

eval_dies_ok 'my Str enum D (a => 1)',
'violating an explict type constraint dies';

{
my enum E ( a => 'x', 'b');
is E::b.Str, 'y', 'Str enum correctly uses string-increment';
}

0 comments on commit 1ec0b65

Please sign in to comment.