• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2007 Mockito contributors
3  * This program is made available under the terms of the MIT License.
4  */
5 package org.mockito.verification;
6 
7 import static org.mockito.internal.exceptions.Reporter.atMostAndNeverShouldNotBeUsedWithTimeout;
8 
9 import org.mockito.internal.util.Timer;
10 import org.mockito.internal.verification.VerificationModeFactory;
11 import org.mockito.internal.verification.VerificationOverTimeImpl;
12 import org.mockito.internal.verification.VerificationWrapper;
13 
14 /**
15  * See the javadoc for {@link VerificationWithTimeout}
16  * <p>
17  * Typically, you won't use this class explicitly. Instead use timeout() method on Mockito class.
18  * See javadoc for {@link VerificationWithTimeout}
19  */
20 public class Timeout extends VerificationWrapper<VerificationOverTimeImpl> implements VerificationWithTimeout {
21 
22     /**
23      * See the javadoc for {@link VerificationWithTimeout}
24      * <p>
25      * Typically, you won't use this class explicitly. Instead use timeout() method on Mockito class.
26      * See javadoc for {@link VerificationWithTimeout}
27      */
Timeout(long millis, VerificationMode delegate)28     public Timeout(long millis, VerificationMode delegate) {
29         this(10, millis, delegate);
30     }
31 
32     /**
33      * See the javadoc for {@link VerificationWithTimeout}
34      */
Timeout(long pollingPeriodMillis, long millis, VerificationMode delegate)35     Timeout(long pollingPeriodMillis, long millis, VerificationMode delegate) {
36         this(new VerificationOverTimeImpl(pollingPeriodMillis, millis, delegate, true));
37     }
38 
39     /**
40      * See the javadoc for {@link VerificationWithTimeout}
41      */
Timeout(long pollingPeriodMillis, VerificationMode delegate, Timer timer)42     Timeout(long pollingPeriodMillis, VerificationMode delegate, Timer timer) {
43         this(new VerificationOverTimeImpl(pollingPeriodMillis, delegate, true, timer));
44     }
45 
Timeout(VerificationOverTimeImpl verificationOverTime)46     Timeout(VerificationOverTimeImpl verificationOverTime) {
47         super(verificationOverTime);
48     }
49 
50     @Override
copySelfWithNewVerificationMode(VerificationMode newVerificationMode)51     protected VerificationMode copySelfWithNewVerificationMode(VerificationMode newVerificationMode) {
52         return new Timeout(wrappedVerification.copyWithVerificationMode(newVerificationMode));
53     }
54 
atMost(int maxNumberOfInvocations)55     public VerificationMode atMost(int maxNumberOfInvocations) {
56         throw atMostAndNeverShouldNotBeUsedWithTimeout();
57     }
58 
never()59     public VerificationMode never() {
60         throw atMostAndNeverShouldNotBeUsedWithTimeout();
61     }
62 
63     @Override
description(String description)64     public VerificationMode description(String description) {
65         return VerificationModeFactory.description(this, description);
66     }
67 
68 }
69