1515package org.mydomain.myscan
1616
1717import org.assertj.core.api.Assertions.assertThat
18+ import org.assertj.core.api.Assertions.assertThatThrownBy
1819import org.junit.Test
1920
2021class GeometryTest {
@@ -24,4 +25,36 @@ class GeometryTest {
2425 assertThat(Line (Point (0 , 0 ), Point (10 , 0 )).norm()).isEqualTo(10.0 )
2526 assertThat(Line (Point (1 , 2 ), Point (4 , 6 )).norm()).isEqualTo(5.0 )
2627 }
28+
29+ @Test
30+ fun createQuad () {
31+ val quad = createQuad(listOf (
32+ Point (3 , 9 ), Point (1 ,2 ), Point (11 ,12 ), Point (10 , 3 )))
33+ assertThat(quad).isEqualTo(
34+ Quad (Point (1 ,2 ), Point (10 , 3 ), Point (11 ,12 ), Point (3 , 9 )))
35+ assertThatThrownBy { createQuad(listOf ()) }
36+ .isInstanceOf(IllegalArgumentException ::class .java)
37+ }
38+
39+ @Test
40+ fun rotateQuad () {
41+ val quad = createQuad(listOf (
42+ Point (1 ,2 ), Point (10 , 3 ), Point (11 ,12 ), Point (3 , 9 )))
43+ assertThat(quad.rotate90(1 , 100 , 50 )).isEqualTo(
44+ createQuad(listOf (
45+ Point (48 ,1 ), Point (47 , 10 ), Point (38 ,11 ), Point (41 , 3 )
46+ )))
47+ assertThat(quad.rotate90(2 , 100 , 50 )).isEqualTo(
48+ createQuad(listOf (
49+ Point (99 ,48 ), Point (90 , 47 ), Point (89 ,38 ), Point (97 , 41 )
50+ )))
51+ assertThat(quad.rotate90(3 , 100 , 50 )).isEqualTo(
52+ createQuad(listOf (
53+ Point (2 ,99 ), Point (3 , 90 ), Point (12 ,89 ), Point (9 , 97 )
54+ )))
55+ assertThat(quad.rotate90(4 , 100 , 50 )).isEqualTo(quad)
56+ assertThat(quad.rotate90(5 , 100 , 50 )).isEqualTo(
57+ quad.rotate90(1 , 100 , 50 )
58+ )
59+ }
2760}
0 commit comments