exercise: Leap version: 2 plan: 6 subs: is_leap tests: |- is $subs{is_leap}->($_->{input}{year}), $_->{expected}, $_->{description} foreach @{$C_DATA->{cases}}; exercise_comment: '# The name of this exercise.' version_comment: '# The version we will be matching against the exercise.' lib_comment: '# Look for the module inside the same directory as this test file.' plan_comment: '# This is how many tests we expect to run.' use_test_comment: '# Check that the module can be use-d.' version_test_comment: |- # If the exercise is updated, we want to make sure other people testing # your code don't think you've made a mistake if things have changed! example: |- sub is_leap { my $year = shift; divisible_by($year, 400) or divisible_by($year, 4) and !divisible_by($year, 100) ? 1 : 0; } sub divisible_by { $_[0] % $_[1] == 0 ? 1 : 0; } stub: |- sub is_leap { my ($year) = @_; # Remove the comments and write some code here to pass the test suite. } package_comment: "# Declare package 'Leap' with version"