ParseFileController { public boolean isDataAvailable(ParseFile.State state) { return getCacheFile(state).exists(); } ParseFileController(ParseHttpClient restClient, File cachePath); File getCacheFile(ParseFile.State state); boolean isDataAvailable(ParseFile.State state); void clearCache(); Task<ParseFile.State> saveAsync(
            final ParseFile.State state,
            final byte[] data,
            String sessionToken,
            ProgressCallback uploadProgressCallback,
            Task<Void> cancellationToken); Task<ParseFile.State> saveAsync(
            final ParseFile.State state,
            final File file,
            String sessionToken,
            ProgressCallback uploadProgressCallback,
            Task<Void> cancellationToken); Task<File> fetchAsync(
            final ParseFile.State state,
            @SuppressWarnings("UnusedParameters") String sessionToken,
            final ProgressCallback downloadProgressCallback,
            final Task<Void> cancellationToken);  }
@Test public void testIsDataAvailable() throws IOException { File root = temporaryFolder.getRoot(); ParseFileController controller = new ParseFileController(null, root); temporaryFolder.newFile("test_file"); ParseFile.State state = new ParseFile.State.Builder().name("test_file").build(); assertTrue(controller.isDataAvailable(state)); }