public static Single<Uri> proxy(@NonNull Context context, @NonNull Uri data) {
    return Single.just(data)
        .subscribeOn(RxSchedulers.background())
        .observeOn(RxSchedulers.mainThread())
        .map(remoteUri -> proxyContentUriToLocalFileUri(context, remoteUri));
  }
@Test
  @Config(shadows = ShadowFileProvider.class)
  public void testHappyPathUnknownMime() throws IOException {
    final var uriSingle = LocalProxy.proxy(ApplicationProvider.getApplicationContext(), mUri);
    final Uri localUri = TestRxSchedulers.blockingGet(uriSingle);

    Assert.assertNotNull(localUri);
    Assert.assertEquals("content", localUri.getScheme());
    Assert.assertEquals("com.anysoftkeyboard.fileprovider.test", localUri.getAuthority());
    Assert.assertTrue(
        localUri
            .getPath()
            .endsWith("com.anysoftkeyboard.fileprovider.test-dataDir/files/media/file.png"));

    File actualFile = new File(localUri.getPath());
    Assert.assertTrue(
        "File " + actualFile.getAbsolutePath() + " does not exist", actualFile.isFile());

    final List<String> copiedData = Files.readLines(actualFile, Charsets.UTF8);
    Assert.assertEquals(1, copiedData.size());
    Assert.assertEquals("testing 123", copiedData.get(0));
  }