feat: add responsive spacing and padding system (Closes #3)
This commit was merged in pull request #42.
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
package org.shahondin1624
|
||||
|
||||
import androidx.compose.ui.unit.dp
|
||||
import org.shahondin1624.lib.components.UiConstants
|
||||
import org.shahondin1624.theme.WindowSizeClass
|
||||
import kotlin.test.Test
|
||||
import kotlin.test.assertEquals
|
||||
import kotlin.test.assertTrue
|
||||
|
||||
class SpacingTest {
|
||||
|
||||
@Test
|
||||
fun smallSpacingScalesWithSizeClass() {
|
||||
val compact = UiConstants.Spacing.small(WindowSizeClass.Compact)
|
||||
val medium = UiConstants.Spacing.small(WindowSizeClass.Medium)
|
||||
val expanded = UiConstants.Spacing.small(WindowSizeClass.Expanded)
|
||||
|
||||
assertEquals(8.dp, compact)
|
||||
assertEquals(12.dp, medium)
|
||||
assertEquals(16.dp, expanded)
|
||||
assertTrue(compact < medium, "Compact small should be less than Medium small")
|
||||
assertTrue(medium < expanded, "Medium small should be less than Expanded small")
|
||||
}
|
||||
|
||||
@Test
|
||||
fun mediumSpacingScalesWithSizeClass() {
|
||||
val compact = UiConstants.Spacing.medium(WindowSizeClass.Compact)
|
||||
val medium = UiConstants.Spacing.medium(WindowSizeClass.Medium)
|
||||
val expanded = UiConstants.Spacing.medium(WindowSizeClass.Expanded)
|
||||
|
||||
assertEquals(12.dp, compact)
|
||||
assertEquals(16.dp, medium)
|
||||
assertEquals(20.dp, expanded)
|
||||
assertTrue(compact < medium)
|
||||
assertTrue(medium < expanded)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun largeSpacingScalesWithSizeClass() {
|
||||
val compact = UiConstants.Spacing.large(WindowSizeClass.Compact)
|
||||
val medium = UiConstants.Spacing.large(WindowSizeClass.Medium)
|
||||
val expanded = UiConstants.Spacing.large(WindowSizeClass.Expanded)
|
||||
|
||||
assertEquals(12.dp, compact)
|
||||
assertEquals(16.dp, medium)
|
||||
assertEquals(24.dp, expanded)
|
||||
assertTrue(compact < medium)
|
||||
assertTrue(medium < expanded)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun compactSpacingIsWithinRange() {
|
||||
val small = UiConstants.Spacing.small(WindowSizeClass.Compact)
|
||||
val med = UiConstants.Spacing.medium(WindowSizeClass.Compact)
|
||||
val large = UiConstants.Spacing.large(WindowSizeClass.Compact)
|
||||
assertTrue(small >= 8.dp && small <= 12.dp, "Compact small in 8-12dp range")
|
||||
assertTrue(med >= 8.dp && med <= 12.dp, "Compact medium in 8-12dp range")
|
||||
assertTrue(large >= 8.dp && large <= 12.dp, "Compact large in 8-12dp range")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user