}
@Test(groups = "Functional")
- public void testGetFeatures()
+ public void testGetPositionalFeatures()
{
FeatureStore store = new FeatureStore();
SequenceFeature sf1 = new SequenceFeature("Metal", "desc", 10, 20,
18, 45, Float.NaN, null);
store.addFeature(sf7);
- List<SequenceFeature> features = store.getFeatures();
- assertEquals(features.size(), 7);
+ List<SequenceFeature> features = store.getPositionalFeatures();
+ assertEquals(features.size(), 6);
assertTrue(features.contains(sf1));
assertTrue(features.contains(sf2));
assertTrue(features.contains(sf3));
assertTrue(features.contains(sf4));
assertTrue(features.contains(sf5));
- assertTrue(features.contains(sf6));
+ assertFalse(features.contains(sf6));
assertTrue(features.contains(sf7));
+
+ features = store.getNonPositionalFeatures();
+ assertEquals(features.size(), 1);
+ assertTrue(features.contains(sf6));
}
@Test(groups = "Functional")
{
FeatureStore store = new FeatureStore();
SequenceFeature sf1 = addFeature(store, 10, 20);
- assertTrue(store.getFeatures().contains(sf1));
+ assertTrue(store.getPositionalFeatures().contains(sf1));
/*
* simple deletion
*/
assertTrue(store.delete(sf1));
- assertTrue(store.getFeatures().isEmpty());
+ assertTrue(store.getPositionalFeatures().isEmpty());
/*
* non-positional feature deletion
*/
SequenceFeature sf2 = addFeature(store, 0, 0);
- assertTrue(store.getFeatures().contains(sf2));
+ assertFalse(store.getPositionalFeatures().contains(sf2));
+ assertTrue(store.getNonPositionalFeatures().contains(sf2));
assertTrue(store.delete(sf2));
- assertTrue(store.getFeatures().isEmpty());
+ assertTrue(store.getNonPositionalFeatures().isEmpty());
/*
* contact feature deletion
SequenceFeature sf3 = new SequenceFeature("", "Disulphide Bond", 11,
23, Float.NaN, null);
store.addFeature(sf3);
- assertEquals(store.getFeatures().size(), 1);
- assertTrue(store.getFeatures().contains(sf3));
+ assertEquals(store.getPositionalFeatures().size(), 1);
+ assertTrue(store.getPositionalFeatures().contains(sf3));
assertTrue(store.delete(sf3));
- assertTrue(store.getFeatures().isEmpty());
+ assertTrue(store.getPositionalFeatures().isEmpty());
/*
* nested feature deletion
SequenceFeature sf7 = addFeature(store, 25, 25); // sibling of sf6
SequenceFeature sf8 = addFeature(store, 24, 24); // child of sf6
SequenceFeature sf9 = addFeature(store, 23, 23); // child of sf6
- assertEquals(store.getFeatures().size(), 6);
+ assertEquals(store.getPositionalFeatures().size(), 6);
// delete a node with children - they take its place
assertTrue(store.delete(sf6)); // sf8, sf9 should become children of sf5
- assertEquals(store.getFeatures().size(), 5);
- assertFalse(store.getFeatures().contains(sf6));
+ assertEquals(store.getPositionalFeatures().size(), 5);
+ assertFalse(store.getPositionalFeatures().contains(sf6));
// delete a node with no children
assertTrue(store.delete(sf7));
- assertEquals(store.getFeatures().size(), 4);
- assertFalse(store.getFeatures().contains(sf7));
+ assertEquals(store.getPositionalFeatures().size(), 4);
+ assertFalse(store.getPositionalFeatures().contains(sf7));
// delete root of NCList
assertTrue(store.delete(sf5));
- assertEquals(store.getFeatures().size(), 3);
- assertFalse(store.getFeatures().contains(sf5));
+ assertEquals(store.getPositionalFeatures().size(), 3);
+ assertFalse(store.getPositionalFeatures().contains(sf5));
// continue the killing fields
assertTrue(store.delete(sf4));
- assertEquals(store.getFeatures().size(), 2);
- assertFalse(store.getFeatures().contains(sf4));
+ assertEquals(store.getPositionalFeatures().size(), 2);
+ assertFalse(store.getPositionalFeatures().contains(sf4));
assertTrue(store.delete(sf9));
- assertEquals(store.getFeatures().size(), 1);
- assertFalse(store.getFeatures().contains(sf9));
+ assertEquals(store.getPositionalFeatures().size(), 1);
+ assertFalse(store.getPositionalFeatures().contains(sf9));
assertTrue(store.delete(sf8));
- assertTrue(store.getFeatures().isEmpty());
+ assertTrue(store.getPositionalFeatures().isEmpty());
}
@Test(groups = "Functional")
public void testGetFeatureGroups()
{
FeatureStore fs = new FeatureStore();
- assertTrue(fs.getFeatureGroups().isEmpty());
+ assertTrue(fs.getFeatureGroups(true).isEmpty());
SequenceFeature sf1 = new SequenceFeature("Cath", "desc", 10, 20, 1f, "group1");
fs.addFeature(sf1);
- Set<String> groups = fs.getFeatureGroups();
+ Set<String> groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 1);
assertTrue(groups.contains("group1"));
*/
SequenceFeature sf2 = new SequenceFeature("Cath", "desc", 20, 30, 1f, "group1");
fs.addFeature(sf2);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 1);
assertTrue(groups.contains("group1"));
fs.delete(sf2);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 1);
assertTrue(groups.contains("group1"));
fs.delete(sf1);
- groups = fs.getFeatureGroups();
- assertTrue(fs.getFeatureGroups().isEmpty());
+ groups = fs.getFeatureGroups(true);
+ assertTrue(fs.getFeatureGroups(true).isEmpty());
SequenceFeature sf3 = new SequenceFeature("Cath", "desc", 20, 30, 1f, "group2");
fs.addFeature(sf3);
fs.addFeature(sf4);
SequenceFeature sf5 = new SequenceFeature("Cath", "desc", 20, 30, 1f, null);
fs.addFeature(sf5);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 3);
assertTrue(groups.contains("group2"));
assertTrue(groups.contains("Group2")); // case sensitive
assertTrue(groups.contains(null)); // null allowed
fs.delete(sf3);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 2);
assertFalse(groups.contains("group2"));
fs.delete(sf4);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertEquals(groups.size(), 1);
assertFalse(groups.contains("Group2"));
fs.delete(sf5);
- groups = fs.getFeatureGroups();
+ groups = fs.getFeatureGroups(true);
assertTrue(groups.isEmpty());
}
}