X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fstemma.t;fp=t%2Fstemma.t;h=6f3e7dbd54fb9106b1af90a0d6a23b40888f3cf5;hb=68454b71e5a66972515258d6312f6355ee0536f4;hp=67ded66a85cd2b2afcc0916a6ac94ee1212305b1;hpb=89d26fc5da4da4dfc244c821f4ea58a67f91d523;p=scpubgit%2Fstemmatology.git diff --git a/t/stemma.t b/t/stemma.t index 67ded66..6f3e7db 100644 --- a/t/stemma.t +++ b/t/stemma.t @@ -5,6 +5,7 @@ use File::Which; use Test::More; use lib 'lib'; use Text::Tradition; +use Text::Tradition::StemmaUtil qw/ phylip_pars_input /; use XML::LibXML; use XML::LibXML::XPathContext; @@ -29,23 +30,29 @@ ok( $stemma->isa( 'Text::Tradition::Stemma' ), 'Got the right sort of object' ); is( $stemma->graph, '1-2,1-A,2-B,2-C', "Got the correct graph" ); # Test for character matrix creation -my $m = $stemma->make_character_matrix(); +my $m = phylip_pars_input( $c->make_alignment_table() ); ## check number of rows -is( scalar @$m, 3, "Found three witnesses in char matrix" ); - ## check number of columns -is( scalar( @{$m->[0]} ), 19, "Found 18 rows plus sigla in char matrix" ); - ## check matrix -my %expected = ( - 'A' => 'AAAAAAAXAAAAAAAAAA', - 'B' => 'AXXXAAAAAABABAABAA', - 'C' => 'AXXXAAAAABAAAAAXBB', - ); -my @wits = map { shift @$_; } @$m; -map { s/\s+//g } @wits; -foreach my $i ( 0 .. $#wits ) { - my $w = $wits[$i]; - is( join( '', @{$m->[$i]} ), $expected{$w}, "Row for witness $w is correct" ); -} +my $expected = "\t3\t18\n"; +$expected .= 'A AAAAAAAXAAAAAAAAAA +B AXXXAAAAAABABAABAA +C AXXXAAAAABAAAAAXBB'; +$expected .= "\n"; +is( $m, $expected, "Got the right pars input" ); +# is( scalar @$m, 3, "Found three witnesses in char matrix" ); +# ## check number of columns +# is( scalar( @{$m->[0]} ), 19, "Found 18 rows plus sigla in char matrix" ); +# ## check matrix +# my %expected = ( +# 'A' => 'AAAAAAAXAAAAAAAAAA', +# 'B' => 'AXXXAAAAAABABAABAA', +# 'C' => 'AXXXAAAAABAAAAAXBB', +# ); +# my @wits = map { shift @$_; } @$m; +# map { s/\s+//g } @wits; +# foreach my $i ( 0 .. $#wits ) { +# my $w = $wits[$i]; +# is( join( '', @{$m->[$i]} ), $expected{$w}, "Row for witness $w is correct" ); +# } # Test that pars runs SKIP: {