| /* |
| * Copyright (c) 2007 Mockito contributors |
| * This program is made available under the terms of the MIT License. |
| */ |
| |
| package org.mockitousage.verification; |
| |
| import org.junit.Test; |
| import org.mockito.Mockito; |
| import org.mockitoutil.TestBase; |
| |
| import java.util.HashMap; |
| import java.util.List; |
| import java.util.Map; |
| import java.util.Set; |
| |
| import static org.mockito.Mockito.*; |
| |
| @SuppressWarnings("unchecked") |
| public class VerificationOnMultipleMocksUsingMatchersTest extends TestBase { |
| |
| @Test |
| public void shouldVerifyUsingMatchers() throws Exception { |
| List<Object> list = Mockito.mock(List.class); |
| HashMap<Object, Object> map = Mockito.mock(HashMap.class); |
| |
| list.add("test"); |
| list.add(1, "test two"); |
| |
| map.put("test", 100); |
| map.put("test two", 200); |
| |
| verify(list).add(anyObject()); |
| verify(list).add(anyInt(), eq("test two")); |
| |
| verify(map, times(2)).put(anyObject(), anyObject()); |
| verify(map).put(eq("test two"), eq(200)); |
| |
| verifyNoMoreInteractions(list, map); |
| } |
| |
| @Test |
| public void shouldVerifyMultipleMocks() throws Exception { |
| List<String> list = mock(List.class); |
| Map<Object, Integer> map = mock(Map.class); |
| Set<?> set = mock(Set.class); |
| |
| list.add("one"); |
| list.add("one"); |
| list.add("two"); |
| |
| map.put("one", 1); |
| map.put("one", 1); |
| |
| verify(list, times(2)).add("one"); |
| verify(list, times(1)).add("two"); |
| verify(list, times(0)).add("three"); |
| |
| verify(map, times(2)).put(anyObject(), anyInt()); |
| |
| verifyNoMoreInteractions(list, map); |
| verifyZeroInteractions(set); |
| verifyNoInteractions(set); |
| } |
| } |