Mercurial > repos > fgiacomoni > massbank_ws_searchspectrum
comparison t/massbank_ws_searchspectrum_Test.t @ 0:023c380900ef draft default tip
Init repository with last massbank_ws_searchspectrum master version
author | fgiacomoni |
---|---|
date | Wed, 19 Apr 2017 11:31:58 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:023c380900ef |
---|---|
1 #! perl | |
2 use diagnostics; | |
3 use warnings; | |
4 no warnings qw/void/; | |
5 use strict; | |
6 no strict "refs" ; | |
7 use Test::More qw( no_plan ); | |
8 #use Test::More tests => 8 ; ## with MAPPER SEQUENCE | |
9 use FindBin ; | |
10 use Carp ; | |
11 | |
12 ## Specific Modules | |
13 use lib $FindBin::Bin ; | |
14 my $binPath = $FindBin::Bin ; | |
15 use lib::massbank_api_Test qw( :ALL ) ; | |
16 use lib::massbank_mapper_Test qw( :ALL ) ; | |
17 use lib::massbank_main_Test qw( :ALL ) ; | |
18 | |
19 | |
20 ## To launch the right sequence : MAIN, API, MAPPER, THREADER, COMPUTE... | |
21 my $sequence = 'COMPUTE' ; | |
22 my $current_test = 1 ; | |
23 my $server = 'EU' ; | |
24 | |
25 | |
26 if ($sequence eq "COMPUTE") { | |
27 print "\n\t\t\t\t * * * * * * \n" ; | |
28 print "\t * * * - - - Test MassBank Main script - - - * * * \n\n" ; | |
29 sleep 1 ; print "\n** Test $current_test min_from_double_with_delta with doubles **\n" ; $current_test++ ; | |
30 is_deeply( min_from_double_with_deltaTest ( | |
31 303.0485467, 'Da', 0.01), | |
32 303.0385467, | |
33 'Method \'min_and_max_from_double_with_delta\' works with a double and return the attended min value'); | |
34 | |
35 sleep 1 ; print "\n** Test $current_test max_from_double_with_delta with doubles **\n" ; $current_test++ ; | |
36 is_deeply( max_from_double_with_deltaTest ( | |
37 303.0485467, 'Da', 0.01), | |
38 303.0585467001, | |
39 'Method \'max_from_double_with_delta\' works with a double and return the attended max value'); | |
40 | |
41 } | |
42 elsif ($sequence eq "MAIN") { | |
43 print "\n\t\t\t\t * * * * * * \n" ; | |
44 print "\t * * * - - - Test MassBank Main script - - - * * * \n\n" ; | |
45 ## Test NORMAL file => OK | |
46 ok( run_main_massbank_pl( | |
47 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/pcgrp_annot.tsv', | |
48 1, 14, 7, 1, 0.5, | |
49 'Positive', 'all', 2, 'unit', 0.3, 5, 'EU', | |
50 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out1.json', | |
51 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out1.csv', | |
52 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out1.xls'), | |
53 'Main script massbank_ws_searchspectrum.pl with is running and manage normal data (mz, ) ' ); | |
54 | |
55 ## Test BUG file wih relative intensities => OK | |
56 ok( run_main_massbank_pl( | |
57 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/261-pcgroups-mz-relative_int.tsv', | |
58 '2', '1', '3', '1', 0.5, | |
59 'Positive', 'all', 2, 'unit', 0.3, 5, 'JP', | |
60 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out2.json', | |
61 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out2.csv', | |
62 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out2.xls'), | |
63 'Main script massbank_ws_searchspectrum.pl with is running and manage real file (mz, relative int, ...)' ); | |
64 | |
65 ## Test BUG file wih real intensities (>10000) => OK | |
66 ok( run_main_massbank_pl( | |
67 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/2214-mz-int-pcgroups.tsv', | |
68 '1', '3', '2', '1', 0.5, | |
69 'Positive', 'all', 2, 'unit', 0.3, 5, 'JP', | |
70 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out3.json', | |
71 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out3.csv', | |
72 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out3.xls'), | |
73 'Main script massbank_ws_searchspectrum.pl with is running and manage real file (mz, relative int, ...)' ); | |
74 | |
75 ## Test BUG file wih relative intensities and ppm / 15 / 5 => OK | |
76 ok( run_main_massbank_pl( | |
77 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/261-pcgroups-mz-relative_int.tsv', | |
78 '2', '1', '3', '1', 0.5, | |
79 'Positive', 'all', 2, 'ppm', 15, 5, 'JP', | |
80 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out4.json', | |
81 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out4.csv', | |
82 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out4.xls'), | |
83 'Main script massbank_ws_searchspectrum.pl with is running and manage real file (mz, relative int, ...)' ); | |
84 | |
85 ## Test BUG file wih real intensities (>10000) and ppm / 15 / 5 + long file => OK | |
86 ok( run_main_massbank_pl( | |
87 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/2214-mz-int-pcgroups.tsv', | |
88 '1', '3', '2', '1', 0.5, | |
89 'Positive', 'all', 2, 'ppm', 15, 5, 'JP', | |
90 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out5.json', | |
91 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out5.csv', | |
92 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out5.xls'), | |
93 'Main script massbank_ws_searchspectrum.pl with is running and manage real file (mz, int, ...)' ); | |
94 | |
95 ## Test BUG file wih real intensities (>10000) and ppm / 15 / 5 + long file -> parameters c5b5ac363f7bdb2d => OK | |
96 ok( run_main_massbank_pl( | |
97 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/2214-mz-int-pcgroups.tsv', | |
98 '1', '3', '2', '1', 0.5, | |
99 'Positive', "LC-ESI-IT,LC-ESI-ITFT,LC-ESI-ITTOF,LC-ESI-Q,LC-ESI-QFT,LC-ESI-QIT,LC-ESI-QQ,LC-ESI-QTOF,LC-ESI-TOF", 10, 'ppm', 15, 5, 'JP', | |
100 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out6.json', | |
101 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out6.csv', | |
102 '/Users/fgiacomoni/Inra/labs/tests/massbank_V02/out6.xls'), | |
103 'Main script massbank_ws_searchspectrum.pl with is running and manage real file (mz, int, ...)' ); | |
104 | |
105 } | |
106 | |
107 | |
108 #-masses | |
109 #-col_mz 1 | |
110 #-col_pcgroup 14 | |
111 #-col_int 7 | |
112 #-lineheader 1 | |
113 #-mode Positive | |
114 #-instruments all | |
115 #-max 2 | |
116 #-unit unit | |
117 #-tolerance 0.3 | |
118 #-cutoff 5 | |
119 #-server JP | |
120 #-json /Users/fgiacomoni/Inra/labs/tests/massbank_V02/out.json | |
121 #-csv /Users/fgiacomoni/Inra/labs/tests/massbank_V02/out.csv | |
122 #-xls /Users/fgiacomoni/Inra/labs/tests/massbank_V02/out.xls | |
123 | |
124 | |
125 elsif ($sequence eq "MAPPER") { | |
126 | |
127 ## testing mapper module of massbank wrapper. | |
128 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
129 print "\n\t\t\t\t * * * * * * \n" ; | |
130 print "\t * * * - - - Test MassBank Mapper module - - - * * * \n\n" ; | |
131 | |
132 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
133 # ARGVTS : $pcs, $mzs, $ints | |
134 sleep 1 ; print "\n** Test $current_test get_pcgroup_list with pcs array **\n" ; $current_test++ ; | |
135 is_deeply( get_pcgroup_listTest ( | |
136 [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,7,8,8,8,8,8,9,9,10,10,10,10,11,12,13,13,13,14,14,14] ), | |
137 ['1', '2','3','4','5','6','7','8','9','10','11','12','13','14'] , | |
138 'Method \'getPcgroupList\' works with various and multiple pcgroups and return the attended uniq pcgroups array'); | |
139 | |
140 | |
141 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
142 # ARGVTS : $pcs, $mzs, $ints | |
143 print "\n** Test $current_test get_pcgroups with pcs, mzs, ints arrays **\n" ; $current_test++ ; | |
144 is_deeply( get_pcgroupsTest ( | |
145 [1, 2, 1, 2, 1, 2, 1], ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], ['300', '300', '300', '300', '300', '300', '300'] ), | |
146 { '1' => { 'id' => '1', | |
147 'mzmed' => ['273.096','290.118','292.113','580.179'], | |
148 'into' => ['300','300','300','300'], | |
149 'annotation' => {}, | |
150 'massbank_ids' => [] }, | |
151 '2' => { 'annotation' => {}, | |
152 'into' => ['300','300','300'], | |
153 'mzmed' => ['289.086','291.096','579.169'], | |
154 'id' => '2', | |
155 'massbank_ids' => [], } | |
156 }, | |
157 'Method \'getPcgroups\' works with two pcgroups and return the attended pcgroups object'); | |
158 | |
159 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
160 # ARGVTS : $pcs, $mzs, $ints | |
161 print "\n** Test $current_test get_pcgroups with pcs, mzs, ints (some can be equal to 0) arrays **\n" ; $current_test++ ; | |
162 is_deeply( get_pcgroupsTest ( | |
163 [1, 2, 1, 2, 1, 2, 1], ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], ['0', '300', '300', '300', '300', '300', '300'] ), | |
164 { '1' => { 'id' => '1', | |
165 'mzmed' => ['273.096','290.118','292.113','580.179'], | |
166 'into' => ['0','300','300','300'], | |
167 'annotation' => {}, | |
168 'massbank_ids' => [] }, | |
169 '2' => { 'annotation' => {}, | |
170 'into' => ['300','300','300'], | |
171 'mzmed' => ['289.086','291.096','579.169'], | |
172 'id' => '2', | |
173 'massbank_ids' => [], } | |
174 }, | |
175 'Method \'getPcgroups\' works with two pcgroups (with intensity equal to 0) and return the attended pcgroups object'); | |
176 | |
177 | |
178 | |
179 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
180 ## ARGVTS : $header, $init_pcs, $pcgroups | |
181 sleep 1 ; print "\n** Test $current_test set_massbank_matrix_object with pc array and pcgroups object **\n" ; $current_test++ ; | |
182 is_deeply( set_massbank_matrix_objectTest ( 'massbank', [1,1,2,2,1], | |
183 { '1' => { 'id' => '1', | |
184 'mzmed' => ['273.096','290.118','292.113','580.179'], | |
185 'into' => ['300','300','300','300'], | |
186 'annotation' => {'num_res' => 3}, | |
187 'massbank_ids' => ['CA0001', 'CA0011', 'CA0111'] }, | |
188 '2' => { 'annotation' => {'num_res' => 3}, | |
189 'into' => ['300','300','300'], | |
190 'mzmed' => ['289.086','291.096','579.169'], | |
191 'id' => '2', | |
192 'massbank_ids' => ['CA0002', 'CA0022', 'CA0222'], } | |
193 } ), ## end argvts | |
194 [ [ 'massbank' ], ['CA0001|CA0011|CA0111'],['CA0001|CA0011|CA0111'], ['CA0002|CA0022|CA0222'], ['CA0002|CA0022|CA0222'], ['CA0001|CA0011|CA0111'] ], | |
195 'Method \'set_massbank_matrix_object\' works with header, pcs list, pcgroups and return the attended massbank matrix'); | |
196 | |
197 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
198 ## ARGVTS : $header, $init_pcs, $pcgroups | |
199 sleep 1 ; print "\n** Test $current_test set_massbank_matrix_object with undef hearder, pc array and pcgroups object **\n" ; $current_test++ ; | |
200 is_deeply( set_massbank_matrix_objectTest ( undef, [1,1,2,2,1], | |
201 { '1' => { 'id' => '1', | |
202 'mzmed' => ['273.096','290.118','292.113','580.179'], | |
203 'into' => ['300','300','300','300'], | |
204 'annotation' => {'num_res' => 3}, | |
205 'massbank_ids' => ['CA0001', 'CA0011', 'CA0111'] }, | |
206 '2' => { 'annotation' => {'num_res' => 3}, | |
207 'into' => ['300','300','300'], | |
208 'mzmed' => ['289.086','291.096','579.169'], | |
209 'id' => '2', | |
210 'massbank_ids' => ['CA0002', 'CA0022', 'CA0222'], } | |
211 } ), ## end argvts | |
212 [ ['CA0001|CA0011|CA0111'],['CA0001|CA0011|CA0111'], ['CA0002|CA0022|CA0222'], ['CA0002|CA0022|CA0222'], ['CA0001|CA0011|CA0111'] ], | |
213 'Method \'set_massbank_matrix_object\' works with undef header and return the attended massbank matrix'); | |
214 | |
215 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
216 ## ARGVTS : $header, $init_pcs, $pcgroups | |
217 sleep 1 ; print "\n** Test $current_test set_massbank_matrix_object with empty massbankIds **\n" ; $current_test++ ; | |
218 is_deeply( set_massbank_matrix_objectTest ( 'massbank', [1,1,2,2,1], | |
219 { '1' => { 'id' => '1', | |
220 'mzmed' => ['273.096','290.118','292.113','580.179'], | |
221 'into' => ['300','300','300','300'], | |
222 'annotation' => {'num_res' => 3}, | |
223 'massbank_ids' => ['CA0001', 'CA0011', 'CA0111'] }, | |
224 '2' => { 'annotation' => {'num_res' => 0}, | |
225 'into' => ['300','300','300'], | |
226 'mzmed' => ['289.086','291.096','579.169'], | |
227 'id' => '2', | |
228 'massbank_ids' => [], } | |
229 } ), ## end argvts | |
230 [ [ 'massbank' ], ['CA0001|CA0011|CA0111'],['CA0001|CA0011|CA0111'], ['No_result_found_on_MassBank'], ['No_result_found_on_MassBank'], ['CA0001|CA0011|CA0111'] ], | |
231 'Method \'set_massbank_matrix_object\' works with empty massbank_ids and return the attended massbank matrix'); | |
232 | |
233 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
234 ## ARGVTS : $input_matrix_object, $massbank_matrix_object | |
235 sleep 1 ; print "\n** Test $current_test add_massbank_matrix_to_input_matrix with two matrix **\n" ; $current_test++ ; | |
236 is_deeply( add_massbank_matrix_to_input_matrixTest ( | |
237 [[ 'pcgroup' ],[1],[1],[2],[2],[1]], | |
238 [ [ 'massbank' ], ['CA0001|CA0011|CA0111'],['CA0001|CA0011|CA0111'], ['CA0002|CA0022|CA0222'], ['CA0002|CA0022|CA0222'], ['CA0001|CA0011|CA0111'] ], | |
239 ), ## end argvts | |
240 [ ['pcgroup','massbank'],[1,'CA0001|CA0011|CA0111'],[1,'CA0001|CA0011|CA0111'],[2,'CA0002|CA0022|CA0222'],[2,'CA0002|CA0022|CA0222'],[1,'CA0001|CA0011|CA0111'] | |
241 ], ## end results | |
242 'Method \'add_massbank_matrix_to_input_matrix\' works with two wel formatted matrix and return the right csv matrix'); | |
243 | |
244 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
245 ## ARGVTS : $pcgroups_object, threshold | |
246 sleep 1 ; print "\n** Test $current_test filter_pcgroup_res with pcgroups object and a threshold **\n" ; $current_test++ ; | |
247 is_deeply( filter_pcgroup_resTest ( | |
248 { '1' => { 'massbank_ids' => ['MB0004', 'MB0005', 'MB0008'], 'annotation' => {'res' => [ {'score' => 0.4, 'id' => 'MB0004'}, {'score' => 0.8, 'id' => 'MB0008' }, {'score' => 0.5, 'id' => 'MB0005' } ], 'num_res' => 3 } }, '2' => { 'massbank_ids' => ['MB0004', 'MB0008', 'MB0007'], 'annotation' => {'res' => [{'score' => 0.4, 'id' => 'MB0004'}, {'score' => 0.8, 'id' => 'MB0008'}, {'score' => 0.7, 'id' => 'MB0007'} ], 'num_res' => 3 } } }, | |
249 0.5 | |
250 ), ## end argvts | |
251 { '1' => { 'massbank_ids' => ['MB0005', 'MB0008'], 'annotation' => { 'res' => [ {'score' => 0.5, 'id' => 'MB0005' }, {'score' => 0.8, 'id' => 'MB0008'} ], 'num_res' => 2 } }, '2' => { 'massbank_ids' => ['MB0007', 'MB0008'], 'annotation' => {'res' => [{'score' => 0.7, 'id' => 'MB0007' }, {'score' => 0.8, 'id' => 'MB0008' } ], 'num_res' => 2 } } }, | |
252 ## end results | |
253 'Method \'filter_pcgroup_resTest\' works with well formated pcgroups object and a float for threshold'); | |
254 | |
255 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
256 ## ARGVTS : $pcgroups_object, threshold | |
257 sleep 1 ; print "\n** Test $current_test filter_pcgroup_res with empty pcgroups object and a threshold **\n" ; $current_test++ ; | |
258 is_deeply( filter_pcgroup_resTest ( | |
259 { '1' => { 'massbank_ids' => [], 'annotation' => {'res' => [ ], 'num_res' => 1 } }, '2' => { 'massbank_ids' => [], 'annotation' => {'res' => [ ], 'num_res' => 1 } } }, | |
260 0.5 | |
261 ), ## end argvts | |
262 { '1' => { 'massbank_ids' => [], 'annotation' => { 'res' => [ ], 'num_res' => 0 } }, '2' => { 'massbank_ids' => [], 'annotation' => {'res' => [ ], 'num_res' => 0 } } }, | |
263 ## end results | |
264 'Method \'filter_pcgroup_resTest\' works with an empty pcgroups object and a float for threshold'); | |
265 | |
266 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
267 ## ARGVTS : $pcgroups_object, threshold | |
268 sleep 1 ; print "\n** Test $current_test filter_pcgroup_res with pcgroups object but undef params and a threshold **\n" ; $current_test++ ; | |
269 is_deeply( filter_pcgroup_resTest ( | |
270 { '1' => { 'massbank_ids' => [], 'annotation' => {'res' => [ {'score' => undef, 'id' => undef} ], 'num_res' => 0 } }, '2' => { 'massbank_ids' => ['MB0004', 'MB0008', 'MB0007'], 'annotation' => {'res' => [{'score' => 0.4, 'id' => 'MB0004'}, {'score' => 0.8, 'id' => 'MB0008'}, {'score' => 0.7, 'id' => 'MB0007'} ], 'num_res' => 3 } } }, | |
271 0.5 | |
272 ), ## end argvts | |
273 { '1' => { 'massbank_ids' => [], 'annotation' => { 'res' => [ {'score' => undef, 'id' => undef } ], 'num_res' => 0 } }, '2' => { 'massbank_ids' => ['MB0007', 'MB0008'], 'annotation' => {'res' => [{'score' => 0.7, 'id' => 'MB0007' }, {'score' => 0.8, 'id' => 'MB0008' } ], 'num_res' => 2 } } }, | |
274 ## end results | |
275 'Method \'filter_pcgroup_resTest\' works with well formated pcgroups object (but undef value) and a float for threshold'); | |
276 | |
277 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
278 ## ARGVTS : $pcgroups_object | |
279 sleep 1 ; print "\n** Test $current_test compute_ids_from_pcgroups_res with pcgroups object **\n" ; $current_test++ ; | |
280 is_deeply( compute_ids_from_pcgroups_resTest ( | |
281 { '1' => { 'massbank_ids' => ['MB0004', 'MB0005', 'MB0008'], 'annotation' => {'res' => [ {'score' => 0.4, 'id' => 'MB0004'}, {'score' => 0.8, 'id' => 'MB0008' }, {'score' => 0.5, 'id' => 'MB0005' } ], 'num_res' => 3 } }, '2' => { 'massbank_ids' => ['MB0004', 'MB0008', 'MB0007'], 'annotation' => {'res' => [{'score' => 0.4, 'id' => 'MB0004'}, {'score' => 0.8, 'id' => 'MB0008'}, {'score' => 0.7, 'id' => 'MB0007'} ], 'num_res' => 3 } } }, | |
282 ), ## end argvts | |
283 ['MB0004', 'MB0005', 'MB0007', 'MB0008'], | |
284 ## end results | |
285 'Method \'compute_ids_from_pcgroups_res\' works with a classic pcgroups object return a nice and unique list of ids'); | |
286 | |
287 | |
288 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
289 ## ARGVTS : $massbank_ids, chunk_size | |
290 sleep 1 ; print "\n** Test $current_test get_massbank_records_by_chunk with ids list **\n" ; $current_test++ ; | |
291 is_deeply( get_massbank_records_by_chunkTest ( | |
292 'EU', | |
293 ['KOX00002', 'KOX00003', 'FU000001', 'TY000040', 'TY000041', 'FU000002'], | |
294 2 | |
295 ), ## end argvts | |
296 ['ACCESSION: KOX00002 | |
297 RECORD_TITLE: GABA; LC-ESI-QTOF; MS2; MERGED; [M+H]+ | |
298 DATE: 2011.08.24 (Created 2008.11.28) | |
299 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
300 LICENSE: Copyright 2006-2011 Keio | |
301 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
302 COMMENT: Instead MassBank provides the merged spectra for the public. | |
303 COMMENT: This record was generated by merging the following three MassBank records. | |
304 COMMENT: [Merging] KO006374 GABA; LC-ESI-QTOF; MS2; CE:10 V [M+H]+ | |
305 COMMENT: [Merging] KO006375 GABA; LC-ESI-QTOF; MS2; CE:20 V [M+H]+ | |
306 COMMENT: [Merging] KO006376 GABA; LC-ESI-QTOF; MS2; CE:30 V [M+H]+ | |
307 COMMENT: [Merging] KO006377 GABA; LC-ESI-QTOF; MS2; CE:40 V [M+H]+ | |
308 COMMENT: [Merging] KO006378 GABA; LC-ESI-QTOF; MS2; CE:50 V [M+H]+ | |
309 CH$NAME: GABA | |
310 CH$NAME: 4-Aminobutanoate | |
311 CH$NAME: 4-Aminobutanoic acid | |
312 CH$NAME: 4-Aminobutylate | |
313 CH$NAME: 4-Aminobutyrate | |
314 CH$NAME: 4-Aminobutyric acid | |
315 CH$NAME: gamma-Aminobutyric acid | |
316 CH$COMPOUND_CLASS: N/A | |
317 CH$FORMULA: C4H9NO2 | |
318 CH$EXACT_MASS: 103.06333 | |
319 CH$SMILES: NCCCC(O)=O | |
320 CH$IUPAC: InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7) | |
321 CH$LINK: CAS 56-12-2 | |
322 CH$LINK: CHEBI 30566 | |
323 CH$LINK: KEGG C00334 | |
324 CH$LINK: NIKKAJI J1.375G | |
325 CH$LINK: PUBCHEM SID:3628 | |
326 AC$INSTRUMENT: Qstar, Applied Biosystems | |
327 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
328 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
329 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
330 MS$FOCUSED_ION: PRECURSOR_M/Z 104 | |
331 MS$FOCUSED_ION: PRECURSOR_TYPE [M+H]+ | |
332 PK$ANNOTATION: 39.0234750963 45.0340397826 68.0500241978 69.0340397826 86.0605888841 87.0446044689 104.0711535704 | |
333 PK$NUM_PEAK: N/A | |
334 PK$PEAK: m/z int. rel.int. | |
335 N/A | |
336 ', | |
337 'ACCESSION: KOX00003 | |
338 RECORD_TITLE: Adenosine; LC-ESI-QTOF; MS2; MERGED; [M-H]- | |
339 DATE: 2012.05.21 (Created 2008.11.28) | |
340 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
341 LICENSE: Copyright 2006-2011 Keio | |
342 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
343 COMMENT: Instead MassBank provides the merged spectra for the public. | |
344 COMMENT: This record was generated by merging the following three MassBank records. | |
345 COMMENT: [Merging] KO004298 Adenosine; LC-ESI-QTOF; MS2; CE:10 V [M-H]- | |
346 COMMENT: [Merging] KO004299 Adenosine; LC-ESI-QTOF; MS2; CE:20 V [M-H]- | |
347 COMMENT: [Merging] KO004301 Adenosine; LC-ESI-QTOF; MS2; CE:40 V [M-H]- | |
348 COMMENT: [Merging] KO004302 Adenosine; LC-ESI-QTOF; MS2; CE:50 V [M-H]- | |
349 CH$NAME: Adenosine | |
350 CH$COMPOUND_CLASS: N/A | |
351 CH$FORMULA: C10H13N5O4 | |
352 CH$EXACT_MASS: 267.09675 | |
353 CH$SMILES: OC[C@@H](O1)[C@@H](O)[C@@H](O)[C@@H]1n(c3)c(n2)c(n3)c(N)nc2 | |
354 CH$IUPAC: InChI=1S/C10H13N5O4/c11-8-5-9(13-2-12-8)15(3-14-5)10-7(18)6(17)4(1-16)19-10/h2-4,6-7,10,16-18H,1H2,(H2,11,12,13)/t4-,6-,7-,10-/m1/s1 | |
355 CH$LINK: CAS 58-61-7 | |
356 CH$LINK: CHEBI 16335 | |
357 CH$LINK: CHEMPDB ADN | |
358 CH$LINK: KEGG C00212 | |
359 CH$LINK: NIKKAJI J4.501B | |
360 CH$LINK: PUBCHEM SID:3512 | |
361 AC$INSTRUMENT: Qstar, Applied Biosystems | |
362 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
363 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
364 AC$MASS_SPECTROMETRY: ION_MODE NEGATIVE | |
365 MS$FOCUSED_ION: PRECURSOR_M/Z 266 | |
366 MS$FOCUSED_ION: PRECURSOR_TYPE [M-H]- | |
367 PK$ANNOTATION: 107.0357711171 134.0466701544 136.0623202186 266.0889288996 | |
368 PK$NUM_PEAK: N/A | |
369 PK$PEAK: m/z int. rel.int. | |
370 N/A | |
371 ', | |
372 'ACCESSION: FU000001 | |
373 RECORD_TITLE: 3-Man2GlcNAc; LC-ESI-QQ; MS2; CE:15V; Amide | |
374 DATE: 2016.01.19 (Created 2009.02.18, modified 2011.05.06) | |
375 AUTHORS: Matsuura F, Ohta M, Kittaka M, Faculty of Life Science and Biotechnology, Fukuyama University | |
376 LICENSE: CC BY-SA | |
377 CH$NAME: 3-Man2GlcNAc | |
378 CH$NAME: Man-alpha-1-3Man-beta-1-4GlcNac | |
379 CH$COMPOUND_CLASS: Natural Product; Oligosaccharide; N-linked glycan; High-mannose type | |
380 CH$FORMULA: C20H35NO16 | |
381 CH$EXACT_MASS: 545.19558 | |
382 CH$SMILES: CC(=O)NC(C(O)1)C(O)C(OC(O2)C(O)C(OC(O3)C(O)C(O)C(O)C(CO)3)C(O)C(CO)2)C(CO)O1 | |
383 CH$IUPAC: InChI=1/C20H35NO16/c1-5(25)21-9-12(28)16(8(4-24)33-18(9)32)36-20-15(31)17(11(27)7(3-23)35-20)37-19-14(30)13(29)10(26)6(2-22)34-19/h6-20,22-24,26-32H,2-4H2,1H3,(H,21,25)/t6-,7-,8-,9-,10-,11-,12-,13+,14-,15+,16-,17+,18+,19-,20+/m1/s1/f/h21H | |
384 CH$LINK: CHEMSPIDER 24606097 | |
385 CH$LINK: KEGG G00319 | |
386 CH$LINK: OligosaccharideDataBase man 547428 | |
387 CH$LINK: OligosaccharideDataBase2D map5 ODS=1.21 Amide=2.85 | |
388 AC$INSTRUMENT: 2695 HPLC Quadro Micro API, Waters | |
389 AC$INSTRUMENT_TYPE: LC-ESI-QQ | |
390 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
391 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
392 AC$MASS_SPECTROMETRY: COLLISION_ENERGY 15.0 V | |
393 AC$MASS_SPECTROMETRY: DATAFORMAT Centroid | |
394 AC$MASS_SPECTROMETRY: DESOLVATION_GAS_FLOW 897 L/Hr | |
395 AC$MASS_SPECTROMETRY: DESOLVATION_TEMPERATURE 399 C | |
396 AC$MASS_SPECTROMETRY: FRAGMENTATION_METHOD LOW-ENERGY CID | |
397 AC$MASS_SPECTROMETRY: IONIZATION ESI | |
398 AC$MASS_SPECTROMETRY: SCANNING 1 amu/sec (m/z = 20-2040) | |
399 AC$MASS_SPECTROMETRY: SOURCE_TEMPERATURE 100C | |
400 AC$CHROMATOGRAPHY: COLUMN_NAME TSK-GEL Amide-80 2.0 mm X 250 mm (TOSOH) | |
401 AC$CHROMATOGRAPHY: COLUMN_TEMPERATURE 40 C | |
402 AC$CHROMATOGRAPHY: FLOW_GRADIENT 74/26 at 0 min, 50/50 at 60 min. | |
403 AC$CHROMATOGRAPHY: FLOW_RATE 0.2 ml/min | |
404 AC$CHROMATOGRAPHY: RETENTION_TIME 7.080 min | |
405 AC$CHROMATOGRAPHY: SAMPLING_CONE 43.10 V | |
406 AC$CHROMATOGRAPHY: SOLVENT CH3CN/H2O | |
407 MS$FOCUSED_ION: DERIVATIVE_FORM C29H46N2O17 | |
408 MS$FOCUSED_ION: DERIVATIVE_MASS 694.27965 | |
409 MS$FOCUSED_ION: DERIVATIVE_TYPE ABEE (p-Aminobenzoic acid ethyl ester) | |
410 MS$FOCUSED_ION: PRECURSOR_M/Z 695.00 | |
411 MS$FOCUSED_ION: PRECURSOR_TYPE [M+H]+ | |
412 PK$SPLASH: splash10-00080az000-bfe86aa7211a87812a06 | |
413 PK$NUM_PEAK: 8 | |
414 PK$PEAK: m/z int. rel.int. | |
415 370.8 3.277e5 366 | |
416 371.4 3.036e4 34 | |
417 532.0 5.812e4 65 | |
418 532.6 2.982e5 333 | |
419 533.3 5.196e4 58 | |
420 694.1 4.564e5 510 | |
421 694.8 8.939e5 999 | |
422 695.4 5.537e4 62 | |
423 ', | |
424 'ACCESSION: FU000002 | |
425 RECORD_TITLE: 3-Man2GlcNAc; LC-ESI-QQ; MS2; CE:20V; Amide | |
426 DATE: 2016.01.19 (Created 2009.02.18, modified 2011.05.06) | |
427 AUTHORS: Matsuura F, Ohta M, Kittaka M, Faculty of Life Science and Biotechnology, Fukuyama University | |
428 LICENSE: CC BY-SA | |
429 CH$NAME: 3-Man2GlcNAc | |
430 CH$NAME: Man-alpha-1-3Man-beta-1-5GlcNac | |
431 CH$COMPOUND_CLASS: Natural Product; Oligosaccharide; N-linked glycan; High-mannose type | |
432 CH$FORMULA: C20H35NO16 | |
433 CH$EXACT_MASS: 545.19558 | |
434 CH$SMILES: CC(=O)NC(C(O)1)C(O)C(OC(O2)C(O)C(OC(O3)C(O)C(O)C(O)C(CO)3)C(O)C(CO)2)C(CO)O1 | |
435 CH$IUPAC: InChI=1/C20H35NO16/c1-5(25)21-9-12(28)16(8(4-24)33-18(9)32)36-20-15(31)17(11(27)7(3-23)35-20)37-19-14(30)13(29)10(26)6(2-22)34-19/h6-20,22-24,26-32H,2-4H2,1H3,(H,21,25)/t6-,7-,8-,9-,10-,11-,12-,13+,14-,15+,16-,17+,18+,19-,20+/m1/s1/f/h21H | |
436 CH$LINK: CHEMSPIDER 24606097 | |
437 CH$LINK: KEGG G00319 | |
438 CH$LINK: OligosaccharideDataBase man 547428 | |
439 CH$LINK: OligosaccharideDataBase2D map5 ODS=1.21 Amide=2.85 | |
440 AC$INSTRUMENT: 2695 HPLC Quadro Micro API, Waters | |
441 AC$INSTRUMENT_TYPE: LC-ESI-QQ | |
442 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
443 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
444 AC$MASS_SPECTROMETRY: COLLISION_ENERGY 20.0 V | |
445 AC$MASS_SPECTROMETRY: DATAFORMAT Centroid | |
446 AC$MASS_SPECTROMETRY: DESOLVATION_GAS_FLOW 897 L/Hr | |
447 AC$MASS_SPECTROMETRY: DESOLVATION_TEMPERATURE 399 C | |
448 AC$MASS_SPECTROMETRY: FRAGMENTATION_METHOD LOW-ENERGY CID | |
449 AC$MASS_SPECTROMETRY: IONIZATION ESI | |
450 AC$MASS_SPECTROMETRY: SCANNING 1 amu/sec (m/z = 20-2040) | |
451 AC$MASS_SPECTROMETRY: SOURCE_TEMPERATURE 100C | |
452 AC$CHROMATOGRAPHY: COLUMN_NAME TSK-GEL Amide-80 2.0 mm X 250 mm (TOSOH) | |
453 AC$CHROMATOGRAPHY: COLUMN_TEMPERATURE 40 C | |
454 AC$CHROMATOGRAPHY: FLOW_GRADIENT 74/26 at 0 min, 50/50 at 60 min. | |
455 AC$CHROMATOGRAPHY: FLOW_RATE 0.2 ml/min | |
456 AC$CHROMATOGRAPHY: RETENTION_TIME 7.088 min | |
457 AC$CHROMATOGRAPHY: SAMPLING_CONE 43.10 V | |
458 AC$CHROMATOGRAPHY: SOLVENT CH3CN/H2O | |
459 MS$FOCUSED_ION: DERIVATIVE_FORM C29H46N2O17 | |
460 MS$FOCUSED_ION: DERIVATIVE_MASS 694.27965 | |
461 MS$FOCUSED_ION: DERIVATIVE_TYPE ABEE (p-Aminobenzoic acid ethyl ester) | |
462 MS$FOCUSED_ION: PRECURSOR_M/Z 695.00 | |
463 MS$FOCUSED_ION: PRECURSOR_TYPE [M+H]+ | |
464 PK$SPLASH: splash10-000z0fb000-52e2618a90c53226e008 | |
465 PK$NUM_PEAK: 10 | |
466 PK$PEAK: m/z int. rel.int. | |
467 324.9 5.549e4 65 | |
468 370.8 8.511e5 999 | |
469 371.3 8.989e4 106 | |
470 486.8 2.622e4 31 | |
471 532.0 5.832e4 68 | |
472 532.7 3.515e5 413 | |
473 533.3 3.910e4 46 | |
474 693.9 4.249e4 50 | |
475 694.5 1.979e5 232 | |
476 695.3 9.682e4 114 | |
477 ', | |
478 'ACCESSION: TY000040 | |
479 RECORD_TITLE: Aconitine; LC-ESI-ITTOF; MS; [M+H]+ | |
480 DATE: 2016.01.19 (Created 2008.10.10, modified 2011.05.06) | |
481 AUTHORS: Ken Tanaka | |
482 LICENSE: CC BY-SA | |
483 CH$NAME: Aconitine | |
484 CH$NAME: NSC56464 | |
485 CH$NAME: 16-Ethyl-1alpha,6alpha,19beta-trimethoxy-4-(methoxymethyl)-aconitane-3alpha,8,10alpha,11,18alpha-pentol, 8-acetate 10-benzoate | |
486 CH$NAME: 20-ethyl-3alpha,13,15alpha-trihydroxy-1alpha,6alpha,16beta-trimethoxy-4-(methoxymethyl)aconitane-8,14alpha-diyl 8-acetate 14-benzoate | |
487 CH$COMPOUND_CLASS: Natural Product; Alkaloid | |
488 CH$FORMULA: C34H47NO11 | |
489 CH$EXACT_MASS: 645.31491 | |
490 CH$SMILES: COC(C7)C(C61[H])(C5([H])2)C(N(CC(COC)6C7O)CC)([H])C(C(C5([H])3)(C(C(OC)C(O)(C(OC(=O)c(c4)cccc4)3)C2)O)OC(C)=O)([H])C1OC | |
491 CH$IUPAC: InChI=1S/C34H47NO11/c1-7-35-15-31(16-41-3)20(37)13-21(42-4)33-19-14-32(40)28(45-30(39)18-11-9-8-10-12-18)22(19)34(46-17(2)36,27(38)29(32)44-6)23(26(33)35)24(43-5)25(31)33/h8-12,19-29,37-38,40H,7,13-16H2,1-6H3/t19-,20-,21+,22-,23+,24+,25-,26+,27+,28-,29+,31+,32-,33+,34-/m1/s1 | |
492 CH$LINK: CAS 302-27-2 | |
493 CH$LINK: NIKKAJI J9.871J | |
494 CH$LINK: PUBCHEM 245005 | |
495 AC$INSTRUMENT: Shimadzu LC20A-IT-TOFMS | |
496 AC$INSTRUMENT_TYPE: LC-ESI-ITTOF | |
497 AC$MASS_SPECTROMETRY: MS_TYPE MS | |
498 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
499 AC$MASS_SPECTROMETRY: CDL_TEMPERATURE 200 C | |
500 AC$MASS_SPECTROMETRY: INTERFACE_VOLTAGE +4.50 kV | |
501 AC$MASS_SPECTROMETRY: SCANNING_RANGE 100-2000 | |
502 AC$CHROMATOGRAPHY: COLUMN_NAME Waters Atlantis T3 (2.1 x 150 mm, 5 um) | |
503 AC$CHROMATOGRAPHY: COLUMN_TEMPERATURE 40 C | |
504 AC$CHROMATOGRAPHY: FLOW_GRADIENT 10 % B to 100 % B/40 min | |
505 AC$CHROMATOGRAPHY: FLOW_RATE 0.2 ml/min | |
506 AC$CHROMATOGRAPHY: RETENTION_TIME 1197.701 | |
507 AC$CHROMATOGRAPHY: SOLVENT (A)5 mM ammonium acetate, (B)CH3CN | |
508 MS$FOCUSED_ION: ION_TYPE [M+H]+ | |
509 PK$SPLASH: splash10-000000z000-1f6554288e1249b37bcb | |
510 PK$NUM_PEAK: 3 | |
511 PK$PEAK: m/z int. rel.int. | |
512 646.3223 64380108 999 | |
513 647.3252 26819201 416 | |
514 648.3309 7305831 113 | |
515 ', | |
516 'ACCESSION: TY000041 | |
517 RECORD_TITLE: Atropine; LC-ESI-ITTOF; MS; [M+H]+ | |
518 DATE: 2016.01.19 (Created 2008.10.10, modified 2011.05.06) | |
519 AUTHORS: Ken Tanaka | |
520 LICENSE: CC BY-SA | |
521 CH$NAME: Atropine | |
522 CH$NAME: Benzeneacetic acid, alpha-(hydroxymethyl)- (3-endo)-8-methyl-8-azabicyclo[3.2.1]oct-3-yl ester | |
523 CH$NAME: 1alphaH,5alphaH-Tropan-3alpha-ol (+-)-tropate (ester) | |
524 CH$NAME: Benzeneacetic acid, alpha-(hydroxymethyl)-, 8-methyl-8-azabicyclo[3.2.1]oct-3-yl ester, endo- | |
525 CH$NAME: (+-)-Atropine | |
526 CH$NAME: (+-)-Hyoscyamine | |
527 CH$NAME: Tropine (+-)-tropate | |
528 CH$NAME: dl-Tropyl tropate | |
529 CH$NAME: dl-Hyoscyamine | |
530 CH$NAME: Tropine tropate | |
531 CH$NAME: Atropinol | |
532 CH$NAME: Eyesules | |
533 CH$NAME: Atropen | |
534 CH$NAME: Isopto-atropine | |
535 CH$NAME: Troyl tropate | |
536 CH$NAME: Belladenal | |
537 CH$NAME: Atropina | |
538 CH$NAME: Cytospaz | |
539 CH$NAME: Donnagel | |
540 CH$NAME: Anaspaz | |
541 CH$NAME: Atnaa | |
542 CH$NAME: Lonox | |
543 CH$NAME: Neo-Diophen | |
544 CH$NAME: DL-Tropanyl 2-hydroxy-1-phenylpropionate | |
545 CH$NAME: 2-Phenylhydracrylic acid 3-alpha-tropanyl ester | |
546 CH$NAME: tropan-3alpha-yl 3-hydroxy-2-phenylpropanoate | |
547 CH$NAME: 8-Methyl-8-azabicyclo[3.2.1]oct-3-yl tropate | |
548 CH$NAME: 8-Methyl-8-azabicyclo[3.2.1]oct-3-yl 3-hydroxy-2-phenylpropanoate | |
549 CH$NAME: alpha-(Hydroxymethyl)benzeneacetic acid 8-methyl-8-azabicyclo(3.2.1)oct-3-yl ester | |
550 CH$NAME: Benzeneacetic acid, alpha-(hydroxymethyl)-, (3-endo)-8-methyl-8-azabicyclo(3.2.1)oct-3-yl ester | |
551 CH$NAME: (3-endo)-8-methyl-8-azabicyclo[3.2.1]oct-3-yl (2S)-3-hydroxy-2-phenylpropanoate | |
552 CH$NAME: [(1R,5S)-8-methyl-8-azabicyclo[3.2.1]octan-3-yl] 3-hydroxy-2-phenylpropanoate | |
553 CH$NAME: beta-(Hydroxymethyl)benzeneacetic acid 8-methyl-8-azabicyclo[3.2.1]oct-3-yl ester | |
554 CH$NAME: endo-(+/-)-alpha-(Hydroxymethyl)benzeneacetic acid 8-methyl-8-azabicyclo[3.2.1]oct-3-yl ester | |
555 CH$COMPOUND_CLASS: Natural Product; Alkaloid | |
556 CH$FORMULA: C17H23NO3 | |
557 CH$EXACT_MASS: 289.16779 | |
558 CH$SMILES: OCC(C(=O)OC(C2)CC(C3)N(C)C(C3)2)c(c1)cccc1 | |
559 CH$IUPAC: InChI=1S/C17H23NO3/c1-18-13-7-8-14(18)10-15(9-13)21-17(20)16(11-19)12-5-3-2-4-6-12/h2-6,13-16,19H,7-11H2,1H3/t13-,14+,15+,16? | |
560 CH$LINK: CAS 51-55-8 | |
561 CH$LINK: NIKKAJI J237.402A | |
562 CH$LINK: PUBCHEM 174174 | |
563 AC$INSTRUMENT: Shimadzu LC20A-IT-TOFMS | |
564 AC$INSTRUMENT_TYPE: LC-ESI-ITTOF | |
565 AC$MASS_SPECTROMETRY: MS_TYPE MS | |
566 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
567 AC$MASS_SPECTROMETRY: CDL_TEMPERATURE 200 C | |
568 AC$MASS_SPECTROMETRY: INTERFACE_VOLTAGE +4.50 kV | |
569 AC$MASS_SPECTROMETRY: SCANNING_RANGE 100-2000 | |
570 AC$CHROMATOGRAPHY: COLUMN_NAME Waters Atlantis T3 (2.1 x 150 mm, 5 um) | |
571 AC$CHROMATOGRAPHY: COLUMN_TEMPERATURE 40 C | |
572 AC$CHROMATOGRAPHY: FLOW_GRADIENT 10 % B to 100 % B/40 min | |
573 AC$CHROMATOGRAPHY: FLOW_RATE 0.2 ml/min | |
574 AC$CHROMATOGRAPHY: RETENTION_TIME 641.701 | |
575 AC$CHROMATOGRAPHY: SOLVENT (A)5 mM ammonium acetate, (B)CH3CN | |
576 MS$FOCUSED_ION: ION_TYPE [M+H]+ | |
577 PK$SPLASH: splash10-00z0000000-bdadd43ab0e2444986f1 | |
578 PK$NUM_PEAK: 2 | |
579 PK$PEAK: m/z int. rel.int. | |
580 290.1754 109188681 999 | |
581 291.1762 21571851 197 | |
582 ' | |
583 ], | |
584 ## end results | |
585 'Method \'get_massbank_records_by_chunk\' works with a full ids list and return a nice and unique list of records from WS-MassBank'); | |
586 | |
587 | |
588 #### #### ##### ###### ################################################ ###### ##### ##### ###### ###### | |
589 | |
590 ## END of MAPPER SEQUENCE ## | |
591 | |
592 #### #### ##### ###### ################################################ ###### ##### ##### ###### ###### | |
593 } | |
594 | |
595 #### #### ##### ###### ################################################ ###### ##### ##### ###### ###### | |
596 | |
597 ## START of API SEQUENCE ## | |
598 | |
599 #### #### ##### ###### ################################################ ###### ##### ##### ###### ###### | |
600 elsif ($sequence eq "API") { | |
601 | |
602 ## testing connectMassBank on Japan and DE servers. | |
603 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
604 print "\n\t\t\t\t * * * * * * \n" ; | |
605 print "\t * * * - - - Test MassBank API from SOAP - - - * * * \n\n" ; | |
606 | |
607 | |
608 | |
609 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
610 print "\n** Test $current_test connectMassBankJP with real uri and proxy **\n" ; $current_test++; | |
611 isa_ok( connectMassBankJPTest(), 'SOAP::Lite' ); | |
612 | |
613 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
614 print "\n** Test $current_test connectMassBankDE with real uri and proxy **\n" ; $current_test++ ; | |
615 isa_ok( connectMassBankDETest(), 'SOAP::Lite' ); | |
616 | |
617 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
618 print "\n** Test $current_test getInstrumentTypes with the JP server **\n" ; $current_test++ ; | |
619 #is_deeply( getInstrumentTypesTest('JP'), ['APCI-ITFT', 'APCI-ITTOF','CE-ESI-TOF', 'CI-B', 'EI-B', 'EI-EBEB', 'ESI-ITFT', 'ESI-ITTOF', 'FAB-B', 'FAB-EB', 'FAB-EBEB', 'FD-B', 'FI-B', 'GC-EI-QQ', 'GC-EI-TOF', 'LC-APCI-QTOF', 'LC-APPI-QQ', 'LC-ESI-IT', 'LC-ESI-ITFT', 'LC-ESI-ITTOF', 'LC-ESI-Q', 'LC-ESI-QFT', 'LC-ESI-QIT', 'LC-ESI-QQ', 'LC-ESI-QTOF', 'LC-ESI-TOF', 'MALDI-QIT', 'MALDI-TOF', 'MALDI-TOFTOF'], "Works with \'JP server\' and return a list of instrument types"); | |
620 print "-- no test -- skipped because JP getInstrumentTypes method is down\n" ; | |
621 | |
622 print "\n** Test $current_test getInstrumentTypes with the DE server **\n" ; $current_test++ ; | |
623 #is_deeply( getInstrumentTypesTest('EU'), ['APCI-ITFT', 'APCI-ITTOF', 'CE-ESI-TOF', 'CI-B', 'EI-B', 'EI-EBEB', 'ESI-FTICR', 'ESI-ITFT', 'ESI-ITTOF', 'FAB-B', 'FAB-EB', 'FAB-EBEB', 'FD-B', 'FI-B', 'GC-EI-QQ', 'GC-EI-TOF', 'HPLC-ESI-TOF', 'LC-APCI-Q', 'LC-APCI-QTOF', 'LC-APPI-QQ', 'LC-ESI-IT', 'LC-ESI-ITFT', 'LC-ESI-ITTOF', 'LC-ESI-Q', 'LC-ESI-QFT', 'LC-ESI-QIT', 'LC-ESI-QQ', 'LC-ESI-QTOF', 'LC-ESI-TOF', 'MALDI-QIT', 'MALDI-TOF', 'MALDI-TOFTOF', 'UPLC-ESI-QTOF'], "Works with $server server and return a list of instrument types"); | |
624 print "-- no test -- skipped because DE method is down\n" ; | |
625 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
626 | |
627 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
628 print "\n** Test $current_test initRecordObject on a well formatted massbank record string **\n" ; $current_test++ ; | |
629 is_deeply( initRecordObjectTest('ACCESSION: KOX00001 | |
630 RECORD_TITLE: GABA; LC-ESI-QTOF; MS2; MERGED; [M-H]- | |
631 DATE: 2011.08.24 (Created 2008.11.28) | |
632 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
633 LICENSE: Copyright 2006-2011 Keio | |
634 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
635 COMMENT: Instead MassBank provides the merged spectra for the public. | |
636 COMMENT: This record was generated by merging the following three MassBank records. | |
637 COMMENT: [Merging] KO004290 GABA; LC-ESI-QTOF; MS2; CE:10 V [M-H]- | |
638 COMMENT: [Merging] KO004291 GABA; LC-ESI-QTOF; MS2; CE:20 V [M-H]- | |
639 COMMENT: [Merging] KO004292 GABA; LC-ESI-QTOF; MS2; CE:30 V [M-H]- | |
640 CH$NAME: GABA | |
641 CH$NAME: 4-Aminobutanoate | |
642 CH$NAME: 4-Aminobutanoic acid | |
643 CH$NAME: 4-Aminobutylate | |
644 CH$NAME: 4-Aminobutyrate | |
645 CH$NAME: 4-Aminobutyric acid | |
646 CH$NAME: gamma-Aminobutyric acid | |
647 CH$COMPOUND_CLASS: N/A | |
648 CH$FORMULA: C4H9NO2 | |
649 CH$EXACT_MASS: 103.06333 | |
650 CH$SMILES: NCCCC(O)=O | |
651 CH$IUPAC: InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7) | |
652 CH$LINK: CAS 56-12-2 | |
653 CH$LINK: CHEBI 30566 | |
654 CH$LINK: KEGG C00334 | |
655 CH$LINK: NIKKAJI J1.375G | |
656 CH$LINK: PUBCHEM SID:3628 | |
657 AC$INSTRUMENT: Qstar, Applied Biosystems | |
658 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
659 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
660 AC$MASS_SPECTROMETRY: ION_MODE NEGATIVE | |
661 MS$FOCUSED_ION: PRECURSOR_M/Z 102 | |
662 MS$FOCUSED_ION: PRECURSOR_TYPE [M-H]- | |
663 PK$ANNOTATION: 41.9979886273 84.0449388199 102.0555035062 | |
664 PK$NUM_PEAK: N/A | |
665 PK$PEAK: m/z int. rel.int. | |
666 N/A | |
667 '), | |
668 { | |
669 'CH$NAME' => 'gamma-Aminobutyric acid', | |
670 'AC$MASS_SPECTROMETRY' => 'ION_MODE NEGATIVE', | |
671 'CH$LINK: PUBCHEM SID' => '3628', | |
672 'ACCESSION' => 'KOX00001', | |
673 'CH$COMPOUND_CLASS' => 'N/A', | |
674 'LICENSE' => 'Copyright 2006-2011 Keio', | |
675 'COMMENT: [Merging] KO004292 GABA; LC-ESI-QTOF; MS2; CE' => '30 V [M-H]-', | |
676 'COMMENT: [Merging] KO004291 GABA; LC-ESI-QTOF; MS2; CE' => '20 V [M-H]-', | |
677 'CH$IUPAC' => 'InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7)', | |
678 'PK$ANNOTATION' => '41.9979886273 84.0449388199 102.0555035062', | |
679 'AUTHORS' => 'Institute for Advanced Biosciences, Keio Univ.', | |
680 'PK$NUM_PEAK' => 'N/A', | |
681 'CH$SMILES' => 'NCCCC(O)=O', | |
682 'AC$INSTRUMENT_TYPE' => 'LC-ESI-QTOF', | |
683 'CH$EXACT_MASS' => '103.06333', | |
684 'CH$LINK' => 'NIKKAJI J1.375G', | |
685 'CH$FORMULA' => 'C4H9NO2', | |
686 'PK$PEAK' => { | |
687 'relint' => [], | |
688 'int' => [], | |
689 'mz' => [] | |
690 }, | |
691 'DATE' => '2011.08.24 (Created 2008.11.28)', | |
692 'MS$FOCUSED_ION' => 'PRECURSOR_TYPE [M-H]-', | |
693 'RECORD_TITLE' => 'GABA; LC-ESI-QTOF; MS2; MERGED; [M-H]-', | |
694 'COMMENT: [Merging] KO004290 GABA; LC-ESI-QTOF; MS2; CE' => '10 V [M-H]-', | |
695 'AC$INSTRUMENT' => 'Qstar, Applied Biosystems', | |
696 'COMMENT' => 'This record was generated by merging the following three MassBank records.' | |
697 }, | |
698 "Works with a well formatted massbank record string and return one record object from \"KOX00001\" id"); | |
699 | |
700 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
701 print "\n** Test $current_test initRecordObject on a well formatted massbank record string (has peaks !!) **\n" ; $current_test++ ; | |
702 is_deeply( initRecordObjectTest('ACCESSION: TY000040 | |
703 RECORD_TITLE: Aconitine; LC-ESI-ITTOF; MS; [M+H]+ | |
704 DATE: 2011.05.06 (Created 2008.10.10) | |
705 AUTHORS: Ken Tanaka | |
706 LICENSE: CC BY-SA | |
707 CH$NAME: Aconitine | |
708 CH$NAME: NSC56464 | |
709 CH$NAME: 16-Ethyl-1alpha,6alpha,19beta-trimethoxy-4-(methoxymethyl)-aconitane-3alpha,8,10alpha,11,18alpha-pentol, 8-acetate 10-benzoate | |
710 CH$NAME: 20-ethyl-3alpha,13,15alpha-trihydroxy-1alpha,6alpha,16beta-trimethoxy-4-(methoxymethyl)aconitane-8,14alpha-diyl 8-acetate 14-benzoate | |
711 CH$COMPOUND_CLASS: Natural Product; Alkaloid | |
712 CH$FORMULA: C34H47NO11 | |
713 CH$EXACT_MASS: 645.31491 | |
714 CH$SMILES: COC(C7)C(C61[H])(C5([H])2)C(N(CC(COC)6C7O)CC)([H])C(C(C5([H])3)(C(C(OC)C(O)(C(OC(=O)c(c4)cccc4)3)C2)O)OC(C)=O)([H])C1OC | |
715 CH$IUPAC: InChI=1S/C34H47NO11/c1-7-35-15-31(16-41-3)20(37)13-21(42-4)33-19-14-32(40)28(45-30(39)18-11-9-8-10-12-18)22(19)34(46-17(2)36,27(38)29(32)44-6)23(26(33)35)24(43-5)25(31)33/h8-12,19-29,37-38,40H,7,13-16H2,1-6H3/t19-,20-,21+,22-,23+,24+,25-,26+,27+,28-,29+,31+,32-,33+,34-/m1/s1 | |
716 CH$LINK: CAS 302-27-2 | |
717 CH$LINK: NIKKAJI J9.871J | |
718 CH$LINK: PUBCHEM 245005 | |
719 AC$INSTRUMENT: Shimadzu LC20A-IT-TOFMS | |
720 AC$INSTRUMENT_TYPE: LC-ESI-ITTOF | |
721 AC$MASS_SPECTROMETRY: MS_TYPE MS | |
722 AC$MASS_SPECTROMETRY: ION_MODE POSITIVE | |
723 AC$MASS_SPECTROMETRY: CDL_TEMPERATURE 200 C | |
724 AC$MASS_SPECTROMETRY: INTERFACE_VOLTAGE +4.50 kV | |
725 AC$MASS_SPECTROMETRY: SCANNING_RANGE 100-2000 | |
726 AC$CHROMATOGRAPHY: COLUMN_NAME Waters Atlantis T3 (2.1 x 150 mm, 5 um) | |
727 AC$CHROMATOGRAPHY: COLUMN_TEMPERATURE 40 C | |
728 AC$CHROMATOGRAPHY: FLOW_GRADIENT 10 % B to 100 % B/40 min | |
729 AC$CHROMATOGRAPHY: FLOW_RATE 0.2 ml/min | |
730 AC$CHROMATOGRAPHY: RETENTION_TIME 1197.701 | |
731 AC$CHROMATOGRAPHY: SOLVENT (A)5 mM ammonium acetate, (B)CH3CN | |
732 MS$FOCUSED_ION: ION_TYPE [M+H]+ | |
733 PK$NUM_PEAK: 3 | |
734 PK$PEAK: m/z int. rel.int. | |
735 646.3223 64380108 999 | |
736 647.3252 26819201 416 | |
737 648.3309 7305831 113 | |
738 '), | |
739 { | |
740 'MS$FOCUSED_ION' => 'ION_TYPE [M+H]+', | |
741 'CH$COMPOUND_CLASS' => 'Natural Product; Alkaloid', | |
742 'CH$EXACT_MASS' => '645.31491', | |
743 'AC$MASS_SPECTROMETRY' => 'SCANNING_RANGE 100-2000', | |
744 'AC$INSTRUMENT' => 'Shimadzu LC20A-IT-TOFMS', | |
745 'PK$PEAK' => { | |
746 'mz' => [ | |
747 '646.3223', | |
748 '647.3252', | |
749 '648.3309' | |
750 ], | |
751 'int' => [ | |
752 '64380108', | |
753 '26819201', | |
754 '7305831' | |
755 ], | |
756 'relint' => [ | |
757 '999', | |
758 '416', | |
759 '113' | |
760 ] | |
761 }, | |
762 'CH$IUPAC' => 'InChI=1S/C34H47NO11/c1-7-35-15-31(16-41-3)20(37)13-21(42-4)33-19-14-32(40)28(45-30(39)18-11-9-8-10-12-18)22(19)34(46-17(2)36,27(38)29(32)44-6)23(26(33)35)24(43-5)25(31)33/h8-12,19-29,37-38,40H,7,13-16H2,1-6H3/t19-,20-,21+,22-,23+,24+,25-,26+,27+,28-,29+,31+,32-,33+,34-/m1/s1', | |
763 'AC$CHROMATOGRAPHY' => 'SOLVENT (A)5 mM ammonium acetate, (B)CH3CN', | |
764 'DATE' => '2011.05.06 (Created 2008.10.10)', | |
765 'LICENSE' => 'CC BY-SA', | |
766 'AC$INSTRUMENT_TYPE' => 'LC-ESI-ITTOF', | |
767 'CH$FORMULA' => 'C34H47NO11', | |
768 'CH$LINK' => 'PUBCHEM 245005', | |
769 'CH$NAME' => '20-ethyl-3alpha,13,15alpha-trihydroxy-1alpha,6alpha,16beta-trimethoxy-4-(methoxymethyl)aconitane-8,14alpha-diyl 8-acetate 14-benzoate', | |
770 'PK$NUM_PEAK' => '3', | |
771 'ACCESSION' => 'TY000040', | |
772 'RECORD_TITLE' => 'Aconitine; LC-ESI-ITTOF; MS; [M+H]+', | |
773 'CH$SMILES' => 'COC(C7)C(C61[H])(C5([H])2)C(N(CC(COC)6C7O)CC)([H])C(C(C5([H])3)(C(C(OC)C(O)(C(OC(=O)c(c4)cccc4)3)C2)O)OC(C)=O)([H])C1OC', | |
774 'AUTHORS' => 'Ken Tanaka' | |
775 }, | |
776 "Works with a well formatted massbank record string and return one record object from \"KOX00001\" id"); | |
777 | |
778 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
779 print "\n** Test $current_test getRecord on $server server with a true ID **\n" ; $current_test++ ; | |
780 is_deeply( getRecordInfoTest($server, ['KOX00001']), | |
781 ['ACCESSION: KOX00001 | |
782 RECORD_TITLE: GABA; LC-ESI-QTOF; MS2; MERGED; [M-H]- | |
783 DATE: 2011.08.24 (Created 2008.11.28) | |
784 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
785 LICENSE: Copyright 2006-2011 Keio | |
786 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
787 COMMENT: Instead MassBank provides the merged spectra for the public. | |
788 COMMENT: This record was generated by merging the following three MassBank records. | |
789 COMMENT: [Merging] KO004290 GABA; LC-ESI-QTOF; MS2; CE:10 V [M-H]- | |
790 COMMENT: [Merging] KO004291 GABA; LC-ESI-QTOF; MS2; CE:20 V [M-H]- | |
791 COMMENT: [Merging] KO004292 GABA; LC-ESI-QTOF; MS2; CE:30 V [M-H]- | |
792 CH$NAME: GABA | |
793 CH$NAME: 4-Aminobutanoate | |
794 CH$NAME: 4-Aminobutanoic acid | |
795 CH$NAME: 4-Aminobutylate | |
796 CH$NAME: 4-Aminobutyrate | |
797 CH$NAME: 4-Aminobutyric acid | |
798 CH$NAME: gamma-Aminobutyric acid | |
799 CH$COMPOUND_CLASS: N/A | |
800 CH$FORMULA: C4H9NO2 | |
801 CH$EXACT_MASS: 103.06333 | |
802 CH$SMILES: NCCCC(O)=O | |
803 CH$IUPAC: InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7) | |
804 CH$LINK: CAS 56-12-2 | |
805 CH$LINK: CHEBI 30566 | |
806 CH$LINK: KEGG C00334 | |
807 CH$LINK: NIKKAJI J1.375G | |
808 CH$LINK: PUBCHEM SID:3628 | |
809 AC$INSTRUMENT: Qstar, Applied Biosystems | |
810 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
811 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
812 AC$MASS_SPECTROMETRY: ION_MODE NEGATIVE | |
813 MS$FOCUSED_ION: PRECURSOR_M/Z 102 | |
814 MS$FOCUSED_ION: PRECURSOR_TYPE [M-H]- | |
815 PK$ANNOTATION: 41.9979886273 84.0449388199 102.0555035062 | |
816 PK$NUM_PEAK: N/A | |
817 PK$PEAK: m/z int. rel.int. | |
818 N/A | |
819 '], | |
820 "Works with $server server and return one record from \"KOX00001\" id"); | |
821 | |
822 ## test a false massbank ID - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
823 print "\n** Test $current_test getRecord with a false ID **\n" ; $current_test++ ; | |
824 is_deeply( getRecordInfoTest($server, ['KOX100101']), [undef], "Method \'getRecordInfo\' works with $server server and manage no sended record from \"KOX100101\" a false id"); | |
825 | |
826 ## test a false massbank ID - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
827 print "\n** Test $current_test getRecord with a false ID into a real list **\n" ; $current_test++; | |
828 is_deeply( getRecordInfoTest($server, ['KOX100101', 'KOX00001']), ['ACCESSION: KOX00001 | |
829 RECORD_TITLE: GABA; LC-ESI-QTOF; MS2; MERGED; [M-H]- | |
830 DATE: 2011.08.24 (Created 2008.11.28) | |
831 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
832 LICENSE: Copyright 2006-2011 Keio | |
833 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
834 COMMENT: Instead MassBank provides the merged spectra for the public. | |
835 COMMENT: This record was generated by merging the following three MassBank records. | |
836 COMMENT: [Merging] KO004290 GABA; LC-ESI-QTOF; MS2; CE:10 V [M-H]- | |
837 COMMENT: [Merging] KO004291 GABA; LC-ESI-QTOF; MS2; CE:20 V [M-H]- | |
838 COMMENT: [Merging] KO004292 GABA; LC-ESI-QTOF; MS2; CE:30 V [M-H]- | |
839 CH$NAME: GABA | |
840 CH$NAME: 4-Aminobutanoate | |
841 CH$NAME: 4-Aminobutanoic acid | |
842 CH$NAME: 4-Aminobutylate | |
843 CH$NAME: 4-Aminobutyrate | |
844 CH$NAME: 4-Aminobutyric acid | |
845 CH$NAME: gamma-Aminobutyric acid | |
846 CH$COMPOUND_CLASS: N/A | |
847 CH$FORMULA: C4H9NO2 | |
848 CH$EXACT_MASS: 103.06333 | |
849 CH$SMILES: NCCCC(O)=O | |
850 CH$IUPAC: InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7) | |
851 CH$LINK: CAS 56-12-2 | |
852 CH$LINK: CHEBI 30566 | |
853 CH$LINK: KEGG C00334 | |
854 CH$LINK: NIKKAJI J1.375G | |
855 CH$LINK: PUBCHEM SID:3628 | |
856 AC$INSTRUMENT: Qstar, Applied Biosystems | |
857 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
858 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
859 AC$MASS_SPECTROMETRY: ION_MODE NEGATIVE | |
860 MS$FOCUSED_ION: PRECURSOR_M/Z 102 | |
861 MS$FOCUSED_ION: PRECURSOR_TYPE [M-H]- | |
862 PK$ANNOTATION: 41.9979886273 84.0449388199 102.0555035062 | |
863 PK$NUM_PEAK: N/A | |
864 PK$PEAK: m/z int. rel.int. | |
865 N/A | |
866 '], "Method \'getRecordInfo\' works with $server server and don\'t send record from \"KOX100101\" a false id into a list"); | |
867 | |
868 | |
869 ## test an undef massbank IDs list - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
870 print "\n** Test $current_test getRecord with a undef list of IDs **\n" ; $current_test++; | |
871 is_deeply( getRecordInfoTest($server, undef), [], "Method \'getRecordInfo\' works with $server server and manage undef massbank ids list"); | |
872 | |
873 ## test an empty massbank IDs list - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
874 print "\n** Test $current_test getRecord with a void list of IDs **\n" ; $current_test++ ; | |
875 is_deeply( getRecordInfoTest($server, [] ), [], "Method \'getRecordInfo\' works with $server server and manage empty massbank ids list"); | |
876 | |
877 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
878 print "\n** Test $current_test getRecord on $server server with only one real ID **\n" ; $current_test++; | |
879 is_deeply( getRecordInfoTest($server, ['KOX00001']), | |
880 ['ACCESSION: KOX00001 | |
881 RECORD_TITLE: GABA; LC-ESI-QTOF; MS2; MERGED; [M-H]- | |
882 DATE: 2011.08.24 (Created 2008.11.28) | |
883 AUTHORS: Institute for Advanced Biosciences, Keio Univ. | |
884 LICENSE: Copyright 2006-2011 Keio | |
885 COMMENT: Peak data in the following records are not open to the public as requested by their authors. | |
886 COMMENT: Instead MassBank provides the merged spectra for the public. | |
887 COMMENT: This record was generated by merging the following three MassBank records. | |
888 COMMENT: [Merging] KO004290 GABA; LC-ESI-QTOF; MS2; CE:10 V [M-H]- | |
889 COMMENT: [Merging] KO004291 GABA; LC-ESI-QTOF; MS2; CE:20 V [M-H]- | |
890 COMMENT: [Merging] KO004292 GABA; LC-ESI-QTOF; MS2; CE:30 V [M-H]- | |
891 CH$NAME: GABA | |
892 CH$NAME: 4-Aminobutanoate | |
893 CH$NAME: 4-Aminobutanoic acid | |
894 CH$NAME: 4-Aminobutylate | |
895 CH$NAME: 4-Aminobutyrate | |
896 CH$NAME: 4-Aminobutyric acid | |
897 CH$NAME: gamma-Aminobutyric acid | |
898 CH$COMPOUND_CLASS: N/A | |
899 CH$FORMULA: C4H9NO2 | |
900 CH$EXACT_MASS: 103.06333 | |
901 CH$SMILES: NCCCC(O)=O | |
902 CH$IUPAC: InChI=1S/C4H9NO2/c5-3-1-2-4(6)7/h1-3,5H2,(H,6,7) | |
903 CH$LINK: CAS 56-12-2 | |
904 CH$LINK: CHEBI 30566 | |
905 CH$LINK: KEGG C00334 | |
906 CH$LINK: NIKKAJI J1.375G | |
907 CH$LINK: PUBCHEM SID:3628 | |
908 AC$INSTRUMENT: Qstar, Applied Biosystems | |
909 AC$INSTRUMENT_TYPE: LC-ESI-QTOF | |
910 AC$MASS_SPECTROMETRY: MS_TYPE MS2 | |
911 AC$MASS_SPECTROMETRY: ION_MODE NEGATIVE | |
912 MS$FOCUSED_ION: PRECURSOR_M/Z 102 | |
913 MS$FOCUSED_ION: PRECURSOR_TYPE [M-H]- | |
914 PK$ANNOTATION: 41.9979886273 84.0449388199 102.0555035062 | |
915 PK$NUM_PEAK: N/A | |
916 PK$PEAK: m/z int. rel.int. | |
917 N/A | |
918 '], | |
919 "Method \'getRecordInfo\' works with $server server and return one record from \"KOX00001\" id"); | |
920 | |
921 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
922 | |
923 | |
924 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
925 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
926 # Structure of res : %ret = {'res' => [], 'num_res' => int, 'pcgroup_id'=> int } | |
927 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and real search parameters **\n" ; $current_test++; | |
928 is_deeply( searchSpectrumTest( | |
929 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
930 ['300', '300', '300', '300', '300', '300', '300'], | |
931 'Positive', # mode | |
932 ['all'], # instrument | |
933 '2', # max return / only 2 for test | |
934 'unit', # unit (unit or ppm) | |
935 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
936 50 # cutoff | |
937 ), | |
938 { 'num_res' => 2, 'pcgroup_id' => 1, 'res' => | |
939 [ | |
940 { | |
941 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 60 V', | |
942 'exactMass' => '334.02758', | |
943 'score' => '0.428034082411', | |
944 'id' => 'WA001260', | |
945 'formula' => 'C16H12Cl2N2O2' | |
946 }, | |
947 { | |
948 'formula' => 'C16H12Cl2N2O2', | |
949 'exactMass' => '334.02758', | |
950 'score' => '0.385859601865', | |
951 'id' => 'WA001261', | |
952 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 45 V' | |
953 } | |
954 ] | |
955 }, | |
956 "Method \'searchSpectrum\' works with $server server and return a list of entries from given mzs list"); | |
957 | |
958 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
959 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
960 # Structure of res : %ret = {'res' => [], 'num_res' => int, 'pcgroup_id'=> int } | |
961 print "\n** Test $current_test searchSpectrum with the Atrazine fingerprint and real search parameters **\n" ; $current_test++; | |
962 is_deeply( searchSpectrumTest( | |
963 ['68.0245', '96.056', '104.0014', '132.0328', '138.1031', '146.0233', '174.0547', '180.125', '188.0703'], | |
964 ['300', '300', '300', '300', '300', '300', '300'], | |
965 'Positive', # mode | |
966 ['all'], # instrument | |
967 '2', # max return / only 2 for test | |
968 'unit', # unit (unit or ppm) | |
969 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
970 50 # cutoff | |
971 ), | |
972 { 'num_res' => 2, 'pcgroup_id' => 1, 'res' => | |
973 [ | |
974 { | |
975 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 60 V', | |
976 'exactMass' => '334.02758', | |
977 'score' => '0.428034082411', | |
978 'id' => 'WA001260', | |
979 'formula' => 'C16H12Cl2N2O2' | |
980 }, | |
981 { | |
982 'formula' => 'C16H12Cl2N2O2', | |
983 'exactMass' => '334.02758', | |
984 'score' => '0.385859601865', | |
985 'id' => 'WA001261', | |
986 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 45 V' | |
987 } | |
988 ] | |
989 }, | |
990 "Method \'searchSpectrum\' works with $server server and return the Atrazine record from given mzs list"); | |
991 | |
992 | |
993 | |
994 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
995 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
996 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and real search parameters **\n" ; $current_test++; | |
997 is_deeply( searchSpectrumTest( | |
998 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
999 ['5', '5', '5', '5', '5', '5', '5'], | |
1000 'Positive', # mode | |
1001 ['all'], # instrument | |
1002 '2', # max return / only 2 for test | |
1003 'unit', # unit (unit or ppm) | |
1004 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
1005 50 # cutoff | |
1006 ), | |
1007 { 'num_res' => 2, 'pcgroup_id' => 1, 'res' => | |
1008 [ | |
1009 { | |
1010 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 60 V', | |
1011 'exactMass' => '334.02758', | |
1012 'score' => '0.428034082411', | |
1013 'id' => 'WA001260', | |
1014 'formula' => 'C16H12Cl2N2O2' | |
1015 }, | |
1016 { | |
1017 'formula' => 'C16H12Cl2N2O2', | |
1018 'exactMass' => '334.02758', | |
1019 'score' => '0.385859601865', | |
1020 'id' => 'WA001261', | |
1021 'title' => 'Lormetazepam; LC-ESI-Q; MS; POS; 45 V' | |
1022 } | |
1023 ] | |
1024 }, | |
1025 "Method \'searchSpectrum\' works with $server server and return a list of entries from given mzs list with no intensity (very low in true)"); | |
1026 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1027 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
1028 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and real search parameters - /!\\ Bug - Real intensity **\n" ; $current_test++; | |
1029 is_deeply( searchSpectrumTest( | |
1030 ['121.5145853','121.6260795','126.186473','126.2979602','126.4094198','184.0731041'], | |
1031 ['614328.101','298110.8522','1372105.065','799423.8448','99064.65118','2342541.316'], | |
1032 'Positive', # mode | |
1033 ['all'], # instrument | |
1034 '2', # max return / only 2 for test | |
1035 'unit', # unit (unit or ppm) | |
1036 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
1037 50 # cutoff | |
1038 ), | |
1039 { 'num_res' => 1, 'pcgroup_id' => 1, 'res' => | |
1040 [ | |
1041 { | |
1042 'formula' => 'C12H13NO2', | |
1043 'id' => 'KO003209', | |
1044 'title' => '3-Indolebutyric acid; LC-ESI-QQ; MS2; CE:30 V; [M+H]+', | |
1045 'score' => '0.239887404489', | |
1046 'exactMass' => '203.09463' | |
1047 } | |
1048 ] | |
1049 }, | |
1050 "Method \'searchSpectrum\' works with $server server and return a list of entries from given mzs list /!\\ Bug - Real intensity"); | |
1051 | |
1052 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1053 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
1054 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and real search parameters - /!\\ Bug - Real relative intensity **\n" ; $current_test++; | |
1055 is_deeply( searchSpectrumTest( | |
1056 ['121.51459','121.62608','126.18647','126.29796','126.40942','184.0731','385.23','502.29222','503.29564','548.33424','550.32453','551.32481','566.28931','566.79058','568.339'], | |
1057 ['2','1','7','4','1','5','0','18','5','4','1','1','0','0','999'], | |
1058 'Positive', # mode | |
1059 ['all'], # instrument | |
1060 '2', # max return / only 2 for test | |
1061 'unit', # unit (unit or ppm) | |
1062 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
1063 50 # cutoff | |
1064 ), | |
1065 { 'num_res' => 2, 'pcgroup_id' => 1, 'res' => | |
1066 [ | |
1067 { | |
1068 'id' => 'CA000162', | |
1069 'exactMass' => '568.42803', | |
1070 'title' => 'beta,beta-Carotene-2,2\'-diol; FAB-EBEB; MS2; m/z: 568.43; [M]*+', | |
1071 'formula' => 'C40H56O2', | |
1072 'score' => '0.904567659364' | |
1073 }, | |
1074 { | |
1075 'exactMass' => '568.42803', | |
1076 'id' => 'CA000153', | |
1077 'score' => '0.620521335460', | |
1078 'formula' => 'C40H56O2', | |
1079 'title' => 'Isozeaxanthin; FAB-EBEB; MS2; m/z: 568.43; [M]*+' | |
1080 } | |
1081 ] | |
1082 }, | |
1083 "Method \'searchSpectrum\' works with $server server and return a list of entries from given mzs list /!\\ Bug - Real relative intensity"); | |
1084 | |
1085 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1086 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
1087 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and max = 2 **\n" ; $current_test++; | |
1088 is_deeply( searchSpectrumNBTest( | |
1089 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
1090 ['300', '300', '300', '300', '300', '300', '300'], | |
1091 'Positive', # mode | |
1092 ['all'], # instrument | |
1093 '2', # max return / only 2 for test | |
1094 'unit', # unit (unit or ppm) | |
1095 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
1096 50 # cutoff | |
1097 ), | |
1098 2, | |
1099 'Method \'searchSpectrum\' works with $server server and return the right number of entries from given mzs list and parameters (max)'); | |
1100 | |
1101 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1102 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
1103 print "\n** Test $current_test searchSpectrum with a list of mzs, but no intensity (in true very low) and max = 2 **\n" ; $current_test++; | |
1104 is_deeply( searchSpectrumNBTest( | |
1105 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
1106 [10, 10, 10, 10, 10, 10, 10 ], | |
1107 'Positive', # mode | |
1108 ['all'], # instrument | |
1109 '2', # max return / only 2 for test | |
1110 'unit', # unit (unit or ppm) | |
1111 0.3, # tol with unit = unit / can be also 50 with unit = ppm | |
1112 50 # cutoff | |
1113 ), | |
1114 2, | |
1115 'Method \'searchSpectrum\' works with $server server and return the right number of entries from given mzs list and no intensity'); | |
1116 | |
1117 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1118 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff | |
1119 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and no optionnal parameter like instrument, unit, tolerance and cutoff **\n" ; $current_test ++; | |
1120 is_deeply( searchSpectrumNBTest( | |
1121 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
1122 ['300', '300', '300', '300', '300', '300', '300'], | |
1123 'Positive', # mode | |
1124 undef, # instrument | |
1125 '2', # max return / only 2 for test | |
1126 undef, # unit (unit or ppm) | |
1127 undef, # tol with unit = unit / can be also 50 with unit = ppm | |
1128 undef # cutoff | |
1129 ), | |
1130 2, | |
1131 'Method \'searchSpectrum\' works with $server server and return the right number of entries from def parameters (instrument, unit, tolerance, cutoff )'); | |
1132 | |
1133 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1134 # ARGVTS : $mzs, $intensities, $ion, $instruments, $max, $unit, $tol, $cutoff, $max | |
1135 print "\n** Test $current_test searchSpectrum with a list of mzs, intensities and no conf parameters for instrument, unit, tolerance and cutoff (value by default) **\n" ; $current_test++; | |
1136 is_deeply( searchSpectrumNBTest( | |
1137 ['273.096', '289.086', '290.118', '291.096', '292.113', '579.169', '580.179'], | |
1138 ['300', '300', '300', '300', '300', '300', '300'], | |
1139 'Positive', # mode | |
1140 undef, # instrument - ['all'] by default | |
1141 undef, # max return - 0 by default | |
1142 undef, # unit - unit by default | |
1143 undef, # tol - 0.3 (by default) with unit = unit / can be also 50 (by default) with unit = ppm | |
1144 undef # cutoff - 5 by default | |
1145 ), | |
1146 388, | |
1147 'Method \'searchSpectrum\' works with $server server and return the right number of entries (363) with undef parameters (instrument, unit, tolerance, cutoff, max )'); | |
1148 | |
1149 ## - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | |
1150 # ARGVTS : $ids | |
1151 print "\n** Test $current_test getPeak with a list ids **\n" ; $current_test++; | |
1152 is_deeply( getPeakTest( ['PR020003', 'FU000001']), | |
1153 [ | |
1154 { | |
1155 'numPeaks' => '9', | |
1156 'mzs' => ['207.0897','210.0499','224.5345','225.2768','226.0377','226.9938','227.9228','243.1025','410.0056'], | |
1157 'intensities' => ['8.488e2','9.442e2','1.093e3','5.294e4','2.896e4','7.015e3','7.870e2','4.024e3','5.620e2'], | |
1158 'id' => 'PR020003' | |
1159 }, | |
1160 { | |
1161 'id' => 'FU000001', | |
1162 'intensities' => ['3.277e5', '3.036e4', '5.812e4', '2.982e5', '5.196e4','4.564e5', '8.939e5','5.537e4'], | |
1163 'mzs' => ['370.8', '371.4', '532.0', '532.6', '533.3', '694.1', '694.8','695.4'], | |
1164 'numPeaks' => '8' | |
1165 } | |
1166 ], | |
1167 'Method \'getPeak\' works with $server server and return the peak lists from given ids list'); | |
1168 | |
1169 | |
1170 | |
1171 | |
1172 print "\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\n" ; | |
1173 | |
1174 } | |
1175 else { | |
1176 croak "Can\'t launch any test : no sequence clearly defined !!!!\n" ; | |
1177 } | |
1178 |