blob: 5a6610aae9ea0fb36367830dd9d67d1fb1a60799 [file] [log] [blame]
/*
* 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);
}
}