@@ -10,16 +10,17 @@ package kotlinx.coroutines
10
10
import kotlinx.coroutines.channels.*
11
11
import kotlin.test.*
12
12
import kotlin.time.*
13
+ import kotlin.time.Duration.Companion.milliseconds
14
+ import kotlin.time.Duration.Companion.seconds
13
15
14
- @ExperimentalTime
15
16
class WithTimeoutOrNullDurationTest : TestBase () {
16
17
/* *
17
18
* Tests a case of no timeout and no suspension inside.
18
19
*/
19
20
@Test
20
21
fun testBasicNoSuspend () = runTest {
21
22
expect(1 )
22
- val result = withTimeoutOrNull(Duration .seconds( 10 ) ) {
23
+ val result = withTimeoutOrNull(10 .seconds) {
23
24
expect(2 )
24
25
" OK"
25
26
}
@@ -33,7 +34,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
33
34
@Test
34
35
fun testBasicSuspend () = runTest {
35
36
expect(1 )
36
- val result = withTimeoutOrNull(Duration .seconds( 10 ) ) {
37
+ val result = withTimeoutOrNull(10 .seconds) {
37
38
expect(2 )
38
39
yield ()
39
40
expect(3 )
@@ -56,7 +57,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
56
57
}
57
58
expect(2 )
58
59
// test that it does not yield to the above job when started
59
- val result = withTimeoutOrNull(Duration .seconds( 1 ) ) {
60
+ val result = withTimeoutOrNull(1 .seconds) {
60
61
expect(3 )
61
62
yield () // yield only now
62
63
expect(5 )
@@ -74,7 +75,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
74
75
@Test
75
76
fun testYieldBlockingWithTimeout () = runTest {
76
77
expect(1 )
77
- val result = withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
78
+ val result = withTimeoutOrNull(100 .milliseconds) {
78
79
while (true ) {
79
80
yield ()
80
81
}
@@ -86,7 +87,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
86
87
@Test
87
88
fun testSmallTimeout () = runTest {
88
89
val channel = Channel <Int >(1 )
89
- val value = withTimeoutOrNull(Duration .milliseconds( 1 ) ) {
90
+ val value = withTimeoutOrNull(1 .milliseconds) {
90
91
channel.receive()
91
92
}
92
93
assertNull(value)
@@ -103,8 +104,8 @@ class WithTimeoutOrNullDurationTest : TestBase() {
103
104
fun testInnerTimeout () = runTest(
104
105
expected = { it is CancellationException }
105
106
) {
106
- withTimeoutOrNull(Duration .milliseconds( 1000 ) ) {
107
- withTimeout(Duration .milliseconds( 10 ) ) {
107
+ withTimeoutOrNull(1000 .milliseconds) {
108
+ withTimeout(10 .milliseconds) {
108
109
while (true ) {
109
110
yield ()
110
111
}
@@ -119,7 +120,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
119
120
fun testNestedTimeout () = runTest(expected = { it is TimeoutCancellationException }) {
120
121
withTimeoutOrNull(Duration .INFINITE ) {
121
122
// Exception from this withTimeout is not suppressed by withTimeoutOrNull
122
- withTimeout(Duration .milliseconds( 10 ) ) {
123
+ withTimeout(10 .milliseconds) {
123
124
delay(Duration .INFINITE )
124
125
1
125
126
}
@@ -131,9 +132,9 @@ class WithTimeoutOrNullDurationTest : TestBase() {
131
132
@Test
132
133
fun testOuterTimeout () = runTest {
133
134
var counter = 0
134
- val result = withTimeoutOrNull(Duration .milliseconds( 250 ) ) {
135
+ val result = withTimeoutOrNull(250 .milliseconds) {
135
136
while (true ) {
136
- val inner = withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
137
+ val inner = withTimeoutOrNull(100 .milliseconds) {
137
138
while (true ) {
138
139
yield ()
139
140
}
@@ -149,7 +150,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
149
150
@Test
150
151
fun testBadClass () = runTest {
151
152
val bad = BadClass ()
152
- val result = withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
153
+ val result = withTimeoutOrNull(100 .milliseconds) {
153
154
bad
154
155
}
155
156
assertSame(bad, result)
@@ -164,9 +165,9 @@ class WithTimeoutOrNullDurationTest : TestBase() {
164
165
@Test
165
166
fun testNullOnTimeout () = runTest {
166
167
expect(1 )
167
- val result = withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
168
+ val result = withTimeoutOrNull(100 .milliseconds) {
168
169
expect(2 )
169
- delay(Duration .milliseconds( 1000 ) )
170
+ delay(1000 .milliseconds)
170
171
expectUnreached()
171
172
" OK"
172
173
}
@@ -177,10 +178,10 @@ class WithTimeoutOrNullDurationTest : TestBase() {
177
178
@Test
178
179
fun testSuppressExceptionWithResult () = runTest {
179
180
expect(1 )
180
- val result = withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
181
+ val result = withTimeoutOrNull(100 .milliseconds) {
181
182
expect(2 )
182
183
try {
183
- delay(Duration .milliseconds( 1000 ) )
184
+ delay(1000 .milliseconds)
184
185
} catch (e: CancellationException ) {
185
186
expect(3 )
186
187
}
@@ -194,10 +195,10 @@ class WithTimeoutOrNullDurationTest : TestBase() {
194
195
fun testSuppressExceptionWithAnotherException () = runTest {
195
196
expect(1 )
196
197
try {
197
- withTimeoutOrNull(Duration .milliseconds( 100 ) ) {
198
+ withTimeoutOrNull(100 .milliseconds) {
198
199
expect(2 )
199
200
try {
200
- delay(Duration .milliseconds( 1000 ) )
201
+ delay(1000 .milliseconds)
201
202
} catch (e: CancellationException ) {
202
203
expect(3 )
203
204
throw TestException ()
@@ -216,11 +217,11 @@ class WithTimeoutOrNullDurationTest : TestBase() {
216
217
@Test
217
218
fun testNegativeTimeout () = runTest {
218
219
expect(1 )
219
- var result = withTimeoutOrNull(- Duration .milliseconds( 1 ) ) {
220
+ var result = withTimeoutOrNull(- 1 .milliseconds) {
220
221
expectUnreached()
221
222
}
222
223
assertNull(result)
223
- result = withTimeoutOrNull(Duration .milliseconds( 0 ) ) {
224
+ result = withTimeoutOrNull(0 .milliseconds) {
224
225
expectUnreached()
225
226
}
226
227
assertNull(result)
@@ -232,7 +233,7 @@ class WithTimeoutOrNullDurationTest : TestBase() {
232
233
expect(1 )
233
234
try {
234
235
expect(2 )
235
- withTimeoutOrNull<Unit >(Duration .milliseconds( 1000 ) ) {
236
+ withTimeoutOrNull<Unit >(1000 .milliseconds) {
236
237
expect(3 )
237
238
throw TestException ()
238
239
}
0 commit comments