annotate Roary/t/Bio/Roary/AnnotateGroups.t @ 0:c47a5f61bc9f draft

Uploaded
author dereeper
date Fri, 14 May 2021 20:27:06 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
1 #!/usr/bin/env perl
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
2 use strict;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
3 use warnings;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
4 use Data::Dumper;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
5 use Moose;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
6 use Test::Files;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
7 use File::Slurper qw(read_lines);
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
8 BEGIN { unshift( @INC, './t/lib' ) }
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
9 with 'TestHelper';
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
10
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
11 BEGIN { unshift( @INC, './lib' ) }
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
12 $ENV{PATH} .= ":./bin";
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
13
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
14 BEGIN {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
15 use Test::Most;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
16 use_ok('Bio::Roary::AnnotateGroups');
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
17 }
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
18
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
19 my $obj;
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
20
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
21 ok(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
22 $obj = Bio::Roary::AnnotateGroups->new(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
23 gff_files => [ 't/data/query_1.gff', 't/data/query_2.gff', 't/data/query_3.gff' ],
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
24 groups_filename => 't/data/query_groups',
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
25 ),
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
26 'initalise'
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
27 );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
28
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
29 ok( $obj->reannotate, 'reannotate' );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
30 is_deeply(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
31 $obj->_ids_to_gene_size,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
32 {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
33 'abc_00012' => 188,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
34 '2_3' => 1001,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
35 '1_1' => 959,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
36 'abc_00004' => 716,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
37 '3_3' => 1001,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
38 '3_2' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
39 '2_2' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
40 'abc_00006' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
41 'abc_00008' => 935,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
42 '1_6' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
43 'abc_00015' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
44 '3_1' => 959,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
45 'abc_00014' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
46 'abc_01705' => 1556,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
47 'abc_00013' => 75,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
48 'abc_00010' => 227,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
49 '1_2' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
50 'abc_00011' => 947,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
51 'abc_00016' => 686,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
52 '2_7' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
53 '1_3' => 1001,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
54 '2_1' => 959,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
55 '3_5' => 686,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
56 'abc_00002' => 146,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
57 'abc_00003' => 197
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
58 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
59 'gene lengths as expected'
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
60 );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
61
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
62 is_deeply(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
63 $obj->group_nucleotide_lengths,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
64 {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
65 'group_3' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
66 'average' => 1001,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
67 'min' => 1001,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
68 'max' => 1001
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
69 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
70 'group_5' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
71 'average' => 686,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
72 'min' => 686,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
73 'max' => 686
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
74 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
75 'group_7' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
76 'average' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
77 'min' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
78 'max' => 134
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
79 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
80 'group_1' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
81 'average' => 959,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
82 'min' => 959,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
83 'max' => 959
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
84 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
85 'group_6' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
86 'average' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
87 'min' => 134,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
88 'max' => 134
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
89 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
90 'group_2' => {
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
91 'average' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
92 'min' => 725,
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
93 'max' => 725
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
94 }
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
95 },
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
96 'group lengths'
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
97 );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
98
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
99 compare_files( 'reannotated_groups_file', 't/data/expected_reannotated_groups_file', 'groups reannotated as expected' );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
100
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
101 unlink('reannotated_groups_file');
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
102
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
103
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
104 ok(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
105 $obj = Bio::Roary::AnnotateGroups->new(
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
106 gff_files => [ 't/data/gene_name_field/annotation_1.gff', 't/data/gene_name_field/annotation_2.gff' ],
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
107 groups_filename => 't/data/gene_name_field/groups',
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
108 ),
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
109 'initalise where gene key is replaced by Name'
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
110 );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
111 ok( $obj->reannotate, 'reannotate' );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
112 compare_files('reannotated_groups_file',
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
113 't/data/gene_name_field/expected_reannotated_groups_file',
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
114 'Reannoated groups file has the gene names transferred'
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
115 );
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
116 unlink('reannotated_groups_file');
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
117
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
118 done_testing();
c47a5f61bc9f Uploaded
dereeper
parents:
diff changeset
119