### Question:
BinaryCellValuesObservable { public static Observable<?> readValues(final InputStream is) { return Observable.create(createOnSubscribe(null, is)); }  static Observable<?> readValues(final InputStream is); static Observable<?> readValues(final File file);  }### Answer:
@Test public void testSavingCellValuesToBinaryFileAndReadingBackAgain() { Options options = Options.builder().cellSizeDegrees(1.2).build(); CellValue cv = new CellValue(-20, 123, 0.01); String filename = Observable.just(cv) .lift(new OperatorCellValuesToBytes(options)) .lift(new OperatorWriteBytes()).toBlocking().first(); assertNotNull(filename); File file = new File(filename); assertTrue(file.exists()); System.out.println(filename); Observable<?> o = BinaryCellValuesObservable.readValues(file); List<?> list = o.toList().toBlocking().single(); assertEquals(1.2, (Double) list.get(0), 0.00001); assertTrue(list.get(1) instanceof CellValue); CellValue v = (CellValue) list.get(1); assertEquals(-20, v.getCentreLat(), PRECISION); assertEquals(123, v.getCentreLon(), PRECISION); assertEquals(0.01, v.getValue(), PRECISION); assertEquals(2, list.size()); }