diff --git a/docs/Third party licenses.md b/docs/Third party licenses.md
index 41839c0e..e2d3f1ed 100644
--- a/docs/Third party licenses.md
+++ b/docs/Third party licenses.md
@@ -6,4 +6,4 @@ The majority of the contents of this Git repository are covered under the [LICEN
## Rubik Font
-The fonts under the [font](../ui-lib/src/main/res/ui/common/font) directory are downloaded from [Google Fonts](https://fonts.google.com/specimen/Rubik) and are licensed under the [Open Font License](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL).
+We use fonts from Rubik font family. The fonts are downloaded from [Google Fonts](https://fonts.google.com/specimen/Rubik) and are licensed under the [Open Font License](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL).
diff --git a/gradle.properties b/gradle.properties
index b6551c44..99175946 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -94,7 +94,7 @@ ANDROIDX_APPCOMPAT_VERSION=1.4.1
ANDROIDX_CAMERA_VERSION=1.1.0-rc01
ANDROIDX_COMPOSE_COMPILER_VERSION=1.2.0-beta03
ANDROIDX_COMPOSE_MATERIAL3_VERSION=1.0.0-alpha13
-ANDROIDX_COMPOSE_VERSION=1.1.1
+ANDROIDX_COMPOSE_VERSION=1.2.0-beta03
ANDROIDX_CONSTRAINTLAYOUT_VERSION=1.0.0
ANDROIDX_CORE_VERSION=1.7.0
ANDROIDX_ESPRESSO_VERSION=3.5.0-alpha07
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 3dd35ffb..988cd178 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -164,6 +164,7 @@ dependencyResolutionManagement {
library("androidx-compose-material-icons-extended", "androidx.compose.material:material-icons-extended:$androidxComposeVersion")
library("androidx-compose-tooling", "androidx.compose.ui:ui-tooling:$androidxComposeVersion")
library("androidx-compose-ui", "androidx.compose.ui:ui:$androidxComposeVersion")
+ library("androidx-compose-ui-fonts", "androidx.compose.ui:ui-text-google-fonts:$androidxComposeVersion")
library("androidx-compose-compiler", "androidx.compose.compiler:compiler:$androidxComposeCompilerVersion")
library("androidx-core", "androidx.core:core-ktx:$androidxCoreVersion")
library("androidx-constraintlayout", "androidx.constraintlayout:constraintlayout-compose:$androidxConstraintlayoutVersion")
@@ -219,6 +220,7 @@ dependencyResolutionManagement {
"androidx-compose-material3",
"androidx-compose-tooling",
"androidx-compose-ui",
+ "androidx-compose-ui-fonts"
)
)
bundle(
diff --git a/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/compat/FontCompat.kt b/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/compat/FontCompat.kt
deleted file mode 100644
index e2c2c860..00000000
--- a/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/compat/FontCompat.kt
+++ /dev/null
@@ -1,32 +0,0 @@
-package co.electriccoin.zcash.ui.design.compat
-
-import android.content.Context
-import androidx.annotation.FontRes
-import androidx.core.content.res.ResourcesCompat
-import co.electriccoin.zcash.spackle.AndroidApiVersion
-import co.electriccoin.zcash.ui.design.R
-import kotlinx.coroutines.Dispatchers
-import kotlinx.coroutines.withContext
-
-object FontCompat {
- fun isFontPrefetchNeeded() = !AndroidApiVersion.isAtLeastO
-
- suspend fun prefetchFontsLegacy(context: Context) {
- prefetchFontLegacy(context, R.font.rubik_medium)
- prefetchFontLegacy(context, R.font.rubik_regular)
- }
-
- /**
- * Pre-fetches fonts on Android N (API 25) and below.
- */
- /*
- * ResourcesCompat is used implicitly by Compose on older Android versions.
- * The backwards compatibility library performs disk IO and then
- * caches the results. This moves that IO off the main thread, to prevent ANRs and
- * jank during app startup.
- */
- private suspend fun prefetchFontLegacy(context: Context, @FontRes fontRes: Int) =
- withContext(Dispatchers.IO) {
- ResourcesCompat.getFont(context, fontRes)
- }
-}
diff --git a/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/theme/internal/Typography.kt b/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/theme/internal/Typography.kt
index 05efd0f8..cd33c3d1 100644
--- a/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/theme/internal/Typography.kt
+++ b/ui-design-lib/src/main/java/co/electriccoin/zcash/ui/design/theme/internal/Typography.kt
@@ -3,39 +3,56 @@ package co.electriccoin.zcash.ui.design.theme.internal
import androidx.compose.material3.Typography
import androidx.compose.runtime.Immutable
import androidx.compose.runtime.staticCompositionLocalOf
+import androidx.compose.ui.text.ExperimentalTextApi
import androidx.compose.ui.text.TextStyle
-import androidx.compose.ui.text.font.Font
import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.text.font.FontWeight
+import androidx.compose.ui.text.googlefonts.Font
+import androidx.compose.ui.text.googlefonts.GoogleFont
import androidx.compose.ui.text.style.BaselineShift
-import androidx.compose.ui.unit.ExperimentalUnitApi
import androidx.compose.ui.unit.sp
import co.electriccoin.zcash.ui.design.R
-private val Rubik = FontFamily(
- Font(R.font.rubik_regular, FontWeight.W400),
- Font(R.font.rubik_medium, FontWeight.W500)
+@OptIn(ExperimentalTextApi::class)
+private val provider = GoogleFont.Provider(
+ providerAuthority = "com.google.android.gms.fonts",
+ providerPackage = "com.google.android.gms",
+ certificates = R.array.com_google_android_gms_fonts_certs
)
-@OptIn(ExperimentalUnitApi::class)
+// We use bestEffort here to be able to get the closest font weight, if accidentally use
+// an unspecified font weight and not the default one.
+@OptIn(ExperimentalTextApi::class)
+private val RubikFont = GoogleFont(name = "Rubik", bestEffort = true)
+
+@OptIn(ExperimentalTextApi::class)
+private val RubikFontFamily = FontFamily(
+ Font(googleFont = RubikFont, fontProvider = provider, weight = FontWeight.Normal), // W400
+ Font(googleFont = RubikFont, fontProvider = provider, weight = FontWeight.Medium), // W500
+ Font(googleFont = RubikFont, fontProvider = provider, weight = FontWeight.SemiBold), // W600
+ Font(googleFont = RubikFont, fontProvider = provider, weight = FontWeight.Bold) // W700
+)
+
+// If you change this definition of our Typography, don't forget to check if you use only
+// the defined font weights above, otherwise the closest one will be used.
internal val Typography = Typography(
headlineLarge = TextStyle(
- fontFamily = Rubik,
- fontWeight = FontWeight.W600,
+ fontFamily = RubikFontFamily,
+ fontWeight = FontWeight.SemiBold,
fontSize = 30.sp,
),
bodyLarge = TextStyle(
- fontFamily = Rubik,
+ fontFamily = RubikFontFamily,
fontWeight = FontWeight.Normal,
fontSize = 16.sp
),
bodySmall = TextStyle(
- fontFamily = Rubik,
+ fontFamily = RubikFontFamily,
fontWeight = FontWeight.Medium,
fontSize = 16.sp
),
labelLarge = TextStyle(
- fontFamily = Rubik,
+ fontFamily = RubikFontFamily,
fontWeight = FontWeight.Normal,
fontSize = 16.sp
),
diff --git a/ui-design-lib/src/main/res/ui/common/font/rubik_medium.ttf b/ui-design-lib/src/main/res/ui/common/font/rubik_medium.ttf
deleted file mode 100644
index a4008b72..00000000
Binary files a/ui-design-lib/src/main/res/ui/common/font/rubik_medium.ttf and /dev/null differ
diff --git a/ui-design-lib/src/main/res/ui/common/font/rubik_regular.ttf b/ui-design-lib/src/main/res/ui/common/font/rubik_regular.ttf
deleted file mode 100644
index dc90ef05..00000000
Binary files a/ui-design-lib/src/main/res/ui/common/font/rubik_regular.ttf and /dev/null differ
diff --git a/ui-design-lib/src/main/res/ui/common/values/font_certs.xml b/ui-design-lib/src/main/res/ui/common/values/font_certs.xml
new file mode 100644
index 00000000..5ece3f5f
--- /dev/null
+++ b/ui-design-lib/src/main/res/ui/common/values/font_certs.xml
@@ -0,0 +1,32 @@
+
+
+
+
+ - @array/com_google_android_gms_fonts_certs_dev
+ - @array/com_google_android_gms_fonts_certs_prod
+
+
+ -
+ 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
+
+
+
\ No newline at end of file
diff --git a/ui-integration-test-lib/src/androidTest/AndroidManifest.xml b/ui-integration-test-lib/src/androidTest/AndroidManifest.xml
index e0e30c38..4b646e3c 100644
--- a/ui-integration-test-lib/src/androidTest/AndroidManifest.xml
+++ b/ui-integration-test-lib/src/androidTest/AndroidManifest.xml
@@ -6,7 +6,7 @@
diff --git a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/Global.kt b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/common/Global.kt
similarity index 100%
rename from ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/Global.kt
rename to ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/common/Global.kt
diff --git a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/common/IntegrationTestingActivity.kt b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/common/IntegrationTestingActivity.kt
new file mode 100644
index 00000000..6d6d6c7d
--- /dev/null
+++ b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/common/IntegrationTestingActivity.kt
@@ -0,0 +1,5 @@
+package co.electriccoin.zcash.ui.integration.test.common
+
+import androidx.activity.ComponentActivity
+
+class IntegrationTestingActivity : ComponentActivity()
diff --git a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/TestScanActivity.kt b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/TestScanActivity.kt
deleted file mode 100644
index 1ab44310..00000000
--- a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/TestScanActivity.kt
+++ /dev/null
@@ -1,37 +0,0 @@
-package co.electriccoin.zcash.ui.integration.test.screen.scan
-
-import android.os.Bundle
-import androidx.activity.ComponentActivity
-import androidx.activity.compose.setContent
-import androidx.compose.foundation.layout.fillMaxHeight
-import androidx.compose.foundation.layout.fillMaxWidth
-import androidx.compose.ui.Modifier
-import co.electriccoin.zcash.ui.design.component.GradientSurface
-import co.electriccoin.zcash.ui.design.theme.ZcashTheme
-import co.electriccoin.zcash.ui.screen.scan.WrapScan
-
-class TestScanActivity : ComponentActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setupUiContent()
- }
-
- private fun setupUiContent() {
- setContent {
- ZcashTheme {
- GradientSurface(
- Modifier
- .fillMaxWidth()
- .fillMaxHeight()
- ) {
- WrapScan(
- this,
- goBack = {},
- onScanned = {},
- )
- }
- }
- }
- }
-}
diff --git a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewIntegrationTest.kt b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewIntegrationTest.kt
index 2659f682..0e4625df 100644
--- a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewIntegrationTest.kt
+++ b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewIntegrationTest.kt
@@ -6,8 +6,8 @@ import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.compose.ui.test.onNodeWithTag
import androidx.test.filters.LargeTest
import co.electriccoin.zcash.test.UiTestPrerequisites
+import co.electriccoin.zcash.ui.integration.test.common.IntegrationTestingActivity
import co.electriccoin.zcash.ui.integration.test.getPermissionPositiveButtonUiObject
-import co.electriccoin.zcash.ui.integration.test.screen.scan.TestScanActivity
import co.electriccoin.zcash.ui.screen.scan.ScanTag
import co.electriccoin.zcash.ui.screen.scan.model.ScanState
import org.junit.Assert
@@ -19,7 +19,7 @@ import org.junit.Test
class ScanViewIntegrationTest : UiTestPrerequisites() {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createAndroidComposeRule()
private lateinit var testSetup: ScanViewTestSetup
diff --git a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewTest.kt b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewTest.kt
index 5ddeb8a4..e00c0737 100644
--- a/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewTest.kt
+++ b/ui-integration-test-lib/src/androidTest/java/co/electriccoin/zcash/ui/integration/test/screen/scan/view/ScanViewTest.kt
@@ -11,9 +11,9 @@ import androidx.compose.ui.test.performClick
import androidx.test.filters.LargeTest
import co.electriccoin.zcash.test.UiTestPrerequisites
import co.electriccoin.zcash.ui.R
+import co.electriccoin.zcash.ui.integration.test.common.IntegrationTestingActivity
import co.electriccoin.zcash.ui.integration.test.getPermissionPositiveButtonUiObject
import co.electriccoin.zcash.ui.integration.test.getStringResource
-import co.electriccoin.zcash.ui.integration.test.screen.scan.TestScanActivity
import co.electriccoin.zcash.ui.integration.test.waitForDeviceIdle
import co.electriccoin.zcash.ui.screen.scan.ScanTag
import co.electriccoin.zcash.ui.screen.scan.model.ScanState
@@ -28,7 +28,7 @@ import kotlin.time.Duration.Companion.milliseconds
class ScanViewTest : UiTestPrerequisites() {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createAndroidComposeRule()
private lateinit var testSetup: ScanViewTestSetup
diff --git a/ui-lib/src/androidTest/AndroidManifest.xml b/ui-lib/src/androidTest/AndroidManifest.xml
index 5d05abc0..f9a4adfb 100644
--- a/ui-lib/src/androidTest/AndroidManifest.xml
+++ b/ui-lib/src/androidTest/AndroidManifest.xml
@@ -6,13 +6,7 @@
-
-
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/common/UiTestingActivity.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/common/UiTestingActivity.kt
new file mode 100644
index 00000000..bcc2dafb
--- /dev/null
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/common/UiTestingActivity.kt
@@ -0,0 +1,5 @@
+package co.electriccoin.zcash.ui.common
+
+import androidx.activity.ComponentActivity
+
+class UiTestingActivity : ComponentActivity()
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/TestBackupActivity.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/TestBackupActivity.kt
deleted file mode 100644
index 0e8c37ae..00000000
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/TestBackupActivity.kt
+++ /dev/null
@@ -1,40 +0,0 @@
-package co.electriccoin.zcash.ui.screen.backup
-
-import android.os.Bundle
-import androidx.activity.ComponentActivity
-import androidx.activity.compose.setContent
-import androidx.compose.foundation.layout.fillMaxHeight
-import androidx.compose.foundation.layout.fillMaxWidth
-import androidx.compose.ui.Modifier
-import cash.z.ecc.sdk.fixture.PersistableWalletFixture
-import co.electriccoin.zcash.ui.design.component.GradientSurface
-import co.electriccoin.zcash.ui.design.theme.ZcashTheme
-import co.electriccoin.zcash.ui.screen.backup.model.BackupStage
-import co.electriccoin.zcash.ui.screen.backup.state.BackupState
-
-class TestBackupActivity : ComponentActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setupUiContent()
- }
-
- private fun setupUiContent() {
- setContent {
- ZcashTheme {
- GradientSurface(
- Modifier
- .fillMaxWidth()
- .fillMaxHeight()
- ) {
- WrapBackup(
- persistableWallet = PersistableWalletFixture.new(),
- backupState = BackupState(BackupStage.EducationOverview),
- onCopyToClipboard = {},
- onBackupComplete = {}
- )
- }
- }
- }
- }
-}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupActivityTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupActivityTest.kt
new file mode 100644
index 00000000..c5dcd26e
--- /dev/null
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupActivityTest.kt
@@ -0,0 +1,51 @@
+package co.electriccoin.zcash.ui.screen.backup.integration
+
+import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.onNodeWithText
+import androidx.compose.ui.test.performClick
+import androidx.test.filters.MediumTest
+import co.electriccoin.zcash.test.UiTestPrerequisites
+import co.electriccoin.zcash.ui.R
+import co.electriccoin.zcash.ui.common.UiTestingActivity
+import co.electriccoin.zcash.ui.fixture.TestChoicesFixture
+import co.electriccoin.zcash.ui.screen.backup.model.BackupStage
+import co.electriccoin.zcash.ui.screen.backup.view.BackupTestSetup
+import co.electriccoin.zcash.ui.test.getStringResource
+import org.junit.Assert.assertEquals
+import org.junit.Rule
+import org.junit.Test
+
+class BackupActivityTest : UiTestPrerequisites() {
+
+ @get:Rule
+ val composeTestRule = createAndroidComposeRule()
+
+ private fun newTestSetup(): BackupTestSetup {
+ return BackupTestSetup(
+ composeTestRule,
+ BackupStage.EducationOverview,
+ TestChoicesFixture.new(TestChoicesFixture.INITIAL_CHOICES)
+ )
+ }
+
+ @Test
+ @MediumTest
+ fun current_stage_restoration_activity() {
+ val testSetup = newTestSetup()
+ testSetup.setDefaultContent()
+
+ assertEquals(BackupStage.EducationOverview, testSetup.getStage())
+
+ composeTestRule.onNodeWithText(getStringResource(R.string.new_wallet_1_button)).also {
+ it.performClick()
+ }
+
+ assertEquals(BackupStage.EducationRecoveryPhrase, testSetup.getStage())
+
+ composeTestRule.activityRule.scenario.onActivity {
+ it.recreate()
+ }
+
+ assertEquals(BackupStage.EducationRecoveryPhrase, testSetup.getStage())
+ }
+}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/view/BackupIntegrationTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupIntegrationTest.kt
similarity index 79%
rename from ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/view/BackupIntegrationTest.kt
rename to ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupIntegrationTest.kt
index abf96945..07314a7c 100644
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/view/BackupIntegrationTest.kt
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/backup/integration/BackupIntegrationTest.kt
@@ -1,8 +1,8 @@
-package co.electriccoin.zcash.ui.screen.backup.view
+package co.electriccoin.zcash.ui.screen.backup.integration
import androidx.compose.ui.test.hasTestTag
import androidx.compose.ui.test.junit4.StateRestorationTester
-import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.junit4.createComposeRule
import androidx.compose.ui.test.onAllNodesWithTag
import androidx.compose.ui.test.onChildren
import androidx.compose.ui.test.onNodeWithText
@@ -12,16 +12,17 @@ import co.electriccoin.zcash.test.UiTestPrerequisites
import co.electriccoin.zcash.ui.R
import co.electriccoin.zcash.ui.fixture.TestChoicesFixture
import co.electriccoin.zcash.ui.screen.backup.BackupTag
-import co.electriccoin.zcash.ui.screen.backup.TestBackupActivity
import co.electriccoin.zcash.ui.screen.backup.model.BackupStage
+import co.electriccoin.zcash.ui.screen.backup.view.BackupTestSetup
import co.electriccoin.zcash.ui.test.getStringResource
import org.junit.Assert.assertEquals
import org.junit.Rule
import org.junit.Test
class BackupIntegrationTest : UiTestPrerequisites() {
+
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createComposeRule()
private fun newTestSetup(initialStage: BackupStage): BackupTestSetup {
return BackupTestSetup(
@@ -92,25 +93,4 @@ class BackupIntegrationTest : UiTestPrerequisites() {
assertEquals(2, testSetup.getOnChoicesCallbackCount())
assertEquals(4, testSetup.getSelectedChoicesCount())
}
-
- @Test
- @MediumTest
- fun current_stage_restoration_activity() {
- val testSetup = newTestSetup(BackupStage.EducationOverview)
- testSetup.setDefaultContent()
-
- assertEquals(BackupStage.EducationOverview, testSetup.getStage())
-
- composeTestRule.onNodeWithText(getStringResource(R.string.new_wallet_1_button)).also {
- it.performClick()
- }
-
- assertEquals(BackupStage.EducationRecoveryPhrase, testSetup.getStage())
-
- composeTestRule.activityRule.scenario.onActivity {
- it.recreate()
- }
-
- assertEquals(BackupStage.EducationRecoveryPhrase, testSetup.getStage())
- }
}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/TestOnboardingActivity.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/TestOnboardingActivity.kt
deleted file mode 100644
index a91a30e6..00000000
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/TestOnboardingActivity.kt
+++ /dev/null
@@ -1,55 +0,0 @@
-package co.electriccoin.zcash.ui.screen.onboarding
-
-import android.os.Bundle
-import androidx.activity.ComponentActivity
-import androidx.activity.compose.setContent
-import androidx.activity.viewModels
-import androidx.compose.foundation.layout.fillMaxHeight
-import androidx.compose.foundation.layout.fillMaxWidth
-import androidx.compose.runtime.Composable
-import androidx.compose.runtime.collectAsState
-import androidx.compose.ui.Modifier
-import co.electriccoin.zcash.ui.design.component.GradientSurface
-import co.electriccoin.zcash.ui.design.theme.ZcashTheme
-import co.electriccoin.zcash.ui.screen.onboarding.view.Onboarding
-import co.electriccoin.zcash.ui.screen.onboarding.viewmodel.OnboardingViewModel
-
-class TestOnboardingActivity : ComponentActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setupUiContent()
- }
-
- private fun setupUiContent() {
- setContent {
- ZcashTheme {
- GradientSurface(
- Modifier
- .fillMaxWidth()
- .fillMaxHeight()
- ) {
- WrapOnboarding()
- }
- }
- }
- }
-
- @Composable
- private fun WrapOnboarding() {
- val onboardingViewModel by viewModels()
-
- // TODO [#383]: https://github.com/zcash/secant-android-wallet/issues/383
- if (!onboardingViewModel.isImporting.collectAsState().value) {
- Onboarding(
- onboardingState = onboardingViewModel.onboardingState,
- isDebugMenuEnabled = false,
- onImportWallet = { onboardingViewModel.isImporting.value = true },
- onCreateWallet = {},
- onFixtureWallet = {}
- )
-
- reportFullyDrawn()
- }
- }
-}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingActivityTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingActivityTest.kt
new file mode 100644
index 00000000..0f7e9203
--- /dev/null
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingActivityTest.kt
@@ -0,0 +1,44 @@
+package co.electriccoin.zcash.ui.screen.onboarding.integration
+
+import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.onNodeWithText
+import androidx.compose.ui.test.performClick
+import androidx.test.filters.MediumTest
+import co.electriccoin.zcash.test.UiTestPrerequisites
+import co.electriccoin.zcash.ui.R
+import co.electriccoin.zcash.ui.common.UiTestingActivity
+import co.electriccoin.zcash.ui.screen.onboarding.model.OnboardingStage
+import co.electriccoin.zcash.ui.screen.onboarding.view.OnboardingTestSetup
+import co.electriccoin.zcash.ui.test.getStringResource
+import org.junit.Assert.assertEquals
+import org.junit.Rule
+import org.junit.Test
+
+// TODO [#382]: https://github.com/zcash/secant-android-wallet/issues/382
+class OnboardingActivityTest : UiTestPrerequisites() {
+ @get:Rule
+ val composeTestRule = createAndroidComposeRule()
+
+ private fun newTestSetup() = OnboardingTestSetup(composeTestRule, OnboardingStage.ShieldedByDefault)
+
+ @Test
+ @MediumTest
+ fun current_stage_restoration_activity() {
+ val testSetup = newTestSetup()
+ testSetup.setDefaultContent()
+
+ assertEquals(OnboardingStage.ShieldedByDefault, testSetup.getOnboardingStage())
+
+ composeTestRule.onNodeWithText(getStringResource(R.string.onboarding_next)).also {
+ it.performClick()
+ }
+
+ assertEquals(OnboardingStage.UnifiedAddresses, testSetup.getOnboardingStage())
+
+ composeTestRule.activityRule.scenario.onActivity {
+ it.recreate()
+ }
+
+ assertEquals(OnboardingStage.UnifiedAddresses, testSetup.getOnboardingStage())
+ }
+}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/view/OnboardingIntegrationTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingIntegrationTest.kt
similarity index 66%
rename from ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/view/OnboardingIntegrationTest.kt
rename to ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingIntegrationTest.kt
index dd53dc36..64eeb962 100644
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/view/OnboardingIntegrationTest.kt
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/onboarding/integration/OnboardingIntegrationTest.kt
@@ -1,14 +1,14 @@
-package co.electriccoin.zcash.ui.screen.onboarding.view
+package co.electriccoin.zcash.ui.screen.onboarding.integration
import androidx.compose.ui.test.junit4.StateRestorationTester
-import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.junit4.createComposeRule
import androidx.compose.ui.test.onNodeWithText
import androidx.compose.ui.test.performClick
import androidx.test.filters.MediumTest
import co.electriccoin.zcash.test.UiTestPrerequisites
import co.electriccoin.zcash.ui.R
-import co.electriccoin.zcash.ui.screen.onboarding.TestOnboardingActivity
import co.electriccoin.zcash.ui.screen.onboarding.model.OnboardingStage
+import co.electriccoin.zcash.ui.screen.onboarding.view.OnboardingTestSetup
import co.electriccoin.zcash.ui.test.getStringResource
import org.junit.Assert.assertEquals
import org.junit.Rule
@@ -17,7 +17,7 @@ import org.junit.Test
// TODO [#382]: https://github.com/zcash/secant-android-wallet/issues/382
class OnboardingIntegrationTest : UiTestPrerequisites() {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createComposeRule()
private fun newTestSetup(initialStage: OnboardingStage) = OnboardingTestSetup(composeTestRule, initialStage)
@@ -49,25 +49,4 @@ class OnboardingIntegrationTest : UiTestPrerequisites() {
assertEquals(OnboardingStage.More, testSetup.getOnboardingStage())
}
-
- @Test
- @MediumTest
- fun current_stage_restoration_activity() {
- val testSetup = newTestSetup(OnboardingStage.ShieldedByDefault)
- testSetup.setDefaultContent()
-
- assertEquals(OnboardingStage.ShieldedByDefault, testSetup.getOnboardingStage())
-
- composeTestRule.onNodeWithText(getStringResource(R.string.onboarding_next)).also {
- it.performClick()
- }
-
- assertEquals(OnboardingStage.UnifiedAddresses, testSetup.getOnboardingStage())
-
- composeTestRule.activityRule.scenario.onActivity {
- it.recreate()
- }
-
- assertEquals(OnboardingStage.UnifiedAddresses, testSetup.getOnboardingStage())
- }
}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/TestUpdateActivity.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/TestUpdateActivity.kt
deleted file mode 100644
index 7c74c528..00000000
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/TestUpdateActivity.kt
+++ /dev/null
@@ -1,36 +0,0 @@
-package co.electriccoin.zcash.ui.screen.update
-
-import android.os.Bundle
-import androidx.activity.ComponentActivity
-import androidx.activity.compose.setContent
-import androidx.compose.foundation.layout.fillMaxHeight
-import androidx.compose.foundation.layout.fillMaxWidth
-import androidx.compose.ui.Modifier
-import co.electriccoin.zcash.ui.design.component.GradientSurface
-import co.electriccoin.zcash.ui.design.theme.ZcashTheme
-import co.electriccoin.zcash.ui.screen.update.fixture.UpdateInfoFixture
-
-class TestUpdateActivity : ComponentActivity() {
-
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setupUiContent()
- }
-
- private fun setupUiContent() {
- setContent {
- ZcashTheme {
- GradientSurface(
- Modifier
- .fillMaxWidth()
- .fillMaxHeight()
- ) {
- WrapUpdate(
- this,
- UpdateInfoFixture.new(appUpdateInfo = null)
- )
- }
- }
- }
- }
-}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewActivityTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewActivityTest.kt
new file mode 100644
index 00000000..9d640caf
--- /dev/null
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewActivityTest.kt
@@ -0,0 +1,59 @@
+package co.electriccoin.zcash.ui.screen.update.integration
+
+import androidx.compose.ui.test.junit4.ComposeContentTestRule
+import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.onNodeWithTag
+import androidx.compose.ui.test.performClick
+import androidx.test.filters.MediumTest
+import co.electriccoin.zcash.test.UiTestPrerequisites
+import co.electriccoin.zcash.ui.common.UiTestingActivity
+import co.electriccoin.zcash.ui.screen.update.AppUpdateChecker
+import co.electriccoin.zcash.ui.screen.update.UpdateTag
+import co.electriccoin.zcash.ui.screen.update.fixture.UpdateInfoFixture
+import co.electriccoin.zcash.ui.screen.update.model.UpdateInfo
+import co.electriccoin.zcash.ui.screen.update.model.UpdateState
+import co.electriccoin.zcash.ui.screen.update.view.UpdateViewTestSetup
+import org.junit.Assert.assertEquals
+import org.junit.Rule
+import org.junit.Test
+
+class UpdateActivityViewTest : UiTestPrerequisites() {
+
+ @get:Rule
+ val composeTestRule = createAndroidComposeRule()
+
+ @Test
+ @MediumTest
+ fun later_btn_force_update_test() {
+ val updateInfo = UpdateInfoFixture.new(
+ priority = AppUpdateChecker.Priority.HIGH,
+ force = true,
+ appUpdateInfo = null,
+ state = UpdateState.Prepared,
+ )
+ val testSetup = newTestSetup(updateInfo)
+
+ assertEquals(0, testSetup.getOnLaterCount())
+
+ composeTestRule.clickLater()
+
+ assertEquals(0, testSetup.getOnLaterCount())
+
+ composeTestRule.activity.onBackPressed()
+
+ assertEquals(0, testSetup.getOnLaterCount())
+ }
+
+ private fun newTestSetup(updateInfo: UpdateInfo) = UpdateViewTestSetup(
+ composeTestRule,
+ updateInfo
+ ).apply {
+ setDefaultContent()
+ }
+}
+
+private fun ComposeContentTestRule.clickLater() {
+ onNodeWithTag(UpdateTag.BTN_LATER).also {
+ it.performClick()
+ }
+}
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewModelTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewModelTest.kt
index 4353a156..b9794f90 100644
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewModelTest.kt
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/integration/UpdateViewModelTest.kt
@@ -3,8 +3,8 @@ package co.electriccoin.zcash.ui.screen.update.integration
import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.lifecycle.viewModelScope
import androidx.test.filters.MediumTest
+import co.electriccoin.zcash.ui.common.UiTestingActivity
import co.electriccoin.zcash.ui.screen.update.AppUpdateChecker
-import co.electriccoin.zcash.ui.screen.update.TestUpdateActivity
import co.electriccoin.zcash.ui.screen.update.fixture.UpdateInfoFixture
import co.electriccoin.zcash.ui.screen.update.model.UpdateInfo
import co.electriccoin.zcash.ui.screen.update.model.UpdateState
@@ -26,7 +26,7 @@ import kotlin.test.assertNull
@ExperimentalCoroutinesApi
class UpdateViewModelTest {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createAndroidComposeRule()
private lateinit var viewModel: UpdateViewModel
private lateinit var checker: AppUpdateCheckerMock
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/AppUpdateCheckerImpTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/AppUpdateCheckerImpTest.kt
index 4c44c2f0..7e5fa640 100644
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/AppUpdateCheckerImpTest.kt
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/AppUpdateCheckerImpTest.kt
@@ -2,12 +2,12 @@ package co.electriccoin.zcash.ui.screen.update.view
import android.app.Activity
import android.content.Context
+import androidx.activity.ComponentActivity
import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.test.core.app.ApplicationProvider
import androidx.test.filters.MediumTest
import cash.z.ecc.android.sdk.ext.onFirst
import co.electriccoin.zcash.ui.screen.update.AppUpdateCheckerImp
-import co.electriccoin.zcash.ui.screen.update.TestUpdateActivity
import co.electriccoin.zcash.ui.screen.update.model.UpdateInfo
import co.electriccoin.zcash.ui.screen.update.model.UpdateState
import com.google.android.play.core.install.model.ActivityResult
@@ -15,7 +15,7 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.test.runTest
import org.junit.Rule
-import kotlin.test.Test
+import org.junit.Test
import kotlin.test.assertNotNull
import kotlin.test.assertNull
import kotlin.test.assertTrue
@@ -23,7 +23,7 @@ import kotlin.test.assertTrue
class AppUpdateCheckerImpTest {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
+ val composeTestRule = createAndroidComposeRule()
companion object {
val context: Context = ApplicationProvider.getApplicationContext()
diff --git a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/UpdateViewTest.kt b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/UpdateViewTest.kt
index a2151992..42657941 100644
--- a/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/UpdateViewTest.kt
+++ b/ui-lib/src/androidTest/java/co/electriccoin/zcash/ui/screen/update/view/UpdateViewTest.kt
@@ -1,7 +1,7 @@
package co.electriccoin.zcash.ui.screen.update.view
import androidx.compose.ui.test.junit4.ComposeContentTestRule
-import androidx.compose.ui.test.junit4.createAndroidComposeRule
+import androidx.compose.ui.test.junit4.createComposeRule
import androidx.compose.ui.test.onNodeWithTag
import androidx.compose.ui.test.onNodeWithText
import androidx.compose.ui.test.onRoot
@@ -10,7 +10,6 @@ import androidx.test.filters.MediumTest
import co.electriccoin.zcash.test.UiTestPrerequisites
import co.electriccoin.zcash.ui.R
import co.electriccoin.zcash.ui.screen.update.AppUpdateChecker
-import co.electriccoin.zcash.ui.screen.update.TestUpdateActivity
import co.electriccoin.zcash.ui.screen.update.UpdateTag
import co.electriccoin.zcash.ui.screen.update.fixture.UpdateInfoFixture
import co.electriccoin.zcash.ui.screen.update.model.UpdateInfo
@@ -24,29 +23,7 @@ import org.junit.Test
class UpdateViewTest : UiTestPrerequisites() {
@get:Rule
- val composeTestRule = createAndroidComposeRule()
-
- @Test
- @MediumTest
- fun later_btn_force_update_test() {
- val updateInfo = UpdateInfoFixture.new(
- priority = AppUpdateChecker.Priority.HIGH,
- force = true,
- appUpdateInfo = null,
- state = UpdateState.Prepared,
- )
- val testSetup = newTestSetup(updateInfo)
-
- assertEquals(0, testSetup.getOnLaterCount())
-
- composeTestRule.clickLater()
-
- assertEquals(0, testSetup.getOnLaterCount())
-
- composeTestRule.activity.onBackPressed()
-
- assertEquals(0, testSetup.getOnLaterCount())
- }
+ val composeTestRule = createComposeRule()
@Test
@MediumTest
diff --git a/ui-lib/src/main/java/co/electriccoin/zcash/ui/MainActivity.kt b/ui-lib/src/main/java/co/electriccoin/zcash/ui/MainActivity.kt
index cfa31d9e..927a6f28 100644
--- a/ui-lib/src/main/java/co/electriccoin/zcash/ui/MainActivity.kt
+++ b/ui-lib/src/main/java/co/electriccoin/zcash/ui/MainActivity.kt
@@ -23,7 +23,6 @@ import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
import cash.z.ecc.sdk.model.ZecRequest
import cash.z.ecc.sdk.send
-import co.electriccoin.zcash.ui.design.compat.FontCompat
import co.electriccoin.zcash.ui.design.component.ConfigurationOverride
import co.electriccoin.zcash.ui.design.component.GradientSurface
import co.electriccoin.zcash.ui.design.component.Override
@@ -82,15 +81,7 @@ class MainActivity : ComponentActivity() {
setupSplashScreen()
- if (FontCompat.isFontPrefetchNeeded()) {
- lifecycleScope.launch {
- FontCompat.prefetchFontsLegacy(applicationContext)
-
- setupUiContent()
- }
- } else {
- setupUiContent()
- }
+ setupUiContent()
}
private fun setupSplashScreen() {