Skip to content

Commit 4a48cca

Browse files
committed
test: add mock permission grant in test
1 parent c2b647d commit 4a48cca

6 files changed

Lines changed: 31 additions & 1 deletion

File tree

‎AnkiDroid/src/main/java/com/ichi2/anki/DeckPicker.kt‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@ import com.ichi2.utils.ImportUtils
184184
import com.ichi2.utils.ImportUtils.ImportResult
185185
import com.ichi2.utils.NetworkUtils
186186
import com.ichi2.utils.NetworkUtils.isActiveNetworkMetered
187+
import com.ichi2.utils.Permissions
187188
import com.ichi2.utils.VersionUtils
188189
import com.ichi2.utils.cancelable
189190
import com.ichi2.utils.checkBoxPrompt

‎AnkiDroid/src/main/res/values/01-core.xml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,6 @@
208208
<string name="instant_card" comment="Used in the Android system context menu/share dialog to quickly create a note. This does not need to be translated literally, translate the concept of quickly adding a Cloze note with a popup. ">Instant card</string>
209209

210210
<!-- Internet Permissions -->
211-
<string name="internet_access_title">Internet</string>
211+
<string name="internet_access_title" comment = "used for notifying user to unable internet access">Internet</string>
212212
<string name="internet_access_summary">Required for some screens like Statistics to work</string>
213213
</resources>

‎AnkiDroid/src/test/java/com/ichi2/anki/AbstractFlashcardViewerTest.kt‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ import org.hamcrest.Matchers.not
4040
import org.hamcrest.Matchers.notNullValue
4141
import org.hamcrest.Matchers.nullValue
4242
import org.junit.Assert.assertEquals
43+
import org.junit.Before
4344
import org.junit.Test
4445
import org.junit.jupiter.api.assertDoesNotThrow
4546
import org.junit.jupiter.params.ParameterizedTest
@@ -48,6 +49,8 @@ import org.junit.jupiter.params.provider.MethodSource
4849
import org.junit.runner.RunWith
4950
import org.mockito.Mockito.mock
5051
import org.robolectric.Robolectric
52+
import org.robolectric.RuntimeEnvironment
53+
import org.robolectric.Shadows
5154
import org.robolectric.android.controller.ActivityController
5255
import timber.log.Timber
5356
import java.util.Locale
@@ -100,6 +103,12 @@ class AbstractFlashcardViewerTest : RobolectricTest() {
100103
*/
101104
private var mediaGroupCompleted = false
102105

106+
@Before
107+
fun before() {
108+
val shadowApp = Shadows.shadowOf(RuntimeEnvironment.getApplication())
109+
shadowApp.grantPermissions(android.Manifest.permission.INTERNET)
110+
}
111+
103112
override fun onMediaGroupCompleted() {
104113
super.onMediaGroupCompleted()
105114
mediaGroupCompleted = true

‎AnkiDroid/src/test/java/com/ichi2/anki/CardBrowserTest.kt‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,14 @@ import org.hamcrest.Matchers.nullValue
117117
import org.hamcrest.Matchers.startsWith
118118
import org.junit.Assume.assumeThat
119119
import org.junit.Assume.assumeTrue
120+
import org.junit.Before
120121
import org.junit.Ignore
121122
import org.junit.Test
122123
import org.junit.jupiter.api.assertDoesNotThrow
123124
import org.junit.runner.RunWith
124125
import org.robolectric.Robolectric
126+
import org.robolectric.RuntimeEnvironment
127+
import org.robolectric.Shadows
125128
import org.robolectric.Shadows.shadowOf
126129
import org.robolectric.annotation.Config
127130
import timber.log.Timber
@@ -137,6 +140,12 @@ import kotlin.test.fail
137140

138141
@RunWith(AndroidJUnit4::class)
139142
class CardBrowserTest : RobolectricTest() {
143+
@Before
144+
fun before() {
145+
val shadowApp = Shadows.shadowOf(RuntimeEnvironment.getApplication())
146+
shadowApp.grantPermissions(android.Manifest.permission.INTERNET)
147+
}
148+
140149
@Test
141150
fun browserIsNotInitiallyInMultiSelectModeWithNoCards() =
142151
runTest {

‎AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerOnDiskTest.kt‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ import org.junit.Test
3636
import org.junit.runner.RunWith
3737
import org.robolectric.ParameterizedRobolectricTestRunner
3838
import org.robolectric.RuntimeEnvironment
39+
import org.robolectric.Shadows
3940
import java.io.File
41+
import java.util.jar.Manifest
4042

4143
@KotlinCleanup("SPMockBuilder")
4244
@RunWith(ParameterizedRobolectricTestRunner::class)
@@ -59,6 +61,9 @@ class DeckPickerOnDiskTest : RobolectricTest() {
5961
getPreferences().edit {
6062
putBoolean(IntroductionActivity.INTRODUCTION_SLIDES_SHOWN, true)
6163
}
64+
65+
val shadowApp = Shadows.shadowOf(RuntimeEnvironment.getApplication())
66+
shadowApp.grantPermissions(android.Manifest.permission.INTERNET)
6267
}
6368

6469
@Test

‎AnkiDroid/src/test/java/com/ichi2/anki/DeckPickerTest.kt‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,12 @@ class DeckPickerTest : RobolectricTest() {
8484
fun before() {
8585
RuntimeEnvironment.setQualifiers(mQualifiers)
8686
setIntroductionSlidesShown(true)
87+
getPreferences().edit {
88+
putBoolean(IntroductionActivity.INTRODUCTION_SLIDES_SHOWN, true)
89+
}
90+
91+
val shadowApp = Shadows.shadowOf(RuntimeEnvironment.getApplication())
92+
shadowApp.grantPermissions(android.Manifest.permission.INTERNET)
8793
}
8894

8995
@Test

0 commit comments

Comments
 (0)