Skip to content

JJ/raku-test-grammar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Test::Grammar for Raku Test in a Raku container - template

Unit testing for grammars. Because testing is important.

Installing

No dependencies, except Test which is a Rakudo core library, so the usual zef install Test::Grammar.

Running

Copied from the source, version there is the single source of truth:

use Test::Grammar;

parses-ok Test-Grammar,"num", 3, "33 parses OK";

my $test-output = q:to/EOC/;
ok 1 - bailout parses OK
ok 2 - «bailout» extracts token
1..2
EOC

has-tokens Test-Grammar, "test", <nok num description>, $test-output,
    "Complete tests";

token-is Test-Grammar,"bailout", "explanation",
    "Bail out! FOOBAR",
    "FOOBAR",
    "«bailout» extracts token";

for <foo bar b3> {
    parses-nok Test-Grammar,"num", $_, "$_ not parsed";
}

See also

There are very nice testing libraries out there:

  • T emphasizes output and messages
  • Testo is another opinionated test library.

License

(c) JJ Merelo, jj@raku.org, 2022

Licensed under the Artistic 2.0 License (the same as Raku itself).

About

Test grammars and its tokens in the best possible way

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages