@Test
 public void testGetCluster() throws IOException {
   System.out.println("Get all the genes around BRCA1");
   String[] paths = {"gene"};
   String query = "x\ty\tz\t{\"_landmark\":\"17\",\"_minBP\":41166622,\"_maxBP\":41297272}";
   OverlapPipe op = new OverlapPipe(geneFile, 0, 0);
   Pipe p = new Pipeline(new HistoryInPipe(), op, new DrillPipe(false, paths), new PrintPipe());
   p.setStarts(Arrays.asList(query));
   for (int i = 1; p.hasNext(); i++) {
     History h = (History) p.next();
     if (i == 1) {
       assertEquals("VAT1", h.get(4));
     }
     if (i == 2) {
       assertEquals("RND2", h.get(4));
     }
     if (i == 3) {
       assertEquals("BRCA1", h.get(4));
     }
     if (i == 4) {
       assertEquals("RPL21P4", h.get(4));
     }
     if (i == 5) {
       assertEquals("NBR2", h.get(4));
     }
     if (i == 6) {
       assertEquals("LOC100505873", h.get(4));
     }
     if (i == 7) {
       assertEquals("HMGN1P29", h.get(4));
     }
   }
 }
    @Override
    protected History processNextStart() throws NoSuchElementException {
      if (this.starts.hasNext()) {

        History history = this.starts.next();
        for (int i = 0; i < history.size(); i++) {
          String value = history.get(i) + mSuffix;
          history.set(i, value);
        }

        return history;
      } else {
        throw new NoSuchElementException();
      }
    }
 @Test
 public void testBRCA1DOWN() throws IOException {
   System.out.println("Get the genes down-chromosome and including BRCA1");
   String[] paths = {"gene"};
   String query = "x\ty\tz\t" + BRCA1;
   OverlapPipe op = new OverlapPipe(geneFile, 0, 19772);
   Pipe p = new Pipeline(new HistoryInPipe(), op, new DrillPipe(false, paths), new PrintPipe());
   p.setStarts(Arrays.asList(query));
   for (int i = 1; p.hasNext(); i++) {
     History h = (History) p.next();
     if (i == 1) {
       assertEquals("BRCA1", h.get(4));
     }
     if (i == 2) {
       assertEquals("RPL21P4", h.get(4)); // gene overlaps BRCA1 so it is included
     }
     if (i == 3) {
       assertEquals("NBR2", h.get(4));
     }
     if (i == 4) {
       assertEquals("LOC100505873", h.get(4));
     }
     if (i == 5) {
       assertEquals("HMGN1P29", h.get(4));
     }
   }
 }