Implement cloud media UI and reliable automatic uploads
Android / test-and-build (push) Canceled after 0s
Server / deployment-config (push) Successful in 4m56s
Server / vulnerability-scan (push) Failing after 11m7s

This commit is contained in:
Курнат Андрей
2026-07-16 01:47:36 +03:00
parent e48e1e36a5
commit dd21285700
77 changed files with 3585 additions and 387 deletions
@@ -0,0 +1,40 @@
/**
* qsfera Android client application
*
* Copyright (C) 2026 QSfera.
*/
package eu.qsfera.android.presentation.settings.automaticuploads
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
import org.junit.Assert.assertNull
import org.junit.Assert.assertTrue
import org.junit.Test
class AutomaticUploadMediaSourceTest {
@Test
fun `source survives storage round trip`() {
val source = AutomaticUploadMediaSource.create(
AutomaticUploadMediaKind.IMAGE,
"Pictures/Семья",
)
assertEquals(source, AutomaticUploadMediaSource.parse(source.encodedValue))
}
@Test
fun `camera path is normalized and matched without case sensitivity`() {
assertEquals(
AutomaticUploadMediaSource.CAMERA_RELATIVE_PATH,
AutomaticUploadMediaSource.normalizeRelativePath("/DCIM\\Camera"),
)
assertTrue(AutomaticUploadMediaSource.isCameraPath("dcim/camera"))
assertFalse(AutomaticUploadMediaSource.isCameraPath("Pictures/Camera"))
}
@Test
fun `unrelated configuration value is not parsed as media source`() {
assertNull(AutomaticUploadMediaSource.parse("content://tree/primary"))
}
}