From a75d120e0fbb539dcd98a7d4a6c90776120f4b92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benedikt=20L=C3=B6bbecke?= Date: Tue, 26 Sep 2023 11:19:44 +0200 Subject: [PATCH] Fixed the tests to make them work with java 17 --- .../app_locale/AppLocaleInitialStateTest.kt | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/applocale/src/test/java/dev/b3nedikt/app_locale/AppLocaleInitialStateTest.kt b/applocale/src/test/java/dev/b3nedikt/app_locale/AppLocaleInitialStateTest.kt index 7fd5b86..89b21aa 100644 --- a/applocale/src/test/java/dev/b3nedikt/app_locale/AppLocaleInitialStateTest.kt +++ b/applocale/src/test/java/dev/b3nedikt/app_locale/AppLocaleInitialStateTest.kt @@ -7,8 +7,6 @@ import org.junit.runner.RunWith import org.mockito.kotlin.doReturn import org.mockito.kotlin.mock import org.robolectric.RobolectricTestRunner -import java.lang.reflect.Field -import java.lang.reflect.Modifier import java.util.* @RunWith(RobolectricTestRunner::class) @@ -47,23 +45,18 @@ class AppLocaleInitialStateTest { @Before fun resetAppLocale() { setAppLocaleField("isInitial", true) - + setAppLocaleField("appLocaleRepository", null) - + setAppLocaleField("supportedLocales", listOf()) setAppLocaleField("currentLocale", Locale.ROOT) setAppLocaleField("desiredLocale", Locale.ROOT) } private fun setAppLocaleField(name: String, newValue: Any?) { - AppLocale.javaClass.getDeclaredField(name).setFinalStatic(newValue) - } - - private fun Field.setFinalStatic(newValue: Any?) { - isAccessible = true - val modifiersField: Field = Field::class.java.getDeclaredField("modifiers") - modifiersField.isAccessible = true - modifiersField.setInt(this, modifiers and Modifier.FINAL.inv()) - set(null, newValue) + AppLocale::class.java.getDeclaredField(name).apply { + isAccessible = true + set(AppLocale, newValue) + } } } \ No newline at end of file