X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fdatamodel%2Ffeatures%2FFeatureStoreJSTest.java;h=ac80298eb22928b8b228cceb876613f9303db95a;hb=b74cdec4b07000bee431a7cca86a948f44d3ffbe;hp=2b0c9ea3bfd73179a88d52b238a7d7f57d2b878d;hpb=6f2c3b8cb30d8ccf7ff9ab949a7b244f0c415bc1;p=jalview.git diff --git a/test/jalview/datamodel/features/FeatureStoreJSTest.java b/test/jalview/datamodel/features/FeatureStoreJSTest.java index 2b0c9ea..ac80298 100644 --- a/test/jalview/datamodel/features/FeatureStoreJSTest.java +++ b/test/jalview/datamodel/features/FeatureStoreJSTest.java @@ -16,6 +16,8 @@ import org.testng.annotations.Test; public class FeatureStoreJSTest { + private int intervalStoreOption = FeatureStore.intervalStoreJSOption; + @Test(groups = "Functional") public void testFindFeatures_nonNested() { @@ -38,10 +40,9 @@ public class FeatureStoreJSTest overlaps = fs.findOverlappingFeatures(12, 16); assertEquals(overlaps.size(), 3); - // BH note, this is reversed from IS-NCList 2 1 0, not 0 1 2 - assertEquals(overlaps.get(2).getEnd(), 20); + assertEquals(overlaps.get(2).getEnd(), 25); assertEquals(overlaps.get(1).getEnd(), 20); - assertEquals(overlaps.get(0).getEnd(), 25); + assertEquals(overlaps.get(0).getEnd(), 20); overlaps = fs.findOverlappingFeatures(33, 33); assertEquals(overlaps.size(), 1); @@ -50,8 +51,7 @@ public class FeatureStoreJSTest private FeatureStoreI newFeatureStore() { - return new FeatureStoreJS(); - // return new FeatureStoreImpl(); + return new FeatureStoreJS(intervalStoreOption); } @Test(groups = "Functional") @@ -93,9 +93,41 @@ public class FeatureStoreJSTest assertTrue(overlaps.contains(sf4)); } + private void testFind() + { + FeatureStoreI fs1 = newFeatureStore(); + + SequenceFeature sf = addFeature(fs1, 1, 3000); + + for (int i = 1; i < 1000; i++) + + { + + addFeature(fs1, 1 + i, 1000 + i); + + } + + // 1.......3000 + // 2....1001 + // 3....1002 + // 4....1003 + // ... + // 1000..1999 + + List overlaps1 = fs1.findOverlappingFeatures(2000, + 2001); + + assertEquals(overlaps1.size(), 1); + + assertTrue(overlaps1.contains(sf)); + + } + @Test(groups = "Functional") public void testFindFeatures_mixed() { + testFind(); + FeatureStoreI fs = newFeatureStore(); SequenceFeature sf1 = addFeature(fs, 10, 50); SequenceFeature sf2 = addFeature(fs, 1, 15);