[db] Add DB query for getting repos an app is in

This commit is contained in:
Torsten Grote
2023-10-31 13:13:38 -03:00
parent b28d2ecd5b
commit 4a01b02fa6
2 changed files with 31 additions and 0 deletions

View File

@@ -108,6 +108,26 @@ internal class AppDaoTest : AppTest() {
assertEquals(app1, appDao.getApp(packageName).getOrFail()?.toMetadataV2()?.sort())
}
@Test
fun testGetRepositoryIdsForApp() {
// initially, the app is in no repos
assertEquals(emptyList(), appDao.getRepositoryIdsForApp(packageName))
// insert same app into one repo
val repoId1 = repoDao.insertOrReplace(getRandomRepo())
appDao.insert(repoId1, packageName, app1, locales)
assertEquals(listOf(repoId1), appDao.getRepositoryIdsForApp(packageName))
// insert the app into one more repo
val repoId2 = repoDao.insertOrReplace(getRandomRepo())
appDao.insert(repoId2, packageName, app2, locales)
assertEquals(listOf(repoId1, repoId2), appDao.getRepositoryIdsForApp(packageName))
// when repo1 is disabled, it doesn't get returned anymore
repoDao.setRepositoryEnabled(repoId1, false)
assertEquals(listOf(repoId2), appDao.getRepositoryIdsForApp(packageName))
}
@Test
fun testUpdateCompatibility() {
// insert two apps with one version each