Skip to content

Commit 51f0023

Browse files
committed
Porting mockito build changes back to 1.9 branch for failing AuthorizationFilterTest
1 parent 3eafa10 commit 51f0023

2 files changed

Lines changed: 25 additions & 21 deletions

File tree

pom.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@
111111

112112
<!-- Test 3rd-party dependencies: -->
113113
<easymock.version>4.1</easymock.version>
114+
<mockito.version>3.12.4</mockito.version>
114115
<gmaven.version>1.13.1</gmaven.version>
115116
<groovy.version>2.5.14</groovy.version>
116117
<junit.version>4.12</junit.version>
@@ -666,6 +667,12 @@
666667
<version>${easymock.version}</version>
667668
<scope>test</scope>
668669
</dependency>
670+
<dependency>
671+
<groupId>org.mockito</groupId>
672+
<artifactId>mockito-core</artifactId>
673+
<version>${mockito.version}</version>
674+
<scope>test</scope>
675+
</dependency>
669676
<!-- Writing tests in groovy is fast!: -->
670677
<dependency>
671678
<groupId>org.codehaus.groovy</groupId>
@@ -1229,6 +1236,7 @@
12291236
<link>https://docs.spring.io/spring/docs/2.5.x/javadoc-api/</link>
12301237
<link>https://junit.org/junit4/javadoc/4.12/</link>
12311238
<link>http://easymock.org/api/easymock/2.4</link>
1239+
<link>https://javadoc.io/doc/org.mockito/mockito-core/${mockito.version}/org/mockito/Mockito.html</link>
12321240
<link>https://www.quartz-scheduler.org/api/1.8.6/</link>
12331241
</links>
12341242
<!-- Don't include the sample apps - they're not part of Shiro's API: -->

web/src/test/java/org/apache/shiro/web/filter/authz/AuthorizationFilterTest.java

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,10 @@
2929
import javax.servlet.http.HttpServletResponse;
3030
import java.io.IOException;
3131

32-
import static org.easymock.EasyMock.*;
32+
import static org.mockito.Mockito.atLeastOnce;
33+
import static org.mockito.Mockito.mock;
34+
import static org.mockito.Mockito.verify;
35+
import static org.mockito.Mockito.when;
3336

3437
/**
3538
* Test cases for the {@link AuthorizationFilter} class.
@@ -43,22 +46,20 @@ public void testUserOnAccessDeniedWithResponseError() throws IOException {
4346

4447
//log in the user using the account provided by the superclass for tests:
4548
SecurityUtils.getSubject().login(new UsernamePasswordToken("test", "test"));
46-
49+
4750
AuthorizationFilter filter = new AuthorizationFilter() {
4851
@Override
49-
protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue)
50-
throws Exception {
52+
protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) {
5153
return false; //for this test case
5254
}
5355
};
5456

55-
HttpServletRequest request = createNiceMock(HttpServletRequest.class);
56-
HttpServletResponse response = createNiceMock(HttpServletResponse.class);
57+
HttpServletRequest request = mock(HttpServletRequest.class);
58+
HttpServletResponse response = mock(HttpServletResponse.class);
5759

58-
response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
59-
replay(response);
60+
// response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
6061
filter.onAccessDenied(request, response);
61-
verify(response);
62+
verify(response).sendError(HttpServletResponse.SC_UNAUTHORIZED);
6263
}
6364

6465
@Test
@@ -73,27 +74,22 @@ public void testUserOnAccessDeniedWithRedirect() throws IOException {
7374

7475
AuthorizationFilter filter = new AuthorizationFilter() {
7576
@Override
76-
protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue)
77-
throws Exception {
77+
protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) {
7878
return false; //for this test case
7979
}
8080
};
8181
filter.setUnauthorizedUrl(unauthorizedUrl);
8282

83-
HttpServletRequest request = createNiceMock(HttpServletRequest.class);
84-
HttpServletResponse response = createNiceMock(HttpServletResponse.class);
85-
86-
expect(request.getContextPath()).andReturn("/").anyTimes();
83+
HttpServletRequest request = mock(HttpServletRequest.class);
84+
HttpServletResponse response = mock(HttpServletResponse.class);
8785

8886
String encoded = "/" + unauthorizedUrl;
89-
expect(response.encodeRedirectURL(unauthorizedUrl)).andReturn(encoded);
87+
when(response.encodeRedirectURL(unauthorizedUrl)).thenReturn(encoded);
9088
response.sendRedirect(encoded);
91-
replay(request);
92-
replay(response);
9389

9490
filter.onAccessDenied(request, response);
9591

96-
verify(request);
97-
verify(response);
92+
verify(response, atLeastOnce()).sendRedirect(encoded);
93+
verify(response).encodeRedirectURL(unauthorizedUrl);
9894
}
99-
}
95+
}

0 commit comments

Comments
 (0)