WW-5331 Covers new logic with tests

This commit is contained in:
Lukasz Lenart
2023-08-17 12:51:20 +02:00
parent 5aa1d076b2
commit e1a80789f1
2 changed files with 76 additions and 0 deletions
@@ -94,6 +94,7 @@ public class RequestMap extends AbstractMap<String, Object> implements Serializa
* @param key the name of the request attribute.
* @return the request attribute or <tt>null</tt> if it doesn't exist.
*/
@Override
public Object get(final Object key) {
if (key == null) {
return null;
@@ -0,0 +1,75 @@
package org.apache.struts2.dispatcher;
import org.junit.Test;
import org.springframework.mock.web.MockHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
public class RequestMapTest {
@Test
public void shouldAccessRequestAttributes() {
// given
HttpServletRequest request = new MockHttpServletRequest();
request.setAttribute("attr", "value");
// when
RequestMap rm = new RequestMap(request);
Object value = rm.get("attr");
// then
assertEquals("value", value);
}
@Test
public void shouldReturnNullIfKeyIsNull() {
// given
HttpServletRequest request = new MockHttpServletRequest();
// when
RequestMap rm = new RequestMap(request);
Object value = rm.get(null);
// then
assertNull(value);
}
@Test
public void shouldRemoveAttributeFromRequest() {
// given
HttpServletRequest request = new MockHttpServletRequest();
request.setAttribute("attr", "value");
// when
RequestMap rm = new RequestMap(request);
Object value = rm.remove("attr");
// then
assertEquals("value", value);
assertNull(request.getAttribute("attr"));
}
@Test
public void shouldClearAttributes() {
// given
HttpServletRequest request = new MockHttpServletRequest();
request.setAttribute("attr", "value");
// when
RequestMap rm = new RequestMap(request);
Object value = rm.get("attr");
// then
assertEquals("value", value);
// when
rm.clear();
// then
assertNull(request.getAttribute("attr"));
}
}