package jalview.io.vcf;
import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertSame;
import static org.testng.Assert.assertTrue;
import jalview.bin.Cache;
// gene features include Consequence for all transcripts
Map map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
+ assertEquals(map.get("PolyPhen"), "Bad");
sf = geneFeatures.get(1);
assertEquals(sf.getBegin(), 5);
assertEquals(sf.getValue("alleles"), "C,T");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
+ assertEquals(map.get("PolyPhen"), "Bad++"); // %3B%3B decoded
sf = geneFeatures.get(2);
assertEquals(sf.getBegin(), 9);
assertEquals(sf.getEnd(), 15);
assertEquals(sf.getDescription(), "T,C");
}
+
+ @Test(groups = "Functional")
+ public void testDecodeSpecialCharacters() throws IOException
+ {
+ String encoded = "hello world";
+ String decoded = VCFLoader.decodeSpecialCharacters(encoded);
+ assertSame(encoded, decoded); // no change needed
+
+ encoded = "ab%3Acd%3Bef%3Dgh%25ij%2Ckl%3A";
+ decoded = VCFLoader.decodeSpecialCharacters(encoded);
+ assertEquals(decoded, "ab:cd;ef=gh%ij,kl:");
+ }
}
\ No newline at end of file