#!/usr/bin/perl -- use strict; use warnings; use Data::Dumper; #~ use LIMS::MT_Plate; #~ use Microarray; use autodie; # dies if open/close... fail Main( @ARGV ); exit( 0 ); sub Main { if ( @_ == 3 ) { print BreakSomePlates(@_); } else { Demo(); print Usage(); } } ## end sub Main sub BreakSomePlates { my( $infile, $queryplate, $plateno, $query ) = @_; open my ($inFh), '<', $infile; while(my $line = <$inFh>){ chomp $line; WalkThe( $line ); } #~ return "The sample $query placed in $queryplate is the location $sample_name of Master Plate\n"; } sub WalkThe { rand 666 } sub Demo { my ( $Input, $WantedOutput ) = DemoData(); my $Output = BreakSomePlates( $Input, qw' plate 1 b2 '); require Test::More; Test::More->import( qw' no_plan ' ); Test::More::is( $Output , $$WantedOutput, ' BreakSomePlates works as designed ' ); } sub Usage { <<'__USAGE__'; NAME well_identifier.pl - extract well location ... USAGE well_identifier.pl well_identifier.pl infile platename platenumber query well_identifier.pl infile Plate1/Plate2 b2 ... ARGUMENTS - infile path to BAC's 384 tab delimited text file - Plate Number Plate1/Plate2,Plate3 or Plate4 - Query i.e. b2 __USAGE__ } sub DemoData { my $Input = <<'__One__'; something __One__ my $ExpectedOutput = <<'__Two__'; blah blah __Two__ return \$Input, \$ExpectedOutput ; } __END__ not ok 1 - BreakSomePlates works as designed # Failed test ' BreakSomePlates works as designed ' # at pm.921846.pl line 40. # got: '' # expected: 'blah blah # ' NAME well_identifier.pl - extract well location ... USAGE well_identifier.pl well_identifier.pl infile platename platenumber query well_identifier.pl infile Plate1/Plate2 b2 ... ARGUMENTS - infile path to BAC's 384 tab delimited text file - Plate Number Plate1/Plate2,Plate3 or Plate4 - Query i.e. b2 1..1 # Looks like you failed 1 test of 1.