#!/usr/bin/env raku
use Test;
use JSON::Fast;
use lib $?FILE.IO.dirname; #`[Look for the module inside the same directory as this test file.]
use TwoFer;
plan 3; #`[This is how many tests we expect to run.]
my @test-cases = from-json($=pod.pop.contents).List;
# Go through the cases and check that &two-fer gives us the correct response.
for @test-cases -> %case {
is do {
with %case {
.&two-fer;
}
else {
two-fer;
}
}, |%case;
}
=head2 Test Cases
=begin code
[
{
"description": "no name given",
"expected": "One for you, one for me.",
"input": {
"name": null
},
"property": "twoFer"
},
{
"description": "a name given",
"expected": "One for Alice, one for me.",
"input": {
"name": "Alice"
},
"property": "twoFer"
},
{
"description": "another name given",
"expected": "One for Bob, one for me.",
"input": {
"name": "Bob"
},
"property": "twoFer"
}
]
=end code