public static Read read() {
    return new Read(null, "", new Scan());
  }
@Test
  public void testReadingWithSplits() throws Exception {
    final String table = tmpTable.getName();
    final int numRows = 1500;
    final int numRegions = 4;
    final long bytesPerRow = 100L;
    createAndWriteData(table, numRows);

    HBaseIO.Read read = HBaseIO.read().withConfiguration(conf).withTableId(table);
    HBaseSource source = new HBaseSource(read, null /* estimatedSizeBytes */);
    List<? extends BoundedSource<Result>> splits =
        source.split(numRows * bytesPerRow / numRegions, null /* options */);

    // Test num splits and split equality.
    assertThat(splits, hasSize(4));
    assertSourcesEqualReferenceSource(source, splits, null /* options */);
  }