From 53e74dcdbd9c8fee5340e04955469c0059584d17 Mon Sep 17 00:00:00 2001 From: Peter Serwylo Date: Thu, 9 Jun 2016 10:25:50 +1000 Subject: [PATCH] Appease checkstyle for test code. Like PMD, we also had to add a concession to allow static imports. This time, it was achieved by moving the assertions to a more generally named `Assert` class, and then allowing static imports from that. --- .../ProviderTestUtils.java => Assert.java} | 7 ++- .../fdroid/fdroid/MultiRepoUpdaterTest.java | 4 +- .../java/org/fdroid/fdroid/TestFDroidApp.java | 4 +- .../fdroid/fdroid/data/ApkProviderTest.java | 49 ++++++++++--------- .../fdroid/fdroid/data/AppProviderTest.java | 10 ++-- .../fdroid/data/FDroidProviderTest.java | 1 - .../fdroid/data/InstalledAppProviderTest.java | 6 +-- .../fdroid/fdroid/data/ProviderUriTests.java | 12 ++--- config/checkstyle/checkstyle.xml | 4 +- 9 files changed, 49 insertions(+), 48 deletions(-) rename app/src/test/java/org/fdroid/fdroid/{data/ProviderTestUtils.java => Assert.java} (97%) diff --git a/app/src/test/java/org/fdroid/fdroid/data/ProviderTestUtils.java b/app/src/test/java/org/fdroid/fdroid/Assert.java similarity index 97% rename from app/src/test/java/org/fdroid/fdroid/data/ProviderTestUtils.java rename to app/src/test/java/org/fdroid/fdroid/Assert.java index ce277c31a..1296e0f9c 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/ProviderTestUtils.java +++ b/app/src/test/java/org/fdroid/fdroid/Assert.java @@ -1,4 +1,4 @@ -package org.fdroid.fdroid.data; +package org.fdroid.fdroid; import android.content.ContentValues; import android.database.Cursor; @@ -6,6 +6,9 @@ import android.net.Uri; import junit.framework.AssertionFailedError; +import org.fdroid.fdroid.data.ApkProvider; +import org.fdroid.fdroid.data.AppProvider; +import org.fdroid.fdroid.data.InstalledAppProvider; import org.robolectric.shadows.ShadowContentResolver; import java.util.ArrayList; @@ -17,7 +20,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.fail; -public class ProviderTestUtils { +public class Assert { public static void assertContainsOnly(List actualList, T[] expectedArray) { List expectedList = new ArrayList<>(expectedArray.length); diff --git a/app/src/test/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java b/app/src/test/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java index 79e31254b..2da14d8eb 100644 --- a/app/src/test/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java +++ b/app/src/test/java/org/fdroid/fdroid/MultiRepoUpdaterTest.java @@ -20,12 +20,12 @@ import java.io.File; import java.util.List; import java.util.UUID; -import static org.fdroid.fdroid.TestUtils.copyResourceToTempFile; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; public abstract class MultiRepoUpdaterTest extends FDroidProviderTest { + @SuppressWarnings("unused") private static final String TAG = "AcceptableMultiRepoUpdaterTest"; // NOPMD protected static final String REPO_MAIN = "Test F-Droid repo"; @@ -187,7 +187,7 @@ public abstract class MultiRepoUpdaterTest extends FDroidProviderTest { } private boolean updateRepo(RepoUpdater updater, String indexJarPath) throws UpdateException { - File indexJar = copyResourceToTempFile(indexJarPath); + File indexJar = TestUtils.copyResourceToTempFile(indexJarPath); try { updater.processDownloadedFile(indexJar); } finally { diff --git a/app/src/test/java/org/fdroid/fdroid/TestFDroidApp.java b/app/src/test/java/org/fdroid/fdroid/TestFDroidApp.java index b0fcd8319..15bef648f 100644 --- a/app/src/test/java/org/fdroid/fdroid/TestFDroidApp.java +++ b/app/src/test/java/org/fdroid/fdroid/TestFDroidApp.java @@ -8,4 +8,6 @@ import android.app.Application; * {@link Application} instead of {@link FDroidApp}. It intentionally doesn't extends {@link FDroidApp} * so that the static initialization in {@link FDroidApp#onCreate()} is not executed. */ -public class TestFDroidApp extends Application {} +public class TestFDroidApp extends Application { + +} diff --git a/app/src/test/java/org/fdroid/fdroid/data/ApkProviderTest.java b/app/src/test/java/org/fdroid/fdroid/data/ApkProviderTest.java index 6d3c6811e..03e7ebfa0 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/ApkProviderTest.java +++ b/app/src/test/java/org/fdroid/fdroid/data/ApkProviderTest.java @@ -5,6 +5,7 @@ import android.content.ContentValues; import android.database.Cursor; import android.net.Uri; +import org.fdroid.fdroid.Assert; import org.fdroid.fdroid.BuildConfig; import org.fdroid.fdroid.Utils; import org.fdroid.fdroid.mock.MockApk; @@ -20,9 +21,9 @@ import java.util.Collections; import java.util.Date; import java.util.List; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertCantDelete; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertContainsOnly; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertResultCount; +import static org.fdroid.fdroid.Assert.assertCantDelete; +import static org.fdroid.fdroid.Assert.assertContainsOnly; +import static org.fdroid.fdroid.Assert.assertResultCount; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; @@ -37,8 +38,8 @@ public class ApkProviderTest extends FDroidProviderTest { @Test public void testAppApks() { for (int i = 1; i <= 10; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.fdroid.fdroid", i); - ProviderTestUtils.insertApk(contentResolver, "com.example", i); + Assert.insertApk(contentResolver, "org.fdroid.fdroid", i); + Assert.insertApk(contentResolver, "com.example", i); } assertTotalApkCount(20); @@ -186,7 +187,7 @@ public class ApkProviderTest extends FDroidProviderTest { Apk apk = new MockApk("org.fdroid.fdroid", 13); // Insert a new record... - Uri newUri = ProviderTestUtils.insertApk(contentResolver, apk.packageName, apk.versionCode); + Uri newUri = Assert.insertApk(contentResolver, apk.packageName, apk.versionCode); assertEquals(ApkProvider.getContentUri(apk).toString(), newUri.toString()); cursor = queryAllApks(); assertNotNull(cursor); @@ -204,7 +205,7 @@ public class ApkProviderTest extends FDroidProviderTest { @Test(expected = IllegalArgumentException.class) public void testCursorMustMoveToFirst() { - ProviderTestUtils.insertApk(contentResolver, "org.example.test", 12); + Assert.insertApk(contentResolver, "org.example.test", 12); Cursor cursor = queryAllApks(); new Apk(cursor); } @@ -214,7 +215,7 @@ public class ApkProviderTest extends FDroidProviderTest { String[] projectionCount = new String[] {ApkProvider.DataColumns._COUNT}; for (int i = 0; i < 13; i++) { - ProviderTestUtils.insertApk(contentResolver, "com.example", i); + Assert.insertApk(contentResolver, "com.example", i); } Uri all = ApkProvider.getContentUri(); @@ -259,7 +260,7 @@ public class ApkProviderTest extends FDroidProviderTest { public void assertInvalidExtraField(String field) { ContentValues invalidRepo = new ContentValues(); invalidRepo.put(field, "Test data"); - ProviderTestUtils.insertApk(contentResolver, "org.fdroid.fdroid", 10, invalidRepo); + Assert.insertApk(contentResolver, "org.fdroid.fdroid", 10, invalidRepo); } @Test @@ -272,7 +273,7 @@ public class ApkProviderTest extends FDroidProviderTest { values.put(ApkProvider.DataColumns.REPO_ADDRESS, "http://example.com"); values.put(ApkProvider.DataColumns.REPO_VERSION, 3); values.put(ApkProvider.DataColumns.FEATURES, "Some features"); - Uri uri = ProviderTestUtils.insertApk(contentResolver, "com.example.com", 1, values); + Uri uri = Assert.insertApk(contentResolver, "com.example.com", 1, values); assertResultCount(1, queryAllApks()); @@ -298,18 +299,18 @@ public class ApkProviderTest extends FDroidProviderTest { public void testKnownApks() { for (int i = 0; i < 7; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.fdroid.fdroid", i); + Assert.insertApk(contentResolver, "org.fdroid.fdroid", i); } for (int i = 0; i < 9; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.example", i); + Assert.insertApk(contentResolver, "org.example", i); } for (int i = 0; i < 3; i++) { - ProviderTestUtils.insertApk(contentResolver, "com.example", i); + Assert.insertApk(contentResolver, "com.example", i); } - ProviderTestUtils.insertApk(contentResolver, "com.apk.thingo", 1); + Assert.insertApk(contentResolver, "com.apk.thingo", 1); Apk[] known = { new MockApk("org.fdroid.fdroid", 1), @@ -356,18 +357,18 @@ public class ApkProviderTest extends FDroidProviderTest { public void testFindByApp() { for (int i = 0; i < 7; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.fdroid.fdroid", i); + Assert.insertApk(contentResolver, "org.fdroid.fdroid", i); } for (int i = 0; i < 9; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.example", i); + Assert.insertApk(contentResolver, "org.example", i); } for (int i = 0; i < 3; i++) { - ProviderTestUtils.insertApk(contentResolver, "com.example", i); + Assert.insertApk(contentResolver, "com.example", i); } - ProviderTestUtils.insertApk(contentResolver, "com.apk.thingo", 1); + Assert.insertApk(contentResolver, "com.apk.thingo", 1); assertTotalApkCount(7 + 9 + 3 + 1); @@ -391,7 +392,7 @@ public class ApkProviderTest extends FDroidProviderTest { @Test public void testUpdate() { - Uri apkUri = ProviderTestUtils.insertApk(contentResolver, "com.example", 10); + Uri apkUri = Assert.insertApk(contentResolver, "com.example", 10); String[] allFields = ApkProvider.DataColumns.ALL; Cursor cursor = contentResolver.query(apkUri, allFields, null, null, null); @@ -447,18 +448,18 @@ public class ApkProviderTest extends FDroidProviderTest { // the Helper.find() method doesn't stumble upon the app we are interested // in by shear dumb luck... for (int i = 0; i < 10; i++) { - ProviderTestUtils.insertApk(contentResolver, "org.fdroid.apk." + i, i); + Assert.insertApk(contentResolver, "org.fdroid.apk." + i, i); } ContentValues values = new ContentValues(); values.put(ApkProvider.DataColumns.VERSION_NAME, "v1.1"); values.put(ApkProvider.DataColumns.HASH, "xxxxyyyy"); values.put(ApkProvider.DataColumns.HASH_TYPE, "a hash type"); - ProviderTestUtils.insertApk(contentResolver, "com.example", 11, values); + Assert.insertApk(contentResolver, "com.example", 11, values); // ...and a few more for good measure... for (int i = 15; i < 20; i++) { - ProviderTestUtils.insertApk(contentResolver, "com.other.thing." + i, i); + Assert.insertApk(contentResolver, "com.other.thing." + i, i); } Apk apk = ApkProvider.Helper.find(context, "com.example", 11); @@ -507,7 +508,7 @@ public class ApkProviderTest extends FDroidProviderTest { } } if (!found) { - fail("Apk [" + apk + "] not found in " + ProviderTestUtils.listToString(apks)); + fail("Apk [" + apk + "] not found in " + Assert.listToString(apks)); } } @@ -534,7 +535,7 @@ public class ApkProviderTest extends FDroidProviderTest { protected Apk insertApkForRepo(String id, int versionCode, long repoId) { ContentValues additionalValues = new ContentValues(); additionalValues.put(ApkProvider.DataColumns.REPO_ID, repoId); - Uri uri = ProviderTestUtils.insertApk(contentResolver, id, versionCode, additionalValues); + Uri uri = Assert.insertApk(contentResolver, id, versionCode, additionalValues); return ApkProvider.Helper.get(context, uri); } } diff --git a/app/src/test/java/org/fdroid/fdroid/data/AppProviderTest.java b/app/src/test/java/org/fdroid/fdroid/data/AppProviderTest.java index 779ca10f4..9178eb2c3 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/AppProviderTest.java +++ b/app/src/test/java/org/fdroid/fdroid/data/AppProviderTest.java @@ -18,8 +18,8 @@ import org.robolectric.shadows.ShadowContentResolver; import java.util.ArrayList; import java.util.List; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertContainsOnly; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertResultCount; +import static org.fdroid.fdroid.Assert.assertContainsOnly; +import static org.fdroid.fdroid.Assert.assertResultCount; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -253,7 +253,7 @@ public class AppProviderTest extends FDroidProviderTest { String[] projection = new String[] { AppProvider.DataColumns._ID, AppProvider.DataColumns.NAME, - AppProvider.DataColumns.PACKAGE_NAME + AppProvider.DataColumns.PACKAGE_NAME, }; return contentResolver.query(AppProvider.getContentUri(), projection, null, null, null); } @@ -366,8 +366,4 @@ public class AppProviderTest extends FDroidProviderTest { contentResolver.insert(uri, values); } - - } - -// https://github.com/robolectric/robolectric/wiki/2.4-to-3.0-Upgrade-Guide diff --git a/app/src/test/java/org/fdroid/fdroid/data/FDroidProviderTest.java b/app/src/test/java/org/fdroid/fdroid/data/FDroidProviderTest.java index 5bef2d769..adddf695c 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/FDroidProviderTest.java +++ b/app/src/test/java/org/fdroid/fdroid/data/FDroidProviderTest.java @@ -35,5 +35,4 @@ public abstract class FDroidProviderTest { FDroidProvider.clearDbHelperSingleton(); } - } diff --git a/app/src/test/java/org/fdroid/fdroid/data/InstalledAppProviderTest.java b/app/src/test/java/org/fdroid/fdroid/data/InstalledAppProviderTest.java index 5afc4cfc2..e207f1a16 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/InstalledAppProviderTest.java +++ b/app/src/test/java/org/fdroid/fdroid/data/InstalledAppProviderTest.java @@ -14,8 +14,8 @@ import org.robolectric.RuntimeEnvironment; import org.robolectric.annotation.Config; import org.robolectric.shadows.ShadowContentResolver; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertIsInstalledVersionInDb; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertResultCount; +import static org.fdroid.fdroid.Assert.assertIsInstalledVersionInDb; +import static org.fdroid.fdroid.Assert.assertResultCount; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; @@ -24,7 +24,7 @@ import java.util.Map; @Config(constants = BuildConfig.class, application = Application.class) @RunWith(RobolectricGradleTestRunner.class) -public class InstalledAppProviderTest extends FDroidProviderTest{ +public class InstalledAppProviderTest extends FDroidProviderTest { @Before public void setup() { diff --git a/app/src/test/java/org/fdroid/fdroid/data/ProviderUriTests.java b/app/src/test/java/org/fdroid/fdroid/data/ProviderUriTests.java index 2e75977ea..118adcf65 100644 --- a/app/src/test/java/org/fdroid/fdroid/data/ProviderUriTests.java +++ b/app/src/test/java/org/fdroid/fdroid/data/ProviderUriTests.java @@ -15,8 +15,8 @@ import org.robolectric.shadows.ShadowContentResolver; import java.util.ArrayList; import java.util.List; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertInvalidUri; -import static org.fdroid.fdroid.data.ProviderTestUtils.assertValidUri; +import static org.fdroid.fdroid.Assert.assertInvalidUri; +import static org.fdroid.fdroid.Assert.assertValidUri; @Config(constants = BuildConfig.class) @RunWith(RobolectricGradleTestRunner.class) @@ -44,7 +44,7 @@ public class ProviderUriTests { @Test public void validInstalledAppProviderUris() { ShadowContentResolver.registerProvider(InstalledAppProvider.getAuthority(), new InstalledAppProvider()); - String[] projection = new String[] { InstalledAppProvider.DataColumns._ID }; + String[] projection = new String[] {InstalledAppProvider.DataColumns._ID}; assertValidUri(resolver, InstalledAppProvider.getContentUri(), projection); assertValidUri(resolver, InstalledAppProvider.getAppUri("org.example.app"), projection); assertValidUri(resolver, InstalledAppProvider.getSearchUri("blah"), projection); @@ -63,7 +63,7 @@ public class ProviderUriTests { @Test public void validRepoProviderUris() { ShadowContentResolver.registerProvider(RepoProvider.getAuthority(), new RepoProvider()); - String[] projection = new String[] { RepoProvider.DataColumns._ID }; + String[] projection = new String[] {RepoProvider.DataColumns._ID}; assertValidUri(resolver, RepoProvider.getContentUri(), projection); assertValidUri(resolver, RepoProvider.getContentUri(10000L), projection); assertValidUri(resolver, RepoProvider.allExceptSwapUri(), projection); @@ -79,7 +79,7 @@ public class ProviderUriTests { @Test public void validAppProviderUris() { ShadowContentResolver.registerProvider(AppProvider.getAuthority(), new AppProvider()); - String[] projection = new String[] { AppProvider.DataColumns._ID }; + String[] projection = new String[] {AppProvider.DataColumns._ID}; assertValidUri(resolver, AppProvider.getContentUri(), "content://org.fdroid.fdroid.data.AppProvider", projection); assertValidUri(resolver, AppProvider.getSearchUri("'searching!'"), "content://org.fdroid.fdroid.data.AppProvider/search/'searching!'", projection); assertValidUri(resolver, AppProvider.getSearchUri("/"), "content://org.fdroid.fdroid.data.AppProvider/search/%2F", projection); @@ -110,7 +110,7 @@ public class ProviderUriTests { @Test public void validApkProviderUris() { ShadowContentResolver.registerProvider(ApkProvider.getAuthority(), new ApkProvider()); - String[] projection = new String[] { ApkProvider.DataColumns._ID }; + String[] projection = new String[] {ApkProvider.DataColumns._ID}; List apks = new ArrayList<>(10); for (int i = 0; i < 10; i++) { diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index 8bb944a11..735e5d608 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -32,8 +32,8 @@ - +