package de.hanbei.httpserver.common; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThat; import static org.hamcrest.Matchers.hasItems; import java.util.List; import org.junit.Before; import org.junit.Test; public class MultiValuedMapTest { private MultiValuedMap<String, String> map; @Before public void setup() { map = new MultiValuedMap<String, String>(); } @Test public void testAdd() { map.add("Test", "Test1"); map.add("Test", "Test2"); map.add("Test", "Test3"); List<String> list = map.get("Test"); assertEquals(3, list.size()); assertThat(list, hasItems("Test1", "Test2", "Test3")); } @Test public void testGetFirst() { map.add("Test", "Test2"); map.add("Test", "Test1"); map.add("Test", "Test3"); assertEquals("Test2", map.getFirst("Test")); } @Test public void testAddFirst() { map.add("Test", "Test2"); map.add("Test", "Test1"); map.add("Test", "Test3"); assertEquals("Test2", map.getFirst("Test")); map.addFirst("Test", "Test4"); assertEquals("Test4", map.getFirst("Test")); } @Test public void testPutSingle() { map.add("Test", "Test2"); map.add("Test", "Test1"); map.add("Test", "Test3"); List<String> list = map.get("Test"); assertEquals(3, list.size()); assertThat(list, hasItems("Test1", "Test2", "Test3")); map.putSingle("Test", "Test5"); list = map.get("Test"); assertEquals(1, list.size()); assertThat(list, hasItems("Test5")); } }