diff options
Diffstat (limited to 'raku/two-fer/two-fer.rakutest')
-rw-r--r-- | raku/two-fer/two-fer.rakutest | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/raku/two-fer/two-fer.rakutest b/raku/two-fer/two-fer.rakutest new file mode 100644 index 0000000..f79c03e --- /dev/null +++ b/raku/two-fer/two-fer.rakutest @@ -0,0 +1,49 @@ +#!/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<input><name> { + .&two-fer; + } + else { + two-fer; + } + }, |%case<expected description>; +} + +=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 |