38 lines
1015 B
Kotlin
38 lines
1015 B
Kotlin
package com.example.aiapp
|
|
|
|
import androidx.compose.ui.geometry.Offset
|
|
import kotlin.test.Test
|
|
import kotlin.test.assertEquals
|
|
|
|
class SessionImageTest {
|
|
@Test
|
|
fun `zoom keeps the region panned to in the center`() {
|
|
assertEquals(
|
|
Offset(240f, -160f),
|
|
zoomOffset(
|
|
offset = Offset(120f, -80f),
|
|
centroid = Offset(500f, 1000f),
|
|
pan = Offset.Zero,
|
|
oldScale = 2f,
|
|
newScale = 4f,
|
|
viewportCenter = Offset(500f, 1000f),
|
|
),
|
|
)
|
|
}
|
|
|
|
@Test
|
|
fun `zoom keeps an off-center pinch beneath moving fingers`() {
|
|
assertEquals(
|
|
Offset(460f, 420f),
|
|
zoomOffset(
|
|
offset = Offset(100f, -100f),
|
|
centroid = Offset(250f, 400f),
|
|
pan = Offset(10f, 20f),
|
|
oldScale = 2f,
|
|
newScale = 4f,
|
|
viewportCenter = Offset(500f, 1000f),
|
|
),
|
|
)
|
|
}
|
|
}
|