@Test public void testContentProvider() {
final TestContext context = new TestContext();
final CondomContext condom = CondomContext.wrap(context, TAG), dry_condom = CondomContext.wrap(context, TAG, new CondomOptions().setDryRun(true));
final String android_id = Settings.System.getString(context.getContentResolver(), Settings.System.ANDROID_ID);
assertNotNull(android_id);
final String condom_android_id = Settings.System.getString(condom.getContentResolver(), Settings.System.ANDROID_ID);
assertEquals(android_id, condom_android_id);
final String dry_android_id = Settings.System.getString(dry_condom.getContentResolver(), Settings.System.ANDROID_ID);
assertEquals(android_id, dry_android_id);
context.mTestingStoppedProvider = true;
assertNull(condom.getPackageManager().resolveContentProvider(TEST_AUTHORITY, 0));
assertNotNull(dry_condom.getPackageManager().resolveContentProvider(TEST_AUTHORITY, 0));
assertNull(condom.getContentResolver().acquireContentProviderClient(TEST_CONTENT_URI));
assertNotNull(dry_condom.getContentResolver().acquireContentProviderClient(TEST_CONTENT_URI));
assertNotNull(condom.getPackageManager().resolveContentProvider(Settings.AUTHORITY, 0));
assertNotNull(dry_condom.getPackageManager().resolveContentProvider(Settings.AUTHORITY, 0));
assertNotNull(condom.getContentResolver().acquireContentProviderClient(Settings.System.CONTENT_URI));
assertNotNull(dry_condom.getContentResolver().acquireContentProviderClient(Settings.System.CONTENT_URI));
context.mTestingStoppedProvider = false;
}
private static final String TEST_AUTHORITY = "com.oasisfeng.condom.test";