Use androidx.test artifacts for tests not just androidTests
- this allows replacing deprecated RuntimeEnvironment.application
This commit is contained in:
parent
360e61118d
commit
8f81bf0cb9
@ -169,21 +169,18 @@ dependencies {
|
||||
fullImplementation 'org.nanohttpd:nanohttpd:2.3.1'
|
||||
|
||||
testImplementation 'org.robolectric:robolectric:4.3'
|
||||
testImplementation 'androidx.test:monitor:1.1.1'
|
||||
testImplementation 'junit:junit:4.12'
|
||||
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.test:core:1.2.0'
|
||||
androidTestImplementation 'androidx.test:runner:1.2.0'
|
||||
androidTestImplementation 'androidx.test:rules:1.2.0'
|
||||
testImplementation 'androidx.test:core:1.2.0'
|
||||
testImplementation 'androidx.test:runner:1.2.0'
|
||||
testImplementation 'androidx.test:rules:1.2.0'
|
||||
testImplementation 'androidx.test:monitor:1.2.0'
|
||||
testImplementation 'androidx.test.ext:junit:1.1.1'
|
||||
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
|
||||
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
|
||||
androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'
|
||||
androidTestImplementation 'androidx.annotation:annotation:1.1.0'
|
||||
}
|
||||
|
||||
checkstyle {
|
||||
|
@ -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;
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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;
|
||||
|
@ -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
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
||||
|
@ -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());
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -1,12 +1,14 @@
|
||||
package org.fdroid.fdroid.nearby;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import org.fdroid.fdroid.FDroidApp;
|
||||
import org.fdroid.fdroid.Utils;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
import org.robolectric.shadows.ShadowLog;
|
||||
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
@ -23,7 +25,7 @@ public class LocalHTTPDManagerTest {
|
||||
@Test
|
||||
public void testStartStop() throws InterruptedException {
|
||||
ShadowLog.stream = System.out;
|
||||
Context context = RuntimeEnvironment.application;
|
||||
Context context = ApplicationProvider.getApplicationContext();
|
||||
|
||||
final String host = "localhost";
|
||||
final int port = 8888;
|
||||
|
@ -35,6 +35,9 @@ package org.fdroid.fdroid.nearby;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.fdroid.fdroid.Utils;
|
||||
@ -45,7 +48,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.shadows.ShadowLog;
|
||||
|
||||
import java.io.File;
|
||||
@ -88,7 +90,7 @@ public class LocalHTTPDTest {
|
||||
|
||||
assertFalse(Utils.isServerSocketInUse(port));
|
||||
|
||||
final Context context = RuntimeEnvironment.application.getApplicationContext();
|
||||
final Context context = ApplicationProvider.getApplicationContext();
|
||||
webRoot = context.getFilesDir();
|
||||
FileUtils.deleteDirectory(webRoot);
|
||||
assertTrue(webRoot.mkdir());
|
||||
@ -266,7 +268,7 @@ public class LocalHTTPDTest {
|
||||
@Override
|
||||
public void run() {
|
||||
LocalHTTPD localHttpd = new LocalHTTPD(
|
||||
RuntimeEnvironment.application,
|
||||
ApplicationProvider.getApplicationContext(),
|
||||
"localhost",
|
||||
testPort,
|
||||
webRoot,
|
||||
|
@ -2,13 +2,15 @@ package org.fdroid.fdroid.nearby;
|
||||
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.fdroid.fdroid.IndexUpdater;
|
||||
import org.fdroid.fdroid.Utils;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.RobolectricTestRunner;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
|
||||
import java.io.BufferedOutputStream;
|
||||
import java.io.File;
|
||||
@ -29,7 +31,7 @@ public class LocalRepoKeyStoreTest {
|
||||
|
||||
@Test
|
||||
public void testSignZip() throws IOException, LocalRepoKeyStore.InitException, IndexUpdater.SigningException {
|
||||
Context context = RuntimeEnvironment.application;
|
||||
Context context = ApplicationProvider.getApplicationContext();
|
||||
|
||||
File xmlIndexJarUnsigned = File.createTempFile(getClass().getName(), "unsigned.jar");
|
||||
BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream(xmlIndexJarUnsigned));
|
||||
|
@ -7,6 +7,9 @@ import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import org.apache.commons.net.util.SubnetUtils;
|
||||
import org.fdroid.fdroid.FDroidApp;
|
||||
import org.fdroid.fdroid.Hasher;
|
||||
@ -23,23 +26,19 @@ import org.fdroid.fdroid.data.RepoProvider;
|
||||
import org.fdroid.fdroid.data.Schema;
|
||||
import org.fdroid.fdroid.data.ShadowApp;
|
||||
import org.fdroid.fdroid.data.TempAppProvider;
|
||||
import org.fdroid.fdroid.nearby.LocalHTTPD;
|
||||
import org.fdroid.fdroid.nearby.LocalRepoKeyStore;
|
||||
import org.fdroid.fdroid.nearby.LocalRepoManager;
|
||||
import org.fdroid.fdroid.nearby.LocalRepoService;
|
||||
import org.fdroid.fdroid.nearby.WifiStateChangeService;
|
||||
import org.fdroid.fdroid.nearby.LocalHTTPD;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
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 org.robolectric.shadows.ShadowLog;
|
||||
import org.robolectric.shadows.ShadowPackageManager;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@ -72,9 +71,9 @@ public class SwapRepoTest {
|
||||
public void setUp() {
|
||||
ShadowLog.stream = System.out;
|
||||
|
||||
contentResolver = RuntimeEnvironment.application.getContentResolver();
|
||||
contentResolver = ApplicationProvider.getApplicationContext().getContentResolver();
|
||||
|
||||
context = new ContextWrapper(RuntimeEnvironment.application.getApplicationContext()) {
|
||||
context = new ContextWrapper(ApplicationProvider.getApplicationContext()) {
|
||||
@Override
|
||||
public ContentResolver getContentResolver() {
|
||||
return contentResolver;
|
||||
|
Loading…
x
Reference in New Issue
Block a user