Use robolectric:4.3
- remove constants annotation - Most @Implementation methods in shadow classes are now protected instead of public. Tests should always prefer to call SDK methods directly on Android classes rather than on their shadows
This commit is contained in:
parent
c784274b98
commit
cefd706aeb
@ -168,18 +168,22 @@ dependencies {
|
||||
fullImplementation 'org.jmdns:jmdns:3.5.5'
|
||||
fullImplementation 'org.nanohttpd:nanohttpd:2.3.1'
|
||||
|
||||
testImplementation 'org.robolectric:robolectric:3.8'
|
||||
testImplementation 'org.robolectric:robolectric:4.3'
|
||||
testImplementation 'androidx.test:monitor:1.1.1'
|
||||
testImplementation 'org.bouncycastle:bcprov-jdk15on:1.60'
|
||||
testImplementation 'junit:junit:4.13'
|
||||
testImplementation 'org.hamcrest:hamcrest:2.2'
|
||||
testImplementation 'org.mockito:mockito-core:2.7.22'
|
||||
|
||||
androidTestImplementation 'androidx.annotation:annotation:1.1.0'
|
||||
|
||||
androidTestImplementation 'androidx.test:core:1.2.0'
|
||||
androidTestImplementation 'androidx.test:runner:1.2.0'
|
||||
androidTestImplementation 'androidx.test:rules:1.2.0'
|
||||
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
|
||||
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
|
||||
androidTestImplementation 'androidx.test:rules:1.2.0'
|
||||
androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'
|
||||
androidTestImplementation 'androidx.annotation:annotation:1.1.0'
|
||||
}
|
||||
|
||||
checkstyle {
|
||||
|
@ -23,7 +23,7 @@ import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class AntiFeaturesTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
package org.fdroid.fdroid;
|
||||
|
||||
import android.content.ContentResolver;
|
||||
import android.content.ContentValues;
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
@ -13,7 +14,6 @@ import org.fdroid.fdroid.data.Repo;
|
||||
import org.fdroid.fdroid.data.Schema.ApkTable;
|
||||
import org.fdroid.fdroid.data.Schema.AppMetadataTable;
|
||||
import org.fdroid.fdroid.data.Schema.InstalledAppTable;
|
||||
import org.robolectric.shadows.ShadowContentResolver;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
@ -86,7 +86,7 @@ public class Assert {
|
||||
}
|
||||
}
|
||||
|
||||
public static void assertCantDelete(ShadowContentResolver resolver, Uri uri) {
|
||||
public static void assertCantDelete(ContentResolver resolver, Uri uri) {
|
||||
try {
|
||||
resolver.delete(uri, null, null);
|
||||
fail();
|
||||
@ -97,7 +97,7 @@ public class Assert {
|
||||
}
|
||||
}
|
||||
|
||||
public static void assertCantUpdate(ShadowContentResolver resolver, Uri uri) {
|
||||
public static void assertCantUpdate(ContentResolver resolver, Uri uri) {
|
||||
try {
|
||||
resolver.update(uri, new ContentValues(), null, null);
|
||||
fail();
|
||||
@ -108,36 +108,36 @@ public class Assert {
|
||||
}
|
||||
}
|
||||
|
||||
public static void assertInvalidUri(ShadowContentResolver resolver, String uri) {
|
||||
public static void assertInvalidUri(ContentResolver resolver, String uri) {
|
||||
assertInvalidUri(resolver, Uri.parse(uri));
|
||||
}
|
||||
|
||||
public static void assertValidUri(ShadowContentResolver resolver, String uri, String[] projection) {
|
||||
public static void assertValidUri(ContentResolver resolver, String uri, String[] projection) {
|
||||
assertValidUri(resolver, Uri.parse(uri), projection);
|
||||
}
|
||||
|
||||
public static void assertInvalidUri(ShadowContentResolver resolver, Uri uri) {
|
||||
public static void assertInvalidUri(ContentResolver resolver, Uri uri) {
|
||||
Cursor cursor = resolver.query(uri, new String[]{}, null, null, null);
|
||||
assertNull(cursor);
|
||||
}
|
||||
|
||||
public static void assertValidUri(ShadowContentResolver resolver, Uri uri, String[] projection) {
|
||||
public static void assertValidUri(ContentResolver resolver, Uri uri, String[] projection) {
|
||||
Cursor cursor = resolver.query(uri, projection, null, null, null);
|
||||
assertNotNull(cursor);
|
||||
cursor.close();
|
||||
}
|
||||
|
||||
public static void assertValidUri(ShadowContentResolver resolver, Uri actualUri, String expectedUri,
|
||||
public static void assertValidUri(ContentResolver resolver, Uri actualUri, String expectedUri,
|
||||
String[] projection) {
|
||||
assertValidUri(resolver, actualUri, projection);
|
||||
assertEquals(expectedUri, actualUri.toString());
|
||||
}
|
||||
|
||||
public static void assertResultCount(ShadowContentResolver resolver, int expectedCount, Uri uri) {
|
||||
public static void assertResultCount(ContentResolver resolver, int expectedCount, Uri uri) {
|
||||
assertResultCount(resolver, expectedCount, uri, new String[]{});
|
||||
}
|
||||
|
||||
public static void assertResultCount(ShadowContentResolver resolver, int expectedCount, Uri uri,
|
||||
public static void assertResultCount(ContentResolver resolver, int expectedCount, Uri uri,
|
||||
String[] projection) {
|
||||
Cursor cursor = resolver.query(uri, projection, null, null, null);
|
||||
assertResultCount(expectedCount, cursor);
|
||||
@ -154,7 +154,7 @@ public class Assert {
|
||||
assertEquals(expectedCount, result.getCount());
|
||||
}
|
||||
|
||||
public static void assertIsInstalledVersionInDb(ShadowContentResolver resolver,
|
||||
public static void assertIsInstalledVersionInDb(ContentResolver resolver,
|
||||
String appId, int versionCode, String versionName) {
|
||||
Uri uri = InstalledAppProvider.getAppUri(appId);
|
||||
|
||||
|
@ -16,7 +16,6 @@ import java.util.List;
|
||||
/**
|
||||
* @author Michael Poehn (michael.poehn@fsfe.org)
|
||||
*/
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class ProvisionerTest {
|
||||
|
@ -19,7 +19,6 @@ import org.fdroid.fdroid.data.Schema;
|
||||
import org.mockito.AdditionalAnswers;
|
||||
import org.robolectric.Robolectric;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
import org.robolectric.shadows.ShadowContentResolver;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
@ -157,7 +156,7 @@ public class TestUtils {
|
||||
* {@link ContextWrapper} which is able to return a proper content
|
||||
* resolver that delegates to the Robolectric shadow object.
|
||||
*/
|
||||
public static ContextWrapper createContextWithContentResolver(ShadowContentResolver contentResolver) {
|
||||
public static ContextWrapper createContextWithContentResolver(ContentResolver contentResolver) {
|
||||
final ContentResolver resolver = mock(ContentResolver.class, AdditionalAnswers.delegatesTo(contentResolver));
|
||||
return new ContextWrapper(RuntimeEnvironment.application.getApplicationContext()) {
|
||||
@Override
|
||||
|
@ -19,7 +19,6 @@ import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class UtilsTest {
|
||||
|
@ -31,7 +31,7 @@ import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class ApkProviderTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -15,7 +15,7 @@ import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class AppPrefsProviderTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -16,7 +16,6 @@ import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.shadows.ShadowContentResolver;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -31,7 +30,7 @@ import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class AppProviderTest extends FDroidProviderTest {
|
||||
@ -315,11 +314,11 @@ public class AppProviderTest extends FDroidProviderTest {
|
||||
return insertApp(contentResolver, context, id, name, additionalValues);
|
||||
}
|
||||
|
||||
public static App insertApp(ShadowContentResolver contentResolver, Context context, String id, String name, ContentValues additionalValues) {
|
||||
public static App insertApp(ContentResolver contentResolver, Context context, String id, String name, ContentValues additionalValues) {
|
||||
return insertApp(contentResolver, context, id, name, additionalValues, 1);
|
||||
}
|
||||
|
||||
public static App insertApp(ShadowContentResolver contentResolver, Context context, String id, String name, ContentValues additionalValues, long repoId) {
|
||||
public static App insertApp(ContentResolver contentResolver, Context context, String id, String name, ContentValues additionalValues, long repoId) {
|
||||
|
||||
ContentValues values = new ContentValues();
|
||||
values.put(Cols.Package.PACKAGE_NAME, id);
|
||||
|
@ -24,7 +24,7 @@ import static org.fdroid.fdroid.Assert.assertContainsOnly;
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class CategoryProviderTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -12,6 +12,7 @@ import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
import java.io.File;
|
||||
@ -46,7 +47,7 @@ public class DBHelperTest {
|
||||
|
||||
@Before
|
||||
public final void setupBase() {
|
||||
context = InstrumentationRegistry.getContext();
|
||||
context = RuntimeEnvironment.application.getApplicationContext();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -20,7 +20,7 @@ import org.robolectric.Shadows;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.shadows.ShadowContentResolver;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class DatabaseMigration {
|
||||
|
||||
@ -30,7 +30,7 @@ public class DatabaseMigration {
|
||||
@Before
|
||||
public final void setupBase() {
|
||||
contentResolver = RuntimeEnvironment.application.getContentResolver();
|
||||
context = TestUtils.createContextWithContentResolver(Shadows.shadowOf(contentResolver));
|
||||
context = TestUtils.createContextWithContentResolver(contentResolver);
|
||||
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
|
||||
}
|
||||
|
||||
|
@ -18,7 +18,7 @@ public abstract class FDroidProviderTest { // NOPMD This abstract class does not
|
||||
@Before
|
||||
public final void setupBase() {
|
||||
contentResolver = RuntimeEnvironment.application.getContentResolver();
|
||||
context = TestUtils.createContextWithContentResolver(Shadows.shadowOf(contentResolver));
|
||||
context = TestUtils.createContextWithContentResolver(contentResolver);
|
||||
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
|
||||
}
|
||||
|
||||
|
@ -24,7 +24,7 @@ import static org.junit.Assert.assertNotEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class InstalledAppProviderTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -13,7 +13,7 @@ import org.robolectric.annotation.Config;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class PreferredSignatureTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -20,7 +20,6 @@ import org.robolectric.Shadows;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.shadows.ShadowContentResolver;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class ProviderUriTests {
|
||||
@ -45,67 +44,67 @@ public class ProviderUriTests {
|
||||
@Test
|
||||
public void invalidInstalledAppProviderUris() {
|
||||
TestUtils.registerContentProvider(InstalledAppProvider.getAuthority(), InstalledAppProvider.class);
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getAuthority());
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), "blah");
|
||||
assertInvalidUri(resolver, InstalledAppProvider.getAuthority());
|
||||
assertInvalidUri(resolver, "blah");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void validInstalledAppProviderUris() {
|
||||
TestUtils.registerContentProvider(InstalledAppProvider.getAuthority(), InstalledAppProvider.class);
|
||||
String[] projection = new String[]{InstalledAppTable.Cols._ID};
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getContentUri(), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getAppUri("org.example.app"), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getSearchUri("blah"), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getSearchUri("\"blah\""), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getSearchUri("blah & sneh"), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), InstalledAppProvider.getSearchUri("http://blah.example.com?sneh=\"sneh\""), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getContentUri(), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getAppUri("org.example.app"), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getSearchUri("blah"), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getSearchUri("\"blah\""), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getSearchUri("blah & sneh"), projection);
|
||||
assertValidUri(resolver, InstalledAppProvider.getSearchUri("http://blah.example.com?sneh=\"sneh\""), projection);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void invalidRepoProviderUris() {
|
||||
TestUtils.registerContentProvider(RepoProvider.getAuthority(), RepoProvider.class);
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), RepoProvider.getAuthority());
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), "blah");
|
||||
assertInvalidUri(resolver, RepoProvider.getAuthority());
|
||||
assertInvalidUri(resolver, "blah");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void validRepoProviderUris() {
|
||||
TestUtils.registerContentProvider(RepoProvider.getAuthority(), RepoProvider.class);
|
||||
String[] projection = new String[]{Schema.RepoTable.Cols._ID};
|
||||
assertValidUri(Shadows.shadowOf(resolver), RepoProvider.getContentUri(), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), RepoProvider.getContentUri(10000L), projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), RepoProvider.allExceptSwapUri(), projection);
|
||||
assertValidUri(resolver, RepoProvider.getContentUri(), projection);
|
||||
assertValidUri(resolver, RepoProvider.getContentUri(10000L), projection);
|
||||
assertValidUri(resolver, RepoProvider.allExceptSwapUri(), projection);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void invalidAppProviderUris() {
|
||||
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), AppProvider.getAuthority());
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), "blah");
|
||||
assertInvalidUri(resolver, AppProvider.getAuthority());
|
||||
assertInvalidUri(resolver, "blah");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void validAppProviderUris() {
|
||||
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
|
||||
String[] projection = new String[]{Schema.AppMetadataTable.Cols._ID};
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getContentUri(), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("'searching!'", null), APP_PROVIDER_URI_BASE + "/search/'searching!'", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("'searching!'", "Games"), APP_PROVIDER_URI_BASE + "/search/'searching!'/Games", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("/", null), APP_PROVIDER_URI_BASE + "/search/%2F", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("/", "Games"), APP_PROVIDER_URI_BASE + "/search/%2F/Games", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("", null), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri("", "Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getCategoryUri("Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri((String) null, null), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSearchUri((String) null, "Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getInstalledUri(), APP_PROVIDER_URI_BASE + "/installed", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getCanUpdateUri(), APP_PROVIDER_URI_BASE + "/canUpdate", projection);
|
||||
assertValidUri(resolver, AppProvider.getContentUri(), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("'searching!'", null), APP_PROVIDER_URI_BASE + "/search/'searching!'", projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("'searching!'", "Games"), APP_PROVIDER_URI_BASE + "/search/'searching!'/Games", projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("/", null), APP_PROVIDER_URI_BASE + "/search/%2F", projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("/", "Games"), APP_PROVIDER_URI_BASE + "/search/%2F/Games", projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("", null), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri("", "Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(resolver, AppProvider.getCategoryUri("Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri((String) null, null), APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(resolver, AppProvider.getSearchUri((String) null, "Games"), APP_PROVIDER_URI_BASE + "/category/Games", projection);
|
||||
assertValidUri(resolver, AppProvider.getInstalledUri(), APP_PROVIDER_URI_BASE + "/installed", projection);
|
||||
assertValidUri(resolver, AppProvider.getCanUpdateUri(), APP_PROVIDER_URI_BASE + "/canUpdate", projection);
|
||||
|
||||
App app = new App();
|
||||
app.repoId = 1;
|
||||
app.packageName = "org.fdroid.fdroid";
|
||||
|
||||
assertValidUri(Shadows.shadowOf(resolver), AppProvider.getSpecificAppUri(app.packageName, app.repoId),
|
||||
assertValidUri(resolver, AppProvider.getSpecificAppUri(app.packageName, app.repoId),
|
||||
APP_PROVIDER_URI_BASE + "/app/1/org.fdroid.fdroid", projection);
|
||||
}
|
||||
|
||||
@ -116,22 +115,22 @@ public class ProviderUriTests {
|
||||
|
||||
// Required so that the `assertValidUri` calls below will indeed have a real temp_fdroid_app
|
||||
// table to query.
|
||||
TempAppProvider.Helper.init(TestUtils.createContextWithContentResolver(Shadows.shadowOf(resolver)), 123);
|
||||
TempAppProvider.Helper.init(TestUtils.createContextWithContentResolver(resolver), 123);
|
||||
|
||||
List<String> packageNames = new ArrayList<>(2);
|
||||
packageNames.add("org.fdroid.fdroid");
|
||||
packageNames.add("com.example.com");
|
||||
|
||||
assertValidUri(Shadows.shadowOf(resolver), TempAppProvider.getAppsUri(packageNames, 1),
|
||||
assertValidUri(resolver, TempAppProvider.getAppsUri(packageNames, 1),
|
||||
TEMP_APP_PROVIDER_URI_BASE + "/apps/1/org.fdroid.fdroid%2Ccom.example.com", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), TempAppProvider.getContentUri(), TEMP_APP_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(resolver, TempAppProvider.getContentUri(), TEMP_APP_PROVIDER_URI_BASE, projection);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void invalidApkProviderUris() {
|
||||
TestUtils.registerContentProvider(ApkProvider.getAuthority(), ApkProvider.class);
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), ApkProvider.getAuthority());
|
||||
assertInvalidUri(Shadows.shadowOf(resolver), "blah");
|
||||
assertInvalidUri(resolver, ApkProvider.getAuthority());
|
||||
assertInvalidUri(resolver, "blah");
|
||||
}
|
||||
|
||||
@Test
|
||||
@ -144,15 +143,15 @@ public class ProviderUriTests {
|
||||
apks.add(new MockApk("com.example." + i, i));
|
||||
}
|
||||
|
||||
assertValidUri(Shadows.shadowOf(resolver), ApkProvider.getContentUri(),
|
||||
assertValidUri(resolver, ApkProvider.getContentUri(),
|
||||
APK_PROVIDER_URI_BASE, projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), ApkProvider.getAppUri("org.fdroid.fdroid"),
|
||||
assertValidUri(resolver, ApkProvider.getAppUri("org.fdroid.fdroid"),
|
||||
APK_PROVIDER_URI_BASE + "/app/org.fdroid.fdroid", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), ApkProvider.getApkFromAnyRepoUri(new MockApk("org.fdroid.fdroid", 100)),
|
||||
assertValidUri(resolver, ApkProvider.getApkFromAnyRepoUri(new MockApk("org.fdroid.fdroid", 100)),
|
||||
APK_PROVIDER_URI_BASE + "/apk-any-repo/100/org.fdroid.fdroid", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), ApkProvider.getApkFromAnyRepoUri("org.fdroid.fdroid", 100, null),
|
||||
assertValidUri(resolver, ApkProvider.getApkFromAnyRepoUri("org.fdroid.fdroid", 100, null),
|
||||
APK_PROVIDER_URI_BASE + "/apk-any-repo/100/org.fdroid.fdroid", projection);
|
||||
assertValidUri(Shadows.shadowOf(resolver), ApkProvider.getRepoUri(1000),
|
||||
assertValidUri(resolver, ApkProvider.getRepoUri(1000),
|
||||
APK_PROVIDER_URI_BASE + "/repo/1000", projection);
|
||||
}
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class RepoProviderTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -58,7 +58,6 @@ import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class RepoXMLHandlerTest {
|
||||
private static final String TAG = "RepoXMLHandlerTest";
|
||||
|
@ -16,7 +16,7 @@ import java.util.List;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class SuggestedVersionTest extends FDroidProviderTest {
|
||||
|
||||
|
@ -15,7 +15,6 @@ import java.net.URL;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class HttpDownloaderTest {
|
||||
|
@ -18,7 +18,6 @@ import java.util.List;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class AcceptableMultiIndexUpdaterTest extends MultiIndexUpdaterTest {
|
||||
private static final String TAG = "AcceptableMultiRepoTest";
|
||||
|
@ -21,7 +21,6 @@ import static org.junit.Assert.assertThat;
|
||||
* Check whether app icons are loaded from the correct repository. The repository with the
|
||||
* highest priority should be where we decide to load icons from.
|
||||
*/
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class AppIconsTest extends MultiIndexUpdaterTest {
|
||||
|
@ -13,7 +13,6 @@ import org.robolectric.annotation.Config;
|
||||
* because there is so much metadata to parse in the main repo, covering many different aspects
|
||||
* of the available metadata. Some apps will be added, others updated, and it should all just work.
|
||||
*/
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class FDroidRepoUpdateTest extends MultiIndexUpdaterTest {
|
||||
|
||||
|
@ -62,7 +62,6 @@ import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class IndexV1UpdaterTest extends FDroidProviderTest {
|
||||
public static final String TAG = "IndexV1UpdaterTest";
|
||||
|
@ -17,7 +17,6 @@ import java.util.List;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
@Config(constants = BuildConfig.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@SuppressWarnings("LineLength")
|
||||
public class Issue763MultiRepo extends MultiIndexUpdaterTest {
|
||||
|
@ -33,7 +33,7 @@ import java.util.Map;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
@Config(constants = BuildConfig.class, shadows = ProperMultiIndexUpdaterTest.ArmSystemProperties.class)
|
||||
@Config(shadows = ProperMultiIndexUpdaterTest.ArmSystemProperties.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class ProperMultiIndexUpdaterTest extends MultiIndexUpdaterTest {
|
||||
private static final String TAG = "ProperMultiRepoSupport";
|
||||
|
@ -27,7 +27,7 @@ import org.robolectric.annotation.Config;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
@Config(constants = BuildConfig.class, application = Application.class)
|
||||
@Config(application = Application.class)
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
public class AppDetailsAdapterTest extends FDroidProviderTest {
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user