+ assertFalse(Comparison.isNucleotideSequence("gatactawgataca", false));
+ // including nucleotide ambiguity
+ assertTrue(
+ Comparison.isNucleotideSequence("gatacaWgataca", true, true));
+ assertFalse(
+ Comparison.isNucleotideSequence("gatacaEgataca", true, true));
+
+ // not quite all nucleotides and ambiguity codes
+ Sequence seq = new Sequence("Ambiguity DNA codes", "gatacagatacabve");
+ assertFalse(Comparison.isNucleotide(seq));
+ // all nucleotide and nucleotide ambiguity codes
+ seq = new Sequence("Ambiguity DNA codes", "gatacagatacabvt");
+ assertFalse(Comparison.isNucleotide(seq));
+ seq = new Sequence("Ambiguity DNA codes", "agatacabb");
+ assertFalse(Comparison.isNucleotide(seq));
+ // 55% nucleotide with only Xs or Ns
+ assertTrue(Comparison
+ .isNucleotide(new Sequence("dnaWithXs", "gatacaXXXX")));
+ assertTrue(Comparison
+ .isNucleotide(new Sequence("dnaWithXs", "gatacaNNNN")));
+ assertFalse(Comparison
+ .isNucleotide(new Sequence("dnaWithXs", "gatacXXXXX")));
+ assertFalse(Comparison
+ .isNucleotide(new Sequence("dnaWithXs", "gatacNNNNN")));