Skip to content

Commit b5d7665

Browse files
committed
Testing slideshow deletion for localOnly and offline
Signed-off-by: Philipp Hasper <vcs@hasper.info>
1 parent 95ad9b9 commit b5d7665

2 files changed

Lines changed: 44 additions & 0 deletions

File tree

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/*
2+
* Nextcloud - Android Client
3+
*
4+
* SPDX-FileCopyrightText: 2025 Philipp Hasper <vcs@hasper.info>
5+
* SPDX-License-Identifier: AGPL-3.0-or-later
6+
*/
7+
package com.nextcloud.test
8+
9+
import com.nextcloud.client.network.Connectivity
10+
import com.nextcloud.client.network.ConnectivityService
11+
12+
/** A mocked connectivity service returning that the device is offline **/
13+
class ConnectivityServiceOfflineMock : ConnectivityService {
14+
override fun isNetworkAndServerAvailable(callback: ConnectivityService.GenericCallback<Boolean>) {
15+
callback.onComplete(false)
16+
}
17+
18+
override fun isConnected(): Boolean = false
19+
20+
override fun isInternetWalled(): Boolean = false
21+
22+
override fun getConnectivity(): Connectivity = Connectivity.CONNECTED_WIFI
23+
}

app/src/androidTest/java/com/owncloud/android/ui/preview/PreviewImageActivityIT.kt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
2121
import androidx.test.espresso.matcher.ViewMatchers.isRoot
2222
import androidx.test.espresso.matcher.ViewMatchers.withId
2323
import androidx.test.espresso.matcher.ViewMatchers.withText
24+
import com.nextcloud.test.ConnectivityServiceOfflineMock
2425
import com.nextcloud.test.LoopFailureHandler
2526
import com.owncloud.android.AbstractOnServerIT
2627
import com.owncloud.android.R
@@ -110,4 +111,24 @@ class PreviewImageActivityIT : AbstractOnServerIT() {
110111
}
111112
}
112113
}
114+
115+
@Test
116+
fun deleteFromSlideshow_localOnly_offline() {
117+
// Prepare local test data
118+
val imageCount = 10
119+
createMockedImageFiles(imageCount, localOnly = true)
120+
121+
// Launch the activity with the first image
122+
val intent = PreviewImageActivity.previewFileIntent(targetContext, user, testFiles[0])
123+
launchActivity<PreviewImageActivity>(intent).use { scenario ->
124+
scenario.onActivity { activity ->
125+
activity.connectivityService = ConnectivityServiceOfflineMock()
126+
}
127+
onView(isRoot()).check(matches(isDisplayed()))
128+
129+
for (i in 0 until imageCount) {
130+
veryImageThenDelete(i)
131+
}
132+
}
133+
}
113134
}

0 commit comments

Comments
 (0)