3 #include <boost/test/unit_test.hpp> 13 BOOST_AUTO_TEST_SUITE(RedundancyCom95Test)
15 BOOST_AUTO_TEST_CASE( universal_code_1 )
21 for(
unsigned i = 0 ; i < 4 ; ++i )
23 for(
unsigned j = 0 ; j < 4 ; ++j )
25 for(
unsigned k = 0 ; k < 4 ; ++k )
29 Sequence::dna_alphabet[k] } );
42 BOOST_REQUIRE( ncodons == 64 );
45 BOOST_AUTO_TEST_CASE( AAA )
47 std::string codon(
"AAA");
49 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
50 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
51 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
52 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
53 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
54 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
55 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
58 BOOST_AUTO_TEST_CASE( AAC )
60 std::string codon(
"AAC");
62 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
63 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
64 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
65 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
66 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
67 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
68 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
71 BOOST_AUTO_TEST_CASE( AAT )
73 std::string codon(
"AAT");
75 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
76 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
77 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
78 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
79 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
80 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
81 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
84 BOOST_AUTO_TEST_CASE( AAG )
86 std::string codon(
"AAG");
88 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
89 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
90 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
91 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
92 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
93 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
94 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
97 BOOST_AUTO_TEST_CASE( ACA )
99 std::string codon(
"ACA");
101 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
102 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
103 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
104 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
105 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 1. );
106 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 0. );
107 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
110 BOOST_AUTO_TEST_CASE( ACC )
112 std::string codon(
"ACC");
114 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
115 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
116 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
117 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
118 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 1. );
119 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 0. );
120 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
123 BOOST_AUTO_TEST_CASE( ACG )
125 std::string codon(
"ACG");
127 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
128 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
129 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
130 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
131 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 1. );
132 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 0. );
133 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
136 BOOST_AUTO_TEST_CASE( ACT )
138 std::string codon(
"ACT");
140 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
141 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
142 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
143 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
144 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 1. );
145 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 0. );
146 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
149 BOOST_AUTO_TEST_CASE( AGA )
151 std::string codon(
"AGA");
153 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 0. );
154 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
155 BOOST_CHECK_EQUAL(rc.
First2V(codon), 1. );
156 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
157 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
158 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
159 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
162 BOOST_AUTO_TEST_CASE( AGC )
164 std::string codon(
"AGC");
166 BOOST_CHECK_EQUAL(rc.
FirstNon(codon), 1. );
167 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
168 BOOST_CHECK_EQUAL(rc.
First2V(codon), 0. );
169 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
170 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
171 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
172 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
175 BOOST_AUTO_TEST_CASE( AGG )
177 std::string codon(
"AGG");
179 BOOST_CHECK_CLOSE(rc.
FirstNon(codon), 2./3., 1e-6 );
180 BOOST_CHECK_EQUAL(rc.
First2S(codon), 0. );
181 BOOST_CHECK_CLOSE(rc.
First2V(codon), 1./3., 1e-6 );
182 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon), 0. );
183 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon), 0. );
184 BOOST_CHECK_EQUAL(rc.
Third2S(codon), 1. );
185 BOOST_CHECK_EQUAL(rc.
Third2V(codon), 0. );
189 BOOST_AUTO_TEST_CASE( AGT )
191 std::string codon(
"AGT");
193 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
194 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
195 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
196 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
197 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
198 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
199 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
202 BOOST_AUTO_TEST_CASE( ATA )
204 std::string codon(
"ATA");
206 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
207 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
208 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
209 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
210 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
211 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
212 BOOST_CHECK_EQUAL(rc.
Third2V(codon),1.);
215 BOOST_AUTO_TEST_CASE( ATC )
217 std::string codon(
"ATC");
219 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
220 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
221 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
222 BOOST_CHECK_CLOSE(rc.
ThirdNon(codon),1./3.,1e-6);
223 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
224 BOOST_CHECK_CLOSE(rc.
Third2S(codon),1./3.,1e-6);
225 BOOST_CHECK_CLOSE(rc.
Third2V(codon),1./3.,1e-6);
228 BOOST_AUTO_TEST_CASE( ATG )
230 std::string codon(
"ATG");
232 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
233 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
234 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
235 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),1.);
236 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
237 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
238 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
241 BOOST_AUTO_TEST_CASE( ATT )
243 std::string codon(
"ATT");
245 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
246 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
247 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
248 BOOST_CHECK_CLOSE(rc.
ThirdNon(codon),1./3.,1e-6);
249 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
250 BOOST_CHECK_CLOSE(rc.
Third2S(codon),1./3.,1e-6);
251 BOOST_CHECK_CLOSE(rc.
Third2V(codon),1./3.,1e-6);
254 BOOST_AUTO_TEST_CASE( CAA )
256 std::string codon(
"CAA");
258 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
259 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
260 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
261 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
262 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
263 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
264 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
267 BOOST_AUTO_TEST_CASE( CAC )
269 std::string codon(
"CAC");
271 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
272 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
273 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
274 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
275 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
276 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
277 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
280 BOOST_AUTO_TEST_CASE( CAG )
282 std::string codon(
"CAG");
284 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
285 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
286 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
287 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
288 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
289 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
290 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
293 BOOST_AUTO_TEST_CASE( CAT )
295 std::string codon(
"CAT");
297 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
298 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
299 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
300 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
301 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
302 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
303 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
306 BOOST_AUTO_TEST_CASE( CCA )
308 std::string codon(
"CCA");
310 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
311 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
312 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
313 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
314 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
315 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
316 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
319 BOOST_AUTO_TEST_CASE( CCC )
321 std::string codon(
"CCC");
323 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
324 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
325 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
326 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
327 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
328 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
329 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
332 BOOST_AUTO_TEST_CASE( CCG )
334 std::string codon(
"CCG");
336 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
337 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
338 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
339 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
340 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
341 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
342 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
345 BOOST_AUTO_TEST_CASE( CCT )
347 std::string codon(
"CCT");
349 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
350 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
351 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
352 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
353 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
354 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
355 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
358 BOOST_AUTO_TEST_CASE( CGA )
360 std::string codon(
"CGA");
362 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.5);
363 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
364 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.5);
365 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
366 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
367 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
368 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
371 BOOST_AUTO_TEST_CASE( CGC )
373 std::string codon(
"CGC");
375 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
376 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
377 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
378 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
379 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
380 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
381 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
384 BOOST_AUTO_TEST_CASE( CGG )
386 std::string codon(
"CGG");
388 BOOST_CHECK_CLOSE(rc.
FirstNon(codon),2./3.,1e-6);
389 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
390 BOOST_CHECK_CLOSE(rc.
First2V(codon),1./3.,1e-6);
391 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
392 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
393 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
394 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
397 BOOST_AUTO_TEST_CASE( CGT )
399 std::string codon(
"CGT");
401 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
402 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
403 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
404 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
405 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
406 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
407 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
410 BOOST_AUTO_TEST_CASE( CTA )
412 std::string codon(
"CTA");
414 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
415 BOOST_CHECK_EQUAL(rc.
First2S(codon),1.);
416 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
417 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
418 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
419 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
420 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
423 BOOST_AUTO_TEST_CASE( CTC )
425 std::string codon(
"CTC");
427 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
428 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
429 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
430 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
431 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
432 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
433 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
436 BOOST_AUTO_TEST_CASE( CTG )
438 std::string codon(
"CTG");
440 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
441 BOOST_CHECK_EQUAL(rc.
First2S(codon),1.);
442 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
443 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
444 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
445 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
446 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
449 BOOST_AUTO_TEST_CASE( CTT )
451 std::string codon(
"CTT");
453 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
454 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
455 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
456 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
457 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
458 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
459 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
462 BOOST_AUTO_TEST_CASE( GAA )
464 std::string codon(
"GAA");
466 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
467 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
468 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
469 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
470 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
471 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
472 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
475 BOOST_AUTO_TEST_CASE( GAC )
477 std::string codon(
"GAC");
479 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
480 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
481 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
482 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
483 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
484 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
485 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
488 BOOST_AUTO_TEST_CASE( GAG )
490 std::string codon(
"GAG");
492 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
493 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
494 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
495 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
496 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
497 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
498 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
501 BOOST_AUTO_TEST_CASE( GAT )
503 std::string codon(
"GAT");
505 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
506 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
507 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
508 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
509 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
510 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
511 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
514 BOOST_AUTO_TEST_CASE( GCA )
516 std::string codon(
"GCA");
518 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
519 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
520 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
521 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
522 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
523 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
524 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
527 BOOST_AUTO_TEST_CASE( GCC )
529 std::string codon(
"GCC");
531 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
532 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
533 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
534 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
535 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
536 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
537 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
540 BOOST_AUTO_TEST_CASE( GCG )
542 std::string codon(
"GCG");
544 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
545 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
546 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
547 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
548 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
549 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
550 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
553 BOOST_AUTO_TEST_CASE( GCT )
555 std::string codon(
"GCT");
557 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
558 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
559 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
560 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
561 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
562 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
563 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
566 BOOST_AUTO_TEST_CASE( GGA )
568 std::string codon(
"GGA");
570 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
571 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
572 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
573 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
574 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
575 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
576 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
579 BOOST_AUTO_TEST_CASE( GGC )
581 std::string codon(
"GGC");
583 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
584 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
585 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
586 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
587 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
588 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
589 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
592 BOOST_AUTO_TEST_CASE( GGG )
594 std::string codon(
"GGG");
596 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
597 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
598 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
599 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
600 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
601 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
602 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
605 BOOST_AUTO_TEST_CASE( GGT )
607 std::string codon(
"GGT");
609 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
610 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
611 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
612 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
613 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
614 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
615 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
618 BOOST_AUTO_TEST_CASE( GTA )
620 std::string codon(
"GTA");
622 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
623 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
624 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
625 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
626 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
627 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
628 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
631 BOOST_AUTO_TEST_CASE( GTC )
633 std::string codon(
"GTC");
635 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
636 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
637 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
638 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
639 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
640 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
641 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
644 BOOST_AUTO_TEST_CASE( GTG )
646 std::string codon(
"GTG");
648 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
649 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
650 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
651 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
652 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
653 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
654 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
657 BOOST_AUTO_TEST_CASE( GTT )
659 std::string codon(
"GTT");
661 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
662 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
663 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
664 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
665 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
666 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
667 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
670 BOOST_AUTO_TEST_CASE( TAA )
672 std::string codon(
"TAA");
674 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
675 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
676 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
677 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
678 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
679 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
680 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
683 BOOST_AUTO_TEST_CASE( TAC )
685 std::string codon(
"TAC");
687 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
688 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
689 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
690 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
691 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
692 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
693 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
696 BOOST_AUTO_TEST_CASE( TAG )
698 std::string codon(
"TAG");
700 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
701 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
702 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
703 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
704 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
705 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
706 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
709 BOOST_AUTO_TEST_CASE( TAT )
711 std::string codon(
"TAT");
713 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
714 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
715 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
716 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
717 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
718 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
719 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
722 BOOST_AUTO_TEST_CASE( TCA )
724 std::string codon(
"TCA");
726 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
727 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
728 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
729 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
730 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
731 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
732 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
735 BOOST_AUTO_TEST_CASE( TCC )
737 std::string codon(
"TCC");
739 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
740 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
741 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
742 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
743 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
744 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
745 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
748 BOOST_AUTO_TEST_CASE( TCG )
750 std::string codon(
"TCG");
752 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
753 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
754 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
755 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
756 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
757 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
758 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
761 BOOST_AUTO_TEST_CASE( TCT )
763 std::string codon(
"TCT");
765 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
766 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
767 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
768 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
769 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),1.);
770 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
771 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
774 BOOST_AUTO_TEST_CASE( TGA )
776 std::string codon(
"TGA");
778 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
779 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
780 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
781 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
782 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
783 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
784 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
787 BOOST_AUTO_TEST_CASE( TGC )
789 std::string codon(
"TGC");
791 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
792 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
793 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
794 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
795 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
796 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
797 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
800 BOOST_AUTO_TEST_CASE( TGG )
802 std::string codon(
"TGG");
804 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
805 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
806 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
807 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),1.);
808 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
809 BOOST_CHECK_EQUAL(rc.
Third2S(codon),0.);
810 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
813 BOOST_AUTO_TEST_CASE( TGT )
815 std::string codon(
"TGT");
817 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
818 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
819 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
820 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
821 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
822 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
823 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
826 BOOST_AUTO_TEST_CASE( TTA )
828 std::string codon(
"TTA");
830 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
831 BOOST_CHECK_EQUAL(rc.
First2S(codon),1.);
832 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
833 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
834 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
835 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
836 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
839 BOOST_AUTO_TEST_CASE( TTC )
841 std::string codon(
"TTC");
843 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
844 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
845 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
846 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
847 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
848 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
849 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
852 BOOST_AUTO_TEST_CASE( TTG )
854 std::string codon(
"TTG");
856 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),0.);
857 BOOST_CHECK_EQUAL(rc.
First2S(codon),1.);
858 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
859 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
860 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
861 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
862 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
865 BOOST_AUTO_TEST_CASE( TTT )
867 std::string codon(
"TTT");
869 BOOST_CHECK_EQUAL(rc.
FirstNon(codon),1.);
870 BOOST_CHECK_EQUAL(rc.
First2S(codon),0.);
871 BOOST_CHECK_EQUAL(rc.
First2V(codon),0.);
872 BOOST_CHECK_EQUAL(rc.
ThirdNon(codon),0.);
873 BOOST_CHECK_EQUAL(rc.
ThirdFour(codon),0.);
874 BOOST_CHECK_EQUAL(rc.
Third2S(codon),1.);
875 BOOST_CHECK_EQUAL(rc.
Third2V(codon),0.);
877 BOOST_AUTO_TEST_SUITE_END()
double L2S_vals(const std::string &codon) const
const alphabet_t dna_alphabet
Alphabet for DNA sequences Valid DNA characters. Upper-case only. Only - is accepted as gap character...
double First2V(const std::string &codon) const
double FirstNon(const std::string &codon) const
double ThirdFour(const std::string &codon) const
class Sequence::RedundancyCom95
double L2V_vals(const std::string &codon) const
double ThirdNon(const std::string &codon) const
double Third2V(const std::string &codon) const
double L4_vals(const std::string &codon) const
double First2S(const std::string &codon) const
Calculate redundancy of a genetic code using Comeron's counting scheme.
double Third2S(const std::string &codon) const
double L0_vals(const std::string &codon) const