| Test-C2FIT documentation | Contained in the Test-C2FIT distribution. |
not supported yet...
sub doRow { my ($self, $row) = @_; $self->{fileCell} = $row->leaf(); $self->SUPER::doRow($row); }
sub wrong { my ($self,$cell) = @_; $self->SUPER::wrong($cell); if(!defined($self->{footnote})) { # Footnotes not supported yet... # $self->{footnote} = $self->{tables}->footnote(); $self->{fileCell}->addToBody($self->{footnote}); } }
| Test-C2FIT documentation | Contained in the Test-C2FIT distribution. |
# Copyright (c) 2002-2005 Cunningham & Cunningham, Inc. # Released under the terms of the GNU General Public License version 2 or later. # # Perl translation by Martin Busik <martin.busik@busik.de> package Test::C2FIT::eg::ExampleTests; use base 'Test::C2FIT::ColumnFixture'; use strict; use Error qw( :try ); use Test::C2FIT::Fixture; use IO::File; sub new { my $pkg = shift; my $self = $pkg->SUPER::new( basedir => undef ); for my $adir qw(.) { $self->{basedir} = $adir if -d "$adir" && -d "$adir/input" && -d "$adir/output"; } die "expecting input and output directories somewhere!" unless defined( $self->{basedir} ); $self->{input} = undef; $self->{tables} = undef; $self->{fixture} = undef; $self->{runCounts} = new Test::C2FIT::Counts(); $self->{footnote} = undef; $self->{fileCell} = undef; return $self; } sub run { my $self = shift; my $input = $self->read( $self->{file} ); $self->{fixture} = new Test::C2FIT::Fixture(); if ( defined( $self->{wiki} ) && $self->{wiki} eq "true" ) { $self->{tables} = new Test::C2FIT::Parse( $input, [ "wiki", "table", "tr", "td" ] ); $self->{fixture}->doTables( $self->{tables}->{parts} ); } else { $self->{tables} = new Test::C2FIT::Parse( $input, [ "table", "tr", "td" ] ); $self->{fixture}->doTables( $self->{tables} ); } $self->{runCounts}->tally( $self->{fixture}->{counts} ); # # TBD: following line is not correct # $Test::C2FIT::Fixture::summary{"counts run"} = $self->{runCounts}; } sub right() { my $self = shift; $self->run(); return $self->{fixture}->{counts}->{right}; } sub wrongCount() { my $self = shift; return $self->{fixture}->{counts}->{wrong}; } sub ignores() { my $self = shift; return $self->{fixture}->{counts}->{ignores}; } sub exceptions() { my $self = shift; return $self->{fixture}->{counts}->{exceptions}; } sub read { my $self = shift; my $filename = shift; my $fqfn = $self->{basedir} . "/input/" . $filename; my $of = new IO::File "<$fqfn"; die unless ref($of); my $cont = join( '', <$of> ); $of = undef; $cont; } # # nice perl trickery, since the java-fit-document uses a public int wrong() and # the Fixture uses as void wrong(Parse cell) # sub wrong { my $self = shift; if ( scalar(@_) == 0 ) { # # public int wrong() # return $self->wrongCount(); } else { # # wrong(Parse cell) # return $self->SUPER::wrong(@_); } }
1;