Use androidx.test artifacts for tests not just androidTests

- this allows replacing deprecated RuntimeEnvironment.application
This commit is contained in:
Dominik Schürmann
2020-07-01 21:29:18 +02:00
parent 360e61118d
commit 8f81bf0cb9
14 changed files with 63 additions and 51 deletions

View File

@@ -21,6 +21,8 @@ package org.fdroid.fdroid;
import android.content.Context;
import android.content.SharedPreferences;
import androidx.preference.PreferenceManager;
import androidx.test.core.app.ApplicationProvider;
import android.util.Log;
import org.junit.Before;
import org.junit.Test;
@@ -39,7 +41,7 @@ import static org.junit.Assert.assertTrue;
public class PreferencesTest {
private static final String TAG = "PreferencesTest";
private static final Context CONTEXT = RuntimeEnvironment.application;
private static final Context CONTEXT = ApplicationProvider.getApplicationContext();
private SharedPreferences defaults;

View File

@@ -8,6 +8,8 @@ import android.content.ContextWrapper;
import android.content.pm.ProviderInfo;
import android.net.Uri;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.data.Apk;
import org.fdroid.fdroid.data.ApkProvider;
import org.fdroid.fdroid.data.App;
@@ -158,7 +160,7 @@ public class TestUtils {
*/
public static ContextWrapper createContextWithContentResolver(ContentResolver contentResolver) {
final ContentResolver resolver = mock(ContentResolver.class, AdditionalAnswers.delegatesTo(contentResolver));
return new ContextWrapper(RuntimeEnvironment.application.getApplicationContext()) {
return new ContextWrapper(ApplicationProvider.getApplicationContext()) {
@Override
public ContentResolver getContentResolver() {
return resolver;

View File

@@ -2,6 +2,9 @@
package org.fdroid.fdroid;
import android.content.Context;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.views.AppDetailsRecyclerViewAdapter;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -85,7 +88,7 @@ public class UtilsTest {
@Test
public void testFormatFingerprint() {
Context context = RuntimeEnvironment.application;
Context context = ApplicationProvider.getApplicationContext();
String badResult = Utils.formatFingerprint(context, "");
// real fingerprints
String formatted;

View File

@@ -1,10 +1,11 @@
package org.fdroid.fdroid.data;
import android.content.Context;
import androidx.test.platform.app.InstrumentationRegistry;
import android.text.TextUtils;
import android.util.Log;
import androidx.test.core.app.ApplicationProvider;
import org.apache.commons.io.IOUtils;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.TestUtils;
@@ -12,7 +13,6 @@ 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;
@@ -47,7 +47,7 @@ public class DBHelperTest {
@Before
public final void setupBase() {
context = RuntimeEnvironment.application.getApplicationContext();
context = ApplicationProvider.getApplicationContext();
}
@Test

View File

@@ -7,6 +7,9 @@ import android.content.Context;
import android.content.ContextWrapper;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.BuildConfig;
import org.fdroid.fdroid.Preferences;
import org.fdroid.fdroid.TestUtils;
@@ -29,7 +32,7 @@ public class DatabaseMigration {
@Before
public final void setupBase() {
contentResolver = RuntimeEnvironment.application.getContentResolver();
contentResolver = ApplicationProvider.getApplicationContext().getContentResolver();
context = TestUtils.createContextWithContentResolver(contentResolver);
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
}

View File

@@ -3,12 +3,12 @@ package org.fdroid.fdroid.data;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.ContextWrapper;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.TestUtils;
import org.junit.After;
import org.junit.Before;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.Shadows;
import org.robolectric.shadows.ShadowContentResolver;
public abstract class FDroidProviderTest { // NOPMD This abstract class does not have any abstract methods
@@ -17,7 +17,7 @@ public abstract class FDroidProviderTest { // NOPMD This abstract class does not
@Before
public final void setupBase() {
contentResolver = RuntimeEnvironment.application.getContentResolver();
contentResolver = ApplicationProvider.getApplicationContext().getContentResolver();
context = TestUtils.createContextWithContentResolver(contentResolver);
TestUtils.registerContentProvider(AppProvider.getAuthority(), AppProvider.class);
}

View File

@@ -4,7 +4,9 @@ import android.app.Application;
import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import org.fdroid.fdroid.BuildConfig;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.Preferences;
import org.fdroid.fdroid.TestUtils;
import org.fdroid.fdroid.data.Schema.InstalledAppTable.Cols;
@@ -12,7 +14,6 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import java.util.Map;
@@ -36,7 +37,7 @@ public class InstalledAppProviderTest extends FDroidProviderTest {
@Test
public void insertSingleApp() {
Map<String, Long> foundBefore = InstalledAppProvider.Helper.lastUpdateTimes(RuntimeEnvironment.application);
Map<String, Long> foundBefore = InstalledAppProvider.Helper.lastUpdateTimes(ApplicationProvider.getApplicationContext());
assertEquals(foundBefore.size(), 0);
ContentValues values = new ContentValues();
@@ -50,7 +51,7 @@ public class InstalledAppProviderTest extends FDroidProviderTest {
values.put(Cols.SIGNATURE, "000111222333444555666777888999aaabbbcccdddeeefff");
contentResolver.insert(InstalledAppProvider.getContentUri(), values);
Map<String, Long> foundAfter = InstalledAppProvider.Helper.lastUpdateTimes(RuntimeEnvironment.application);
Map<String, Long> foundAfter = InstalledAppProvider.Helper.lastUpdateTimes(ApplicationProvider.getApplicationContext());
assertEquals(1, foundAfter.size());
assertEquals(100000000L, foundAfter.get("org.example.test-app").longValue());

View File

@@ -1,12 +1,9 @@
package org.fdroid.fdroid.data;
import static org.fdroid.fdroid.Assert.assertInvalidUri;
import static org.fdroid.fdroid.Assert.assertValidUri;
import android.content.ContentResolver;
import java.util.ArrayList;
import java.util.List;
import org.fdroid.fdroid.BuildConfig;
import androidx.test.core.app.ApplicationProvider;
import org.fdroid.fdroid.TestUtils;
import org.fdroid.fdroid.data.Schema.InstalledAppTable;
import org.fdroid.fdroid.mock.MockApk;
@@ -15,10 +12,12 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.Shadows;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowContentResolver;
import java.util.ArrayList;
import java.util.List;
import static org.fdroid.fdroid.Assert.assertInvalidUri;
import static org.fdroid.fdroid.Assert.assertValidUri;
@RunWith(RobolectricTestRunner.class)
@SuppressWarnings("LineLength")
@@ -33,7 +32,7 @@ public class ProviderUriTests {
@Before
public void setup() {
resolver = RuntimeEnvironment.application.getContentResolver();
resolver = ApplicationProvider.getApplicationContext().getContentResolver();
}
@After

View File

@@ -8,6 +8,7 @@ import android.view.ViewGroup;
import androidx.appcompat.view.ContextThemeWrapper;
import androidx.recyclerview.widget.RecyclerView;
import androidx.test.core.app.ApplicationProvider;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
@@ -27,7 +28,6 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import static org.junit.Assert.assertEquals;
@@ -48,7 +48,7 @@ public class AppDetailsAdapterTest extends FDroidProviderTest {
app = AppProviderTest.insertApp(contentResolver, context, "com.example.app", "Test App",
new ContentValues(), repo.getId());
themeContext = new ContextThemeWrapper(RuntimeEnvironment.application, R.style.AppBaseThemeDark);
themeContext = new ContextThemeWrapper(ApplicationProvider.getApplicationContext(), R.style.AppBaseThemeDark);
}
@After