### Question:
CookieUtils { public static List<Cookie> getCookiesForName(HttpServletRequest request, String name) { List<Cookie> cookiesByName = new ArrayList<>(); Cookie[] cookies = request.getCookies(); if (cookies != null) { for(Cookie cookie : cookies){ if(name.equals(cookie.getName())){ cookiesByName.add(cookie); } } } if (cookiesByName.isEmpty()) { LOGGER.cookieNotFound(name); } return cookiesByName; } private  CookieUtils(); static List<Cookie> getCookiesForName(HttpServletRequest request, String name);  }### Answer:
@Test public void testNoCookies() { HttpServletRequest httpServletRequest = EasyMock.createMock(HttpServletRequest.class); EasyMock.expect(httpServletRequest.getCookies()).andReturn(null); EasyMock.replay(httpServletRequest); Assert.assertTrue(CookieUtils.getCookiesForName(httpServletRequest, "any").isEmpty()); }
@Test public void testNoCookiesByName() { Cookie[] cookies = new Cookie[] { new Cookie("one", "1"), new Cookie("two", "2") }; HttpServletRequest httpServletRequest = EasyMock.createMock(HttpServletRequest.class); EasyMock.expect(httpServletRequest.getCookies()).andReturn(cookies); EasyMock.replay(httpServletRequest); Assert.assertTrue(CookieUtils.getCookiesForName(httpServletRequest, "noMatch").isEmpty()); }
@Test public void testCookiesByName() { Cookie one = new Cookie("one", "1"); Cookie two = new Cookie("two", "2"); Cookie onea = new Cookie("one", "1a"); Cookie[] expectedCookies = new Cookie[] { one, two, onea }; HttpServletRequest httpServletRequest = EasyMock.createMock(HttpServletRequest.class); EasyMock.expect(httpServletRequest.getCookies()).andReturn(expectedCookies); EasyMock.replay(httpServletRequest); List<Cookie> actualCookies = CookieUtils.getCookiesForName(httpServletRequest, "one"); Assert.assertEquals(2, actualCookies.size()); Assert.assertEquals(one, actualCookies.get(0)); Assert.assertEquals(onea, actualCookies.get(1)); }