Sha256: 3c2f6cc271b46596c7007f57a0cd6f40a353e99fd115eb6e97b5c7cc8c646d34
Contents?: true
Size: 915 Bytes
Versions: 20
Compression:
Stored size: 915 Bytes
Contents
use strict; use warnings; my $module = $ENV{EXERCISM} ? 'Example' : 'DNA'; use Test::More; my @cases = ( ['C', 'G', 'cytidine unchanged'], ['G', 'C', 'guanosine unchanged'], ['T', 'A', 'adenosine unchanged'], ['A', 'U', 'thymidine to uracil'], ['ACGTGGTCTTAA', 'UGCACCAGAAUU', 'transcribes all occurences'], ); plan tests => 3 + @cases; ok -e "$module.pm", "missing $module.pm" or BAIL_OUT("You need to create a module called $module.pm with a function called to_rna() that gets one parameter: a DNA sequence"); eval "use $module"; ok !$@, "Cannot load $module.pm" or BAIL_OUT("Does $module.pm compile? Does it end with some true value?"); can_ok($module, 'to_rna') or BAIL_OUT("Missing package $module; or missing sub to_rna"); my $sub = $module . '::to_rna'; foreach my $c (@cases) { no strict 'refs'; is $sub->($c->[0]), $c->[1], "$c->[2]: $c->[0] => $c->[1]"; }
Version data entries
20 entries across 20 versions & 1 rubygems