+
+ HMMProbabilityDistributionAnalyser analyser = new HMMProbabilityDistributionAnalyser();
+
+ @Test
+ public void testMoveToFile() throws IOException
+ {
+
+ BufferedReader br = new BufferedReader(new FileReader(
+ "test/jalview/util/test_Fams_for_probability_analysis"));
+ analyser.moveLocationBy(1, br);
+
+ String line = br.readLine();
+ assertEquals(line, "# STOCKHOLM 1.0");
+ line = br.readLine();
+ assertEquals(line, "seq1 ATW");
+ line = br.readLine();
+ assertEquals(line, "seq2 ATI");
+
+ }
+
+ @Test
+ public void testCountValidResidues()
+ {
+ analyser.sequences = new Vector<>();
+ analyser.hmm = new HiddenMarkovModel();
+ analyser.hmm.setProperty("LENG", "8");
+
+ List<HMMNode> nodes = new ArrayList<>();
+ nodes.add(new HMMNode());
+ for (int i = 1; i < 9; i++)
+ {
+ HMMNode node = new HMMNode();
+ node.setResidueNumber(i - 1);
+ nodes.add(node);
+
+ }
+ PA.setValue(analyser.hmm, "nodes", nodes);
+
+ SequenceI[] sequence = new Sequence[] {
+ new Sequence("seq1", "ATGWWSCF"), new Sequence("seq2", "GGMKI"),
+ new Sequence("seq3", "--.ATccGc") };
+ analyser.sequences.add(sequence[0]);
+ analyser.sequences.add(sequence[1]);
+ analyser.sequences.add(sequence[2]);
+
+ int count = analyser.countValidResidues();
+ assertEquals(count, 16);
+ }
+
+ @Test(priority = 0)
+ public void testReadBinned() throws IOException
+ {
+ analyser.readBinned("test/jalview/util/");
+ Map<String, Double> map = analyser.binned;
+ assertEquals(map.get("1.8"), 4.53);
+ assertEquals(map.get("3.4"), 2.65);
+ assertEquals(map.get("6.4"), 10.8);
+ assertEquals(map.get("0"), 5.4);
+ }
+