• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package test
2 
3 import org.mockito.kotlin.any
4 import org.mockito.kotlin.mock
5 import org.mockito.kotlin.verify
6 import org.junit.Test
7 import org.mockito.exceptions.verification.TooLittleActualInvocations
8 import org.mockito.exceptions.verification.junit.ArgumentsAreDifferent
9 
10 class VerifyTest : TestBase() {
11 
12     @Test
verify0Callsnull13     fun verify0Calls() {
14         val iface = mock<TestInterface>()
15 
16         verify(iface) {
17             0 * { call(any()) }
18         }
19     }
20 
21     @Test
verifyNCallsnull22     fun verifyNCalls() {
23         val iface = mock<TestInterface>()
24 
25         iface.call(42)
26         iface.call(42)
27 
28         verify(iface) {
29             2 * { call(42) }
30         }
31     }
32 
33     @Test(expected = TooLittleActualInvocations::class)
verifyFailsWithWrongCountnull34     fun verifyFailsWithWrongCount() {
35         val iface = mock<TestInterface>()
36 
37         iface.call(0)
38 
39         verify(iface) {
40             2 * { call(0) }
41         }
42     }
43 
44     @Test(expected = ArgumentsAreDifferent::class)
verifyFailsWithWrongArgnull45     fun verifyFailsWithWrongArg() {
46         val iface = mock<TestInterface>()
47 
48         iface.call(3)
49 
50         verify(iface) {
51             1 * { call(0) }
52         }
53     }
54 
55     @Test
verifyDefaultArgs_firstParameternull56     fun verifyDefaultArgs_firstParameter() {
57         /* Given */
58         val m = mock<TestInterface>()
59 
60         /* When */
61         m.defaultArgs(a = 2)
62 
63         /* Then */
64         verify(m).defaultArgs(2)
65     }
66 
67     @Test
verifyDefaultArgs_secondParameternull68     fun verifyDefaultArgs_secondParameter() {
69         /* Given */
70         val m = mock<TestInterface>()
71 
72         /* When */
73         m.defaultArgs(b = 2)
74 
75         /* Then */
76         verify(m).defaultArgs(b = 2)
77     }
78 
79     @Test
verifyDefaultArgs_verifyDefaultValuenull80     fun verifyDefaultArgs_verifyDefaultValue() {
81         /* Given */
82         val m = mock<TestInterface>()
83 
84         /* When */
85         m.defaultArgs(b = 2)
86 
87         /* Then */
88         verify(m).defaultArgs(a = 3, b = 2)
89     }
90 
91     interface TestInterface {
callnull92         fun call(arg: Int)
93 
94         fun defaultArgs(a: Int = 3, b: Int = 42)
95     }
96 }