mirror of
https://github.com/austinried/subtracks.git
synced 2026-11-10 23:21:59 +01:00
colour letter placeholders by name and seed artwork themes from them
This commit is contained in:
@@ -3,6 +3,7 @@ package com.subtracks.ui.theme
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.luminance
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertNotEquals
|
||||
import org.junit.Assert.assertTrue
|
||||
import org.junit.Test
|
||||
|
||||
@@ -27,6 +28,14 @@ class ArtworkColorsTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun placeholderColourDependsOnTheNameAndIsNotGrey() {
|
||||
assertEquals(0, placeholderSeed(""))
|
||||
assertNotEquals(placeholderSeed("Kid A"), placeholderSeed("Amnesiac"))
|
||||
val (_, saturation, _) = Color(placeholderSeed("Kid A")).toHsl()
|
||||
assertTrue("placeholder should carry colour", saturation > 0f)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun independentOfAlphaBits() {
|
||||
assertEquals(
|
||||
|
||||
@@ -77,6 +77,18 @@ class ArtworkExtractionTest {
|
||||
assertTrue(colors!!.scheme.background.luminance() < 0.1f)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun fallsBackToAPlaceholderColourWhenThereIsNoArt() {
|
||||
var colors: ArtworkColors? = null
|
||||
composeRule.setContent {
|
||||
SubtracksTheme {
|
||||
colors = rememberArtworkColors(null, fallbackName = "Kid A")
|
||||
}
|
||||
}
|
||||
composeRule.waitForIdle()
|
||||
assertEquals(artworkColorsFromSeed(placeholderSeed("Kid A")).scheme.primary, colors?.scheme?.primary)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun keepsContentStateWhenArtworkArrives() {
|
||||
val artwork = mutableStateOf<ArtworkColors?>(null)
|
||||
|
||||
Reference in New Issue
Block a user