perl6 multiplex test with full flex
Perl6
Switch branches/tags
Nothing to show
Latest commit ae7d218 Apr 13, 2017 @tony-o committed on GitHub Merge pull request #3 from zoffixznet/patch-1
Bump version
Permalink
Failed to load latest commit information.
bin rename to flow + README Mar 23, 2016
lib Merge pull request #1 from zoffixznet/patch-1 Apr 11, 2017
t fix test to find dir1/ Mar 23, 2016
.gitignore WIP Feb 2, 2016
.travis.yml maebe? Mar 23, 2016
META6.json Bump version Apr 12, 2017
README.md README updates Mar 29, 2016

README.md

#flow ##a pp6 implementation of prove with the ability to adapt to newer methods of testing

Build Status

flow is intended to be an extensible prove replacement written entirely in perl6. it's written in a way that it can be configured to use any new testing methods (think: a harness designed for parallel testing, like mocha). can't prove do this? kind of, you can run your tests through whatever you'd like as long as they end up in a TAP output and it will work with prove.

with flow, there isn't any need to translate your test files into TAP as long as there is a ::Plugin available for how you write your tests.

#current state

flow ships with only parsing TAP output, there are other testing harnesses out there but they're not widely used if at all.

flow is being released in the environment to try and help test the TAP output parsing and provide a speedier alternative to plain prove (prove -j9 is faster on my system for modules with very few tests/scripts but prove isn't commonly run this way by package installers)

#flow vs prove

Here is the benchmark for Bailador module - chosen since it has a medium level of testing -

###Script

#!/usr/bin/env perl6

use Bench;

my $b = Bench.new;

$b.cmpthese(500, {
  prove  => sub {
    qx<prove -j9 -e 'perl6 -Ilib' t/>;
  },
  flow   => sub {
    qx<perl6 -I../../p6-flow/lib ../../p6-flow/bin/flow test>;
  }
});

###Benchmark

tonyo@mbp:~/projects/benchmark/Bailador$ ./prove-vs-flow.pl6
Benchmark:
Timing 500 iterations of flow, prove...
      flow: 1728.3408 wallclock secs @ 0.2893/s (n=500)
           prove: 3006.5033 wallclock secs @ 0.1663/s (n=500)
           O-------O--------O-------O------O
           |       | s/iter | prove | flow |
           O=======O========O=======O======O
           | prove | 6.01   | --    | -43% |
           | flow  | 3.46   | 74%   | --   |
           ---------------------------------

#what is being worked on now

  • interface changes
  • having the tests stream live results instead of just the end result
  • more configuration options

#usage

Current directory:

flow test

Some other directory or directories:

flow test [<dir>]

#installation

zef install flow

or

panda install flow

#license

WTFPL