public class JU_BasicHttpTaf {
- private final static String realm = "realm";
- private final static String id = "id";
- private final static String addr = "addr";
-
- private final static String name = "User";
- private final static String password = "password";
- private final static String content = name + ":" + password;
- private static String encrypted;
-
- private final static long timeToLive = 10000L;
-
- private PropAccess access;
-
- @Mock private HttpServletResponse respMock;
- @Mock private HttpServletRequest reqMock;
- @Mock private CredVal rbacMock;
- @Mock private CachedPrincipal princMock;
-
- @Before
- public void setup() throws IOException {
- MockitoAnnotations.initMocks(this);
- access = new PropAccess(new PrintStream(new ByteArrayOutputStream()), new String[0]);
- encrypted = new String(Symm.base64.encode(content.getBytes()));
- }
-
- @Test
- public void test() {
- BasicHttpTaf taf = new BasicHttpTaf(access, rbacMock, realm, timeToLive, true);
- BasicCredStub bcstub = new BasicCredStub();
- assertThat(taf.validate(LifeForm.SBLF, bcstub, respMock), is(not(nullValue())));
-
- assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
-
- when(reqMock.getHeader("Authorization")).thenReturn("test");
- assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
-
- when(reqMock.getHeader("Authorization")).thenReturn("Basic " + encrypted);
- assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
-
- assertThat(taf.revalidate(princMock, "state"), is(Resp.NOT_MINE));
-
- assertThat(taf.toString(), is("Basic Auth enabled on realm: " + realm));
- }
-
- private class BasicCredStub implements HttpServletRequest, BasicCred {
- @Override public String getUser() { return id; }
- @Override public String getRemoteAddr() { return addr; }
-
- @Override public AsyncContext getAsyncContext() { return null; }
- @Override public Object getAttribute(String arg0) { return null; }
- @Override public Enumeration<String> getAttributeNames() { return null; }
- @Override public String getCharacterEncoding() { return null; }
- @Override public int getContentLength() { return 0; }
- @Override public String getContentType() { return null; }
- @Override public DispatcherType getDispatcherType() { return null; }
- @Override public ServletInputStream getInputStream() throws IOException { return null; }
- @Override public String getLocalAddr() { return null; }
- @Override public String getLocalName() { return null; }
- @Override public int getLocalPort() { return 0; }
- @Override public Locale getLocale() { return null; }
- @Override public Enumeration<Locale> getLocales() { return null; }
- @Override public String getParameter(String arg0) { return null; }
- @Override public Map<String, String[]> getParameterMap() { return null; }
- @Override public Enumeration<String> getParameterNames() { return null; }
- @Override public String[] getParameterValues(String arg0) { return null; }
- @Override public String getProtocol() { return null; }
- @Override public BufferedReader getReader() throws IOException { return null; }
- @Override public String getRealPath(String arg0) { return null; }
- @Override public String getRemoteHost() { return null; }
- @Override public int getRemotePort() { return 0; }
- @Override public RequestDispatcher getRequestDispatcher(String arg0) { return null; }
- @Override public String getScheme() { return null; }
- @Override public String getServerName() { return null; }
- @Override public int getServerPort() { return 0; }
- @Override public ServletContext getServletContext() { return null; }
- @Override public boolean isAsyncStarted() { return false; }
- @Override public boolean isAsyncSupported() { return false; }
- @Override public boolean isSecure() { return false; }
- @Override public void removeAttribute(String arg0) { }
- @Override public void setAttribute(String arg0, Object arg1) { }
- @Override public void setCharacterEncoding(String arg0) throws UnsupportedEncodingException { }
- @Override public AsyncContext startAsync() throws IllegalStateException { return null; }
- @Override public AsyncContext startAsync(ServletRequest arg0, ServletResponse arg1) throws IllegalStateException { return null; }
- @Override public byte[] getCred() { return null; }
- @Override public void setUser(String user) { }
- @Override public void setCred(byte[] passwd) { }
- @Override public boolean authenticate(HttpServletResponse arg0) throws IOException, ServletException { return false; }
- @Override public String getAuthType() { return null; }
- @Override public String getContextPath() { return null; }
- @Override public Cookie[] getCookies() { return null; }
- @Override public long getDateHeader(String arg0) { return 0; }
- @Override public String getHeader(String arg0) { return null; }
- @Override public Enumeration<String> getHeaderNames() { return null; }
- @Override public Enumeration<String> getHeaders(String arg0) { return null; }
- @Override public int getIntHeader(String arg0) { return 0; }
- @Override public String getMethod() { return null; }
- @Override public Part getPart(String arg0) throws IOException, ServletException { return null; }
- @Override public Collection<Part> getParts() throws IOException, ServletException { return null; }
- @Override public String getPathInfo() { return null; }
- @Override public String getPathTranslated() { return null; }
- @Override public String getQueryString() { return null; }
- @Override public String getRemoteUser() { return null; }
- @Override public String getRequestURI() { return null; }
- @Override public StringBuffer getRequestURL() { return null; }
- @Override public String getRequestedSessionId() { return null; }
- @Override public String getServletPath() { return null; }
- @Override public HttpSession getSession() { return null; }
- @Override public HttpSession getSession(boolean arg0) { return null; }
- @Override public Principal getUserPrincipal() { return null; }
- @Override public boolean isRequestedSessionIdFromCookie() { return false; }
- @Override public boolean isRequestedSessionIdFromURL() { return false; }
- @Override public boolean isRequestedSessionIdFromUrl() { return false; }
- @Override public boolean isRequestedSessionIdValid() { return false; }
- @Override public boolean isUserInRole(String arg0) { return false; }
- @Override public void login(String arg0, String arg1) throws ServletException { }
- @Override public void logout() throws ServletException { }
- }
+ private final static String realm = "realm";
+ private final static String id = "id";
+ private final static String addr = "addr";
+
+ private final static String name = "User";
+ private final static String password = "password";
+ private final static String content = name + ":" + password;
+ private static String encrypted;
+
+ private final static long timeToLive = 10000L;
+
+ private PropAccess access;
+
+ @Mock private HttpServletResponse respMock;
+ @Mock private HttpServletRequest reqMock;
+ @Mock private CredVal rbacMock;
+ @Mock private CachedPrincipal princMock;
+
+ @Before
+ public void setup() throws IOException {
+ MockitoAnnotations.initMocks(this);
+ access = new PropAccess(new PrintStream(new ByteArrayOutputStream()), new String[0]);
+ encrypted = new String(Symm.base64.encode(content.getBytes()));
+ }
+
+ @Test
+ public void test() {
+ BasicHttpTaf taf = new BasicHttpTaf(access, rbacMock, realm, timeToLive, true);
+ BasicCredStub bcstub = new BasicCredStub();
+ assertThat(taf.validate(LifeForm.SBLF, bcstub, respMock), is(not(nullValue())));
+
+ assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
+
+ when(reqMock.getHeader("Authorization")).thenReturn("test");
+ assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
+
+ when(reqMock.getHeader("Authorization")).thenReturn("Basic " + encrypted);
+ assertThat(taf.validate(LifeForm.SBLF, reqMock, respMock), is(not(nullValue())));
+
+ assertThat(taf.revalidate(princMock, "state"), is(Resp.NOT_MINE));
+
+ assertThat(taf.toString(), is("Basic Auth enabled on realm: " + realm));
+ }
+
+ private class BasicCredStub implements HttpServletRequest, BasicCred {
+ @Override public String getUser() { return id; }
+ @Override public String getRemoteAddr() { return addr; }
+
+ @Override public AsyncContext getAsyncContext() { return null; }
+ @Override public Object getAttribute(String arg0) { return null; }
+ @Override public Enumeration<String> getAttributeNames() { return null; }
+ @Override public String getCharacterEncoding() { return null; }
+ @Override public int getContentLength() { return 0; }
+ @Override public String getContentType() { return null; }
+ @Override public DispatcherType getDispatcherType() { return null; }
+ @Override public ServletInputStream getInputStream() throws IOException { return null; }
+ @Override public String getLocalAddr() { return null; }
+ @Override public String getLocalName() { return null; }
+ @Override public int getLocalPort() { return 0; }
+ @Override public Locale getLocale() { return null; }
+ @Override public Enumeration<Locale> getLocales() { return null; }
+ @Override public String getParameter(String arg0) { return null; }
+ @Override public Map<String, String[]> getParameterMap() { return null; }
+ @Override public Enumeration<String> getParameterNames() { return null; }
+ @Override public String[] getParameterValues(String arg0) { return null; }
+ @Override public String getProtocol() { return null; }
+ @Override public BufferedReader getReader() throws IOException { return null; }
+ @Override public String getRealPath(String arg0) { return null; }
+ @Override public String getRemoteHost() { return null; }
+ @Override public int getRemotePort() { return 0; }
+ @Override public RequestDispatcher getRequestDispatcher(String arg0) { return null; }
+ @Override public String getScheme() { return null; }
+ @Override public String getServerName() { return null; }
+ @Override public int getServerPort() { return 0; }
+ @Override public ServletContext getServletContext() { return null; }
+ @Override public boolean isAsyncStarted() { return false; }
+ @Override public boolean isAsyncSupported() { return false; }
+ @Override public boolean isSecure() { return false; }
+ @Override public void removeAttribute(String arg0) { }
+ @Override public void setAttribute(String arg0, Object arg1) { }
+ @Override public void setCharacterEncoding(String arg0) throws UnsupportedEncodingException { }
+ @Override public AsyncContext startAsync() throws IllegalStateException { return null; }
+ @Override public AsyncContext startAsync(ServletRequest arg0, ServletResponse arg1) throws IllegalStateException { return null; }
+ @Override public byte[] getCred() { return null; }
+ @Override public void setUser(String user) { }
+ @Override public void setCred(byte[] passwd) { }
+ @Override public boolean authenticate(HttpServletResponse arg0) throws IOException, ServletException { return false; }
+ @Override public String getAuthType() { return null; }
+ @Override public String getContextPath() { return null; }
+ @Override public Cookie[] getCookies() { return null; }
+ @Override public long getDateHeader(String arg0) { return 0; }
+ @Override public String getHeader(String arg0) { return null; }
+ @Override public Enumeration<String> getHeaderNames() { return null; }
+ @Override public Enumeration<String> getHeaders(String arg0) { return null; }
+ @Override public int getIntHeader(String arg0) { return 0; }
+ @Override public String getMethod() { return null; }
+ @Override public Part getPart(String arg0) throws IOException, ServletException { return null; }
+ @Override public Collection<Part> getParts() throws IOException, ServletException { return null; }
+ @Override public String getPathInfo() { return null; }
+ @Override public String getPathTranslated() { return null; }
+ @Override public String getQueryString() { return null; }
+ @Override public String getRemoteUser() { return null; }
+ @Override public String getRequestURI() { return null; }
+ @Override public StringBuffer getRequestURL() { return null; }
+ @Override public String getRequestedSessionId() { return null; }
+ @Override public String getServletPath() { return null; }
+ @Override public HttpSession getSession() { return null; }
+ @Override public HttpSession getSession(boolean arg0) { return null; }
+ @Override public Principal getUserPrincipal() { return null; }
+ @Override public boolean isRequestedSessionIdFromCookie() { return false; }
+ @Override public boolean isRequestedSessionIdFromURL() { return false; }
+ @Override public boolean isRequestedSessionIdFromUrl() { return false; }
+ @Override public boolean isRequestedSessionIdValid() { return false; }
+ @Override public boolean isUserInRole(String arg0) { return false; }
+ @Override public void login(String arg0, String arg1) throws ServletException { }
+ @Override public void logout() throws ServletException { }
+ }
}