#!/usr/bin/env perl ###################################################### # Author: Chengzhi Liang, Weigang Qiu, Peter Yang, Thomas Hladish, Brendan # $Id: uncat_shared-commands.t,v 1.8 2010/09/22 19:59:00 astoltzfus Exp $ # $Revision: 1.8 $ # Written by Mikhail Bezruchko, Gopalan Vivek (gopalan@umbi.umd.edu) # Reference : http://www.perl.com/pub/a/2004/05/07/testing.html?page=2 # Date: 27 November, 2006 use strict; use warnings; use Data::Dumper; use Test::More 'no_plan'; use Bio::NEXUS; ############################################## # # Testing some common nexus commands # that appear in several blocks # ############################################## # 1. [No]Tokens # Blocks: Characters (Format), Codons (GeneticCode), Sets (CharPartition, TaxPartition, TreePartition), Assumptions (WtSet, ...) # 1.a Characters # my $file_one = "t/data/compliant/04_shared_commands_01.nex"; my ($nex_obj, $char_block); eval { $nex_obj = new Bio::NEXUS($file_one); }; $char_block = $nex_obj->get_block('characters'); SKIP: { skip "get_statelabels() is not complete", 1; is($char_block->get_statelabels()->[0], 'red', 'state labels match expected'); } is($char_block->{'format'}->{'tokens'}, 1, "Tokens = 1"); my $file_two = "t/data/compliant/04_shared_commands_02.nex"; $nex_obj = undef; $char_block = undef; eval { $nex_obj = new Bio::NEXUS($file_two); }; $char_block = $nex_obj->get_block('characters'); is($char_block->{'format'}->{'notokens'}, 1, "notokens = 1"); ####################################### # We might not need this test... ####################################### my $file_three = "t/data/compliant/04_shared_commands_03.nex"; $nex_obj = undef; $char_block = undef; eval { $nex_obj = new Bio::NEXUS($file_three); }; $char_block = $nex_obj->get_block('characters'); # 1.b Assumptions # print "Testing [No]Tokens of Assumptions Block\n"; $file_one = "t/data/compliant/04_shared_commands_04.nex"; $nex_obj = undef; my $assum_block = undef; eval { $nex_obj = new Bio::NEXUS($file_one); }; $assum_block = $nex_obj->get_block('assumptions'); SKIP: { skip "_is_tokens is not complete", 1; is($assum_block->{'assumptions'}->{'_is_tokens'}, 1, '_is_tokens = 0'); } #print Dumper $assum_block; #print "fix this !\n"; $file_two = "t/data/compliant/04_shared_commands_05.nex"; $nex_obj = undef; $assum_block = undef; eval { $nex_obj = new Bio::NEXUS($file_two); }; $assum_block = $nex_obj->get_block('assumptions'); SKIP: { skip "_is_tokens is not complete", 1; is($assum_block->{'assumptions'}->{'_is_tokens'}, 0, '_is_tokens = 0'); } #print Dumper $assum_block; #print "fix this !\n";