@Test(dataProvider = "overlapsSingletonData") public void testOverlapsSingletonAsListIntervalList(final IntervalList fromLists, final IntervalList whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.overlaps(Collections.singletonList(fromLists), Collections.singletonList(whatLists)).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "intersectData") public void testIntersectIntervalLists(final List<IntervalList> lists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.intersection(lists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "subtractSingletonData") public void testSubtractSingletonAsListIntervalList(final IntervalList fromLists, final IntervalList whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.subtract(Collections.singletonList(fromLists), Collections.singletonList(whatLists)).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "unionData") public void testUnionIntervalLists(final List<IntervalList> lists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.union(lists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test public void testOverlapsEmptySecondList() { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.overlaps(Collections.singletonList(list1), Collections.emptyList()).iterator()), Collections.emptyList()); }
@Test(dataProvider = "mergeData") public void testMergeIntervalLists(final List<IntervalList> lists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.concatenate(lists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "invertData") public void testInvert(final IntervalList list, final IntervalList inverse) throws Exception { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.invert(list).iterator()), CollectionUtil.makeCollection(inverse.iterator())); }
@Test(dataProvider = "subtractData") public void testSubtractIntervalLists(final List<IntervalList> fromLists, final List<IntervalList> whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.subtract(fromLists, whatLists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "subtractSingletonData") public void testSubtractSingletonIntervalLists(final IntervalList fromLists, final IntervalList whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.subtract(fromLists, whatLists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "overlapsData") public void testOverlapsIntervalLists(final List<IntervalList> fromLists, final List<IntervalList> whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.overlaps(fromLists, whatLists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test(dataProvider = "overlapsSingletonData") public void testOverlapsSingletonIntervalLists(final IntervalList fromLists, final IntervalList whatLists, final IntervalList list) { Assert.assertEquals( CollectionUtil.makeCollection(IntervalList.overlaps(fromLists, whatLists).iterator()), CollectionUtil.makeCollection(list.iterator())); }
@Test public void testIntervalListFrom() throws IOException { final String testPath = TEST_DIR.resolve("IntervalListFromVCFTestComp.interval_list").toString(); final IntervalList fromFileList = IntervalList.fromFile(new File(testPath)); final IntervalList fromPathList = IntervalList.fromPath(IOUtil.getPath(testPath)); fromFileList.getHeader().getSequenceDictionary().assertSameDictionary(fromPathList.getHeader().getSequenceDictionary()); Assert.assertEquals(CollectionUtil.makeCollection(fromFileList.iterator()), CollectionUtil.makeCollection(fromPathList.iterator())); }
@Test(dataProvider = "invertData") public void testInvertSquared(final IntervalList list, @SuppressWarnings("UnusedParameters") final IntervalList ignored) throws Exception { final IntervalList inverseSquared = IntervalList.invert(IntervalList.invert(list)); final IntervalList originalClone = new IntervalList(list.getHeader()); for (final Interval interval : list) { originalClone.add(interval); } Assert.assertEquals( CollectionUtil.makeCollection(inverseSquared.iterator()), CollectionUtil.makeCollection(originalClone.uniqued().iterator())); }
@Test(dataProvider = "VCFCompData") public void testFromVCF(final Path vcf, final Path compInterval, final boolean invertVCF) { final IntervalList compList = IntervalList.fromPath(compInterval); final IntervalList list = invertVCF ? IntervalList.invert(VCFFileReader.toIntervalList(vcf)) : VCFFileReader.toIntervalList(vcf); compList.getHeader().getSequenceDictionary().assertSameDictionary(list.getHeader().getSequenceDictionary()); final Collection<Interval> intervals = CollectionUtil.makeCollection(list.iterator()); final Collection<Interval> compIntervals = CollectionUtil.makeCollection(compList.iterator()); //assert that the intervals correspond Assert.assertEquals(intervals, compIntervals); final List<String> intervalNames = new LinkedList<>(); final List<String> compIntervalNames = new LinkedList<>(); for (final Interval interval : intervals) { intervalNames.add(interval.getName()); } for (final Interval interval : compIntervals) { compIntervalNames.add(interval.getName()); } //assert that the names match Assert.assertEquals(intervalNames, compIntervalNames); }
@Test(dataProvider = "VCFCompData") public void testFromVCFWithPath(final Path vcf, final Path compInterval, final boolean invertVCF) { final IntervalList compList = IntervalList.fromPath(compInterval); final IntervalList list = invertVCF ? IntervalList.invert(VCFFileReader.toIntervalList(vcf)) : VCFFileReader.toIntervalList(vcf); compList.getHeader().getSequenceDictionary().assertSameDictionary(list.getHeader().getSequenceDictionary()); final Collection<Interval> intervals = CollectionUtil.makeCollection(list.iterator()); final Collection<Interval> compIntervals = CollectionUtil.makeCollection(compList.iterator()); //assert that the intervals correspond Assert.assertEquals(intervals, compIntervals); final List<String> intervalNames = new LinkedList<>(); final List<String> compIntervalNames = new LinkedList<>(); for (final Interval interval : intervals) { intervalNames.add(interval.getName()); } for (final Interval interval : compIntervals) { compIntervalNames.add(interval.getName()); } //assert that the names match Assert.assertEquals(intervalNames, compIntervalNames); }
tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total}); tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total}); tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total}); tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total}); tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total}); tests.add(new Object[]{list, fileHeader, CollectionUtil.makeCollection(builder.iterator()), expected, total});