mirror of
https://github.com/dkogan/feedgnuplot.git
synced 2025-06-23 22:31:16 +08:00
first (very early) cut at a functional testing script
This commit is contained in:
parent
1252315598
commit
1acb30c3cd
1
MANIFEST
1
MANIFEST
@ -3,5 +3,6 @@ MANIFEST
|
||||
bin/feedgnuplot
|
||||
t/00-load.t
|
||||
t/manifest.t
|
||||
t/plots.t
|
||||
Changes
|
||||
LICENSE
|
||||
|
88
t/plots.t
Normal file
88
t/plots.t
Normal file
@ -0,0 +1,88 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
# require a threaded perl for my tests. This block lifted verbatim from the cpantesters wiki
|
||||
BEGIN {
|
||||
use Config;
|
||||
if (! $Config{'useithreads'}) {
|
||||
print("1..0 # Skip: Perl not compiled with 'useithreads'\n");
|
||||
exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
use Test::More tests => 1;
|
||||
use Test::Script::Run 'is_script_output';
|
||||
use File::Temp 'tempfile';
|
||||
|
||||
|
||||
tryplot( [], 'seq 5', <<'EOF' );
|
||||
|
||||
|
||||
5 ++--+---+--+---+---+---+--+--+A
|
||||
+ + + + + + + + *+
|
||||
| * |
|
||||
| * |
|
||||
4.5 ++ * ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
4 ++ A ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
3.5 ++ * ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
3 ++ A ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
2.5 ++ * ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
2 ++ A ++
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
| * |
|
||||
1.5 ++ * ++
|
||||
| * |
|
||||
| * |
|
||||
+* + + + + + + + +
|
||||
1 A+--+---+--+---+---+---+--+--++
|
||||
1 1.5 2 2.5 3 3.5 4 4.5 5
|
||||
|
||||
EOF
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
sub tryplot
|
||||
{
|
||||
my $extraoptions = shift;
|
||||
my $incmd = shift;
|
||||
my $ref = shift;
|
||||
|
||||
my ($fh, $input_filename) = tempfile( UNLINK => 1);
|
||||
open IN, '-|', $incmd;
|
||||
print $fh <IN>;
|
||||
close IN;
|
||||
close $fh;
|
||||
|
||||
my @options = (qw(--lines --points --exit),
|
||||
'--extracmds', 'unset grid',
|
||||
'--terminal', 'dumb 40,40',
|
||||
$input_filename);
|
||||
|
||||
unshift @options, @$extraoptions;
|
||||
|
||||
is_script_output( 'feedgnuplot', \@options,
|
||||
[$ref =~ /(.*)\n/g], [],
|
||||
'basic line plot');
|
||||
}
|
Loading…
Reference in New Issue
Block a user