diff options
author | Valerij Fredriksen <valerijf@verizonmedia.com> | 2021-07-28 09:55:00 +0200 |
---|---|---|
committer | Valerij Fredriksen <valerijf@verizonmedia.com> | 2021-07-28 09:55:00 +0200 |
commit | 7a9ca4411702e0bc7492239ee6ad116527b1e4d2 (patch) | |
tree | d536c8fdc35a7223953372da23d785e63f9ea495 /container-core/src/test/java/com | |
parent | d8acae4eeb9d66457e596fb06b0009d95b973f13 (diff) |
Extract common methods for auth0/okta request filters to utils class
Diffstat (limited to 'container-core/src/test/java/com')
-rw-r--r-- | container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java new file mode 100644 index 00000000000..2ec7c5b90c7 --- /dev/null +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java @@ -0,0 +1,48 @@ +// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.jdisc.http.filter.util; + +import com.yahoo.container.jdisc.RequestHandlerTestDriver; +import com.yahoo.jdisc.Response; +import com.yahoo.jdisc.http.Cookie; +import org.junit.Test; + +import java.util.List; +import java.util.Map; + +import static com.yahoo.jdisc.http.filter.util.FilterUtils.sendMessageResponse; +import static com.yahoo.jdisc.http.filter.util.FilterUtils.sendRedirectResponse; +import static org.junit.Assert.assertEquals; + +/** + * @author valerijf + */ +public class FilterUtilsTest { + + private static final List<Cookie> cookies = List.of(new Cookie("my-cookie", "value1"), new Cookie("second-cookie", "value2")); + + @Test + public void redirect_test() { + RequestHandlerTestDriver.MockResponseHandler responseHandler = new RequestHandlerTestDriver.MockResponseHandler(); + + String location = "http://domain.tld/path?query"; + sendRedirectResponse(responseHandler, cookies, location); + assertEquals(302, responseHandler.getStatus()); + assertHeaders(responseHandler.getResponse(), Map.entry("Location", location), Map.entry("Set-Cookie", "my-cookie=value1"), Map.entry("Set-Cookie", "second-cookie=value2")); + } + + @Test + public void message_response() { + RequestHandlerTestDriver.MockResponseHandler responseHandler = new RequestHandlerTestDriver.MockResponseHandler(); + + sendMessageResponse(responseHandler, List.of(), 404, "Not found"); + assertEquals(404, responseHandler.getStatus()); + assertHeaders(responseHandler.getResponse()); + assertEquals("{\n \"message\" : \"Not found\"\n}", responseHandler.readAll()); + } + + @SafeVarargs + @SuppressWarnings("varargs") + private static void assertHeaders(Response response, Map.Entry<String, String>... expectedHeaders) { + assertEquals(List.of(expectedHeaders), response.headers().entries()); + } +}
\ No newline at end of file |