Commit efc7520404ce33d27b02302e1c7dfc6ed45516a1
1 parent
b4872a11
Exists in
master
OPEN - issue FWK-172: Filtro para autenticação BASIC não efetua o logout
após o término do request https://demoiselle.atlassian.net/browse/FWK-172
Showing
1 changed file
with
20 additions
and
11 deletions
Show diff stats
impl/extension/servlet/src/test/java/security/authentication/basic/BasicAuthenticationFilterTest.java
1 | package security.authentication.basic; | 1 | package security.authentication.basic; |
2 | 2 | ||
3 | import static org.apache.http.HttpStatus.SC_UNAUTHORIZED; | 3 | import static org.apache.http.HttpStatus.SC_UNAUTHORIZED; |
4 | +import static org.apache.http.HttpStatus.SC_FORBIDDEN; | ||
4 | import static org.apache.http.HttpStatus.SC_OK; | 5 | import static org.apache.http.HttpStatus.SC_OK; |
5 | import static org.junit.Assert.assertEquals; | 6 | import static org.junit.Assert.assertEquals; |
6 | 7 | ||
@@ -11,6 +12,7 @@ import org.apache.commons.codec.binary.Base64; | @@ -11,6 +12,7 @@ import org.apache.commons.codec.binary.Base64; | ||
11 | import org.apache.http.HttpResponse; | 12 | import org.apache.http.HttpResponse; |
12 | import org.apache.http.client.ClientProtocolException; | 13 | import org.apache.http.client.ClientProtocolException; |
13 | import org.apache.http.client.methods.HttpGet; | 14 | import org.apache.http.client.methods.HttpGet; |
15 | +import org.apache.http.impl.client.CloseableHttpClient; | ||
14 | import org.apache.http.impl.client.HttpClientBuilder; | 16 | import org.apache.http.impl.client.HttpClientBuilder; |
15 | import org.jboss.arquillian.container.test.api.Deployment; | 17 | import org.jboss.arquillian.container.test.api.Deployment; |
16 | import org.jboss.arquillian.junit.Arquillian; | 18 | import org.jboss.arquillian.junit.Arquillian; |
@@ -37,17 +39,24 @@ public class BasicAuthenticationFilterTest { | @@ -37,17 +39,24 @@ public class BasicAuthenticationFilterTest { | ||
37 | 39 | ||
38 | @Test | 40 | @Test |
39 | public void loginSucessfull() throws ClientProtocolException, IOException { | 41 | public void loginSucessfull() throws ClientProtocolException, IOException { |
42 | + CloseableHttpClient client = HttpClientBuilder.create().build(); | ||
43 | + HttpGet get; | ||
44 | + HttpResponse response; | ||
45 | + int status; | ||
46 | + | ||
40 | String username = "demoiselle"; | 47 | String username = "demoiselle"; |
41 | String password = "changeit"; | 48 | String password = "changeit"; |
42 | - | ||
43 | - HttpGet httpGet = new HttpGet(deploymentUrl + "/helper"); | 49 | + get = new HttpGet(deploymentUrl + "/helper"); |
44 | byte[] encoded = Base64.encodeBase64((username + ":" + password).getBytes()); | 50 | byte[] encoded = Base64.encodeBase64((username + ":" + password).getBytes()); |
45 | - httpGet.setHeader("Authorization", "Basic " + new String(encoded)); | ||
46 | - | ||
47 | - HttpResponse httpResponse = HttpClientBuilder.create().build().execute(httpGet); | ||
48 | - | ||
49 | - int status = httpResponse.getStatusLine().getStatusCode(); | 51 | + get.setHeader("Authorization", "Basic " + new String(encoded)); |
52 | + response = client.execute(get); | ||
53 | + status = response.getStatusLine().getStatusCode(); | ||
50 | assertEquals(SC_OK, status); | 54 | assertEquals(SC_OK, status); |
55 | + | ||
56 | + get = new HttpGet(deploymentUrl + "/helper"); | ||
57 | + response = client.execute(get); | ||
58 | + status = response.getStatusLine().getStatusCode(); | ||
59 | + assertEquals(SC_FORBIDDEN, status); | ||
51 | } | 60 | } |
52 | 61 | ||
53 | @Test | 62 | @Test |
@@ -55,13 +64,13 @@ public class BasicAuthenticationFilterTest { | @@ -55,13 +64,13 @@ public class BasicAuthenticationFilterTest { | ||
55 | String username = "invalid"; | 64 | String username = "invalid"; |
56 | String password = "invalid"; | 65 | String password = "invalid"; |
57 | 66 | ||
58 | - HttpGet httpGet = new HttpGet(deploymentUrl + "/helper"); | 67 | + HttpGet get = new HttpGet(deploymentUrl + "/helper"); |
59 | byte[] encoded = Base64.encodeBase64((username + ":" + password).getBytes()); | 68 | byte[] encoded = Base64.encodeBase64((username + ":" + password).getBytes()); |
60 | - httpGet.setHeader("Authorization", "Basic " + new String(encoded)); | 69 | + get.setHeader("Authorization", "Basic " + new String(encoded)); |
61 | 70 | ||
62 | - HttpResponse httpResponse = HttpClientBuilder.create().build().execute(httpGet); | 71 | + HttpResponse response = HttpClientBuilder.create().build().execute(get); |
63 | 72 | ||
64 | - int status = httpResponse.getStatusLine().getStatusCode(); | 73 | + int status = response.getStatusLine().getStatusCode(); |
65 | assertEquals(SC_UNAUTHORIZED, status); | 74 | assertEquals(SC_UNAUTHORIZED, status); |
66 | } | 75 | } |
67 | } | 76 | } |