tracks/perl6/exercises/grade-school/example.yaml in trackler-2.2.1.68 vs tracks/perl6/exercises/grade-school/example.yaml in trackler-2.2.1.69

- old
+ new

@@ -1,27 +1,34 @@ exercise: GradeSchool -version: 1 -plan: 10 +version: 2 +plan: 19 imports: Roster tests: |- subtest "Roster class methods", { plan 3; ok ::('Roster').can($_), $_ for <add-student list-grade list-all>; } + my $roster = ::('Roster').new; + ok $roster.?add-student(:name('Jim'), :2grade), 'Add Jim to grade 2'; - is $roster.?list-grade(2), <Jim>, 'List grade 2'; + cmp-ok $roster.?list-grade(2), '~~', <Jim>, 'List grade 2'; + ok $roster.?add-student(:name('Zoe'), :2grade), 'Add Zoe to grade 2'; ok $roster.?add-student(:name('Barb'), :1grade), 'Add Barb to grade 1'; - is $roster.?list-grade(2), <Jim Zoe>, 'List grade 2'; - is $roster.?list-grade(1), <Barb>, 'List grade 1'; - subtest 'Additional students', { - plan 6; - ok $roster.?add-student(:name($_), :1grade), "Add $_ to grade 1" for <Charlie Anna>; - ok $roster.?add-student(:name('Alex'), :2grade), 'Add Alex to grade 2'; - ok $roster.?add-student(:name($_), :3grade), "Add $_ to grade 3" for <Tom Dick Harry>; - } - is $roster.?list-all, ('Grade 1', <Anna Barb Charlie>, 'Grade 2', <Alex Jim Zoe>, 'Grade 3', <Dick Harry Tom>), 'List all'; + cmp-ok $roster.?list-grade(2), '~~', <Jim Zoe>, 'List grade 2'; + cmp-ok $roster.?list-grade(1), '~~', <Barb>, 'List grade 1'; + + cmp-ok $roster.?list-all, '~~', ('Grade 1', <Barb>, 'Grade 2', <Jim Zoe>), 'List all'; + + ok $roster.?add-student(:name($_), :1grade), "Add $_ to grade 1" for <Charlie Anna>; + ok $roster.?add-student(:name('Alex'), :2grade), 'Add Alex to grade 2'; + ok $roster.?add-student(:name($_), :3grade), "Add $_ to grade 3" for <Tom Dick Harry>; + + cmp-ok $roster.?list-grade(1), '~~', <Anna Barb Charlie>, 'List grade 1'; + cmp-ok $roster.?list-grade(2), '~~', <Alex Jim Zoe>, 'List grade 2'; + cmp-ok $roster.?list-grade(3), '~~', <Dick Harry Tom>, 'List grade 3'; + cmp-ok $roster.?list-all, '~~', ('Grade 1', <Anna Barb Charlie>, 'Grade 2', <Alex Jim Zoe>, 'Grade 3', <Dick Harry Tom>), 'List all'; unit: module example: |- class Roster is export { has %!roster;