@@ -6,109 +6,109 @@ import org.junit.Test
6
6
class JobTest {
7
7
@Test
8
8
fun testState () {
9
- val lifetime = JobSupport ()
10
- assertTrue(lifetime .isActive)
11
- lifetime .cancel()
12
- assertFalse(lifetime .isActive)
9
+ val job = JobSupport ()
10
+ assertTrue(job .isActive)
11
+ job .cancel()
12
+ assertFalse(job .isActive)
13
13
}
14
14
15
15
@Test
16
16
fun testHandler () {
17
- val lifetime = JobSupport ()
17
+ val job = JobSupport ()
18
18
var fireCount = 0
19
- lifetime .onCompletion { fireCount++ }
20
- assertTrue(lifetime .isActive)
19
+ job .onCompletion { fireCount++ }
20
+ assertTrue(job .isActive)
21
21
assertEquals(0 , fireCount)
22
22
// cancel once
23
- lifetime .cancel()
24
- assertFalse(lifetime .isActive)
23
+ job .cancel()
24
+ assertFalse(job .isActive)
25
25
assertEquals(1 , fireCount)
26
26
// cancel again
27
- lifetime .cancel()
28
- assertFalse(lifetime .isActive)
27
+ job .cancel()
28
+ assertFalse(job .isActive)
29
29
assertEquals(1 , fireCount)
30
30
}
31
31
32
32
@Test
33
33
fun testManyHandlers () {
34
- val lifetime = JobSupport ()
34
+ val job = JobSupport ()
35
35
val n = 100
36
36
val fireCount = IntArray (n)
37
- for (i in 0 until n) lifetime .onCompletion { fireCount[i]++ }
38
- assertTrue(lifetime .isActive)
37
+ for (i in 0 until n) job .onCompletion { fireCount[i]++ }
38
+ assertTrue(job .isActive)
39
39
for (i in 0 until n) assertEquals(0 , fireCount[i])
40
40
// cancel once
41
- lifetime .cancel()
42
- assertFalse(lifetime .isActive)
41
+ job .cancel()
42
+ assertFalse(job .isActive)
43
43
for (i in 0 until n) assertEquals(1 , fireCount[i])
44
44
// cancel again
45
- lifetime .cancel()
46
- assertFalse(lifetime .isActive)
45
+ job .cancel()
46
+ assertFalse(job .isActive)
47
47
for (i in 0 until n) assertEquals(1 , fireCount[i])
48
48
}
49
49
50
50
@Test
51
51
fun testUnregisterInHandler () {
52
- val lifetime = JobSupport ()
52
+ val job = JobSupport ()
53
53
val n = 100
54
54
val fireCount = IntArray (n)
55
55
for (i in 0 until n) {
56
56
var registration: Job .Registration ? = null
57
- registration = lifetime .onCompletion {
57
+ registration = job .onCompletion {
58
58
fireCount[i]++
59
59
registration!! .unregister()
60
60
}
61
61
}
62
- assertTrue(lifetime .isActive)
62
+ assertTrue(job .isActive)
63
63
for (i in 0 until n) assertEquals(0 , fireCount[i])
64
64
// cancel once
65
- lifetime .cancel()
66
- assertFalse(lifetime .isActive)
65
+ job .cancel()
66
+ assertFalse(job .isActive)
67
67
for (i in 0 until n) assertEquals(1 , fireCount[i])
68
68
// cancel again
69
- lifetime .cancel()
70
- assertFalse(lifetime .isActive)
69
+ job .cancel()
70
+ assertFalse(job .isActive)
71
71
for (i in 0 until n) assertEquals(1 , fireCount[i])
72
72
}
73
73
74
74
@Test
75
75
fun testManyHandlersWithUnregister () {
76
- val lifetime = JobSupport ()
76
+ val job = JobSupport ()
77
77
val n = 100
78
78
val fireCount = IntArray (n)
79
- val registrations = Array <Job .Registration >(n) { i -> lifetime .onCompletion { fireCount[i]++ } }
80
- assertTrue(lifetime .isActive)
79
+ val registrations = Array <Job .Registration >(n) { i -> job .onCompletion { fireCount[i]++ } }
80
+ assertTrue(job .isActive)
81
81
fun unreg (i : Int ) = i % 4 <= 1
82
82
for (i in 0 until n) if (unreg(i)) registrations[i].unregister()
83
83
for (i in 0 until n) assertEquals(0 , fireCount[i])
84
- lifetime .cancel()
85
- assertFalse(lifetime .isActive)
84
+ job .cancel()
85
+ assertFalse(job .isActive)
86
86
for (i in 0 until n) assertEquals(if (unreg(i)) 0 else 1 , fireCount[i])
87
87
}
88
88
89
89
@Test
90
90
fun testExceptionsInHandler () {
91
- val lifetime = JobSupport ()
91
+ val job = JobSupport ()
92
92
val n = 100
93
93
val fireCount = IntArray (n)
94
94
class TestException : Throwable ()
95
- for (i in 0 until n) lifetime .onCompletion {
95
+ for (i in 0 until n) job .onCompletion {
96
96
fireCount[i]++
97
97
throw TestException ()
98
98
}
99
- assertTrue(lifetime .isActive)
99
+ assertTrue(job .isActive)
100
100
for (i in 0 until n) assertEquals(0 , fireCount[i])
101
- val tryCancel = ` try ` <Unit > { lifetime .cancel() }
102
- assertFalse(lifetime .isActive)
101
+ val tryCancel = Try <Unit > { job .cancel() }
102
+ assertFalse(job .isActive)
103
103
for (i in 0 until n) assertEquals(1 , fireCount[i])
104
104
assertTrue(tryCancel.exception is TestException )
105
105
}
106
106
107
107
@Test
108
108
fun testMemoryRelease () {
109
- val lifetime = JobSupport ()
109
+ val job = JobSupport ()
110
110
val n = 10_000_000
111
111
var fireCount = 0
112
- for (i in 0 until n) lifetime .onCompletion { fireCount++ }.unregister()
112
+ for (i in 0 until n) job .onCompletion { fireCount++ }.unregister()
113
113
}
114
114
}
0 commit comments