#!/usr/bin/env perl ###################################################### # Author: Chengzhi Liang, Weigang Qiu, Peter Yang, Thomas Hladish, Brendan # $Id: block_link-and-title.t,v 1.7 2010/09/22 19:59:00 astoltzfus Exp $ # $Revision: 1.7 $ # 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 'link' and 'title' private # commands # ############################################## ################################ # 1. Testing 'title' command ################################ my $file_one = "t/data/compliant/04_private-commands.nex"; my ($nex_obj, $blocks, $taxa_block, $char_block, $trees_block); eval { $nex_obj = new Bio::NEXUS($file_one); $taxa_block = $nex_obj->get_block('taxa'); $char_block = $nex_obj->get_block('characters'); $trees_block = $nex_obj->get_block('trees'); }; is($@, '', 'Parsing successful'); is($taxa_block->get_ntax(), 4, 'ntax is correct'); is($taxa_block->get_title(), 'some_family', 'Taxa blocks\'s title is correct'); isnt($char_block->get_title(), 'ProTEin', 'Char block title is not "foo"'); is($char_block->get_title(), 'protein', 'Char block title is correct'); print "Changing taxa block's 'title'...\n"; $taxa_block->set_title('ome_familys'); is($taxa_block->get_title(), 'ome_familys', 'Taxa blocks\'s title is correct'); ################################ # 2. Testing 'link' command ################################ is($char_block->get_link()->{'taxa'}, 'some_family', "Char block's 'link' for 'taxa' is correct"); print "Changing link for taxa...\n"; my %link_taxa = ('taxa' => 'ome_familys'); $char_block->set_link(\%link_taxa); is($char_block->get_link()->{'taxa'}, 'ome_familys', "Char block's 'link' for 'taxa' is correct");