add test for localized icon

This commit is contained in:
Marcus Hoffmann 2020-02-21 17:57:46 +01:00
parent 7b5d7f8fed
commit bc6e5e8433
2 changed files with 12 additions and 3 deletions

View File

@ -9,6 +9,7 @@ import org.fdroid.fdroid.data.AppProvider;
import org.fdroid.fdroid.data.Repo; import org.fdroid.fdroid.data.Repo;
import org.fdroid.fdroid.data.RepoProvider; import org.fdroid.fdroid.data.RepoProvider;
import org.fdroid.fdroid.data.Schema; import org.fdroid.fdroid.data.Schema;
import org.hamcrest.text.MatchesPattern;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
@ -16,7 +17,6 @@ import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config; import org.robolectric.annotation.Config;
import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.MatcherAssert.assertThat;
import org.hamcrest.text.MatchesPattern;
/** /**
* Check whether app icons are loaded from the correct repository. The repository with the * Check whether app icons are loaded from the correct repository. The repository with the
@ -44,7 +44,7 @@ public class AppIconsTest extends MultiIndexUpdaterTest {
updateMain(); updateMain();
updateArchive(); updateArchive();
assertIconUrl("^https://f-droid.org/repo/icons-[0-9]{3}/org.adaway.54.png$"); assertIconUrl("^https://f-droid\\.org/repo/icons-[0-9]{3}/org\\.adaway\\.54\\.png$");
} }
@Test @Test
@ -55,7 +55,7 @@ public class AppIconsTest extends MultiIndexUpdaterTest {
updateMain(); updateMain();
updateArchive(); updateArchive();
assertIconUrl("^https://f-droid.org/archive/icons-[0-9]{3}/org.adaway.54.png$"); assertIconUrl("^https://f-droid\\.org/archive/icons-[0-9]{3}/org\\.adaway\\.54.png$");
} }
private void setRepoPriority(String repoUri, int priority) { private void setRepoPriority(String repoUri, int priority) {

View File

@ -27,6 +27,7 @@ import org.fdroid.fdroid.data.Repo;
import org.fdroid.fdroid.data.RepoProvider; import org.fdroid.fdroid.data.RepoProvider;
import org.fdroid.fdroid.data.RepoPushRequest; import org.fdroid.fdroid.data.RepoPushRequest;
import org.fdroid.fdroid.data.RepoXMLHandlerTest; import org.fdroid.fdroid.data.RepoXMLHandlerTest;
import org.fdroid.fdroid.data.Schema;
import org.fdroid.fdroid.mock.RepoDetails; import org.fdroid.fdroid.mock.RepoDetails;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
@ -143,6 +144,14 @@ public class IndexV1UpdaterTest extends FDroidProviderTest {
assertTrue(requestedPermissions.contains(android.Manifest.permission.READ_EXTERNAL_STORAGE)); assertTrue(requestedPermissions.contains(android.Manifest.permission.READ_EXTERNAL_STORAGE));
assertTrue(requestedPermissions.contains(android.Manifest.permission.WRITE_EXTERNAL_STORAGE)); assertTrue(requestedPermissions.contains(android.Manifest.permission.WRITE_EXTERNAL_STORAGE));
assertFalse(requestedPermissions.contains(android.Manifest.permission.READ_CALENDAR)); assertFalse(requestedPermissions.contains(android.Manifest.permission.READ_CALENDAR));
App app = AppProvider.Helper.findHighestPriorityMetadata(context.getContentResolver(),
"com.autonavi.minimap", new String[]{
Schema.AppMetadataTable.Cols.ICON_URL,
Schema.AppMetadataTable.Cols.ICON,
Schema.AppMetadataTable.Cols.REPO_ID,
Schema.AppMetadataTable.Cols.Package.PACKAGE_NAME});
assertEquals("localized icon takes precedence", TESTY_CANONICAL_URL + "/"
+ app.packageName + "/en-US/icon.png", app.getIconUrl(context));
} }
@Test(expected = IndexUpdater.SigningException.class) @Test(expected = IndexUpdater.SigningException.class)