1# -*-Perl-*- 2## Bioperl Test Harness Script for Modules 3 4use strict; 5BEGIN { 6 use Bio::Root::Test; 7 test_begin(-tests => 7); 8 9 use_ok('Bio::Tools::Run::Vista'); 10 use_ok('Bio::AlignIO'); 11} 12 13SKIP: { 14 #Java and java version check 15 my $v; 16 if (-d "java") { 17 skip("Skipping because no java present to run vista", 5); 18 } 19 20 open(PIPE,"java -version 2>&1 |"); 21 while (<PIPE>) { 22 if (/Java\sVersion\:\s(\d+\.\d+)/) { 23 $v = $1; 24 last; 25 } 26 elsif (/java version\s.(\d+\.\d+)/) { 27 $v = $1; 28 last; 29 } 30 elsif (/java version\s\"(\d\.\d)"/) { 31 $v = $1; 32 last; 33 } 34 } 35 if ($v < 1.2) { 36 skip("Skipping due to old java version", 5); 37 } 38 39 open (PIPE ,'java Vista 2>&1 |'); 40 while(<PIPE>){ 41 if ( /NoClassDefFoundError/ 42 # For JRE 1.7.0_25 - Win7 - Spanish, the message is: 43 # "Error: no se ha encontrado o cargado la clase principal Vista" 44 or /^Error\:/ 45 ){ 46 diag('Vista.jar is not in your class path: '.$_); 47 skip("Vista.jar is not in your class path",5); 48 } 49 } 50 my $inputfilename= test_input_file("vista.cls"); 51 my $gff_file = test_input_file("vista.gff"); 52 my $aio = Bio::AlignIO->new(-file => $inputfilename, 53 -format => 'clustalw'); 54 my $aln = $aio->next_aln; 55 56 my $out= test_output_file(); 57 my $vis = Bio::Tools::Run::Vista->new('outfile' => $out, 58 'title' => "My Vista Plot", 59 'annotation' => $gff_file, 60 'annotation_format' => 'GFF', 61 'min_perc_id' => 75, 62 'min_length' => 100, 63 'plotmin' => 50, 64 'tickdist' => 2000, 65 'window' => 40, 66 'numwindows' => 4, 67 'start' => 50, 68 'end' => 1500, 69 'tickdist' => 100, 70 'bases' => 1000, 71 'color' => {'EXON'=>'45 25 54','CNS'=>'0 0 100'}, 72 'quiet' =>1); 73 isa_ok $vis,'Bio::Tools::Run::Vista'; 74 is $vis->plotmin, 50; 75 is $vis->annotation, $gff_file; 76 77 $vis->run($aln,1); 78 ok -e $out; 79 $vis->run($aln,'mouse'); 80 ok -e $out; 81} 82