Skip to content

Commit 0ce506f

Browse files
committed
test: migrate from EasyMock to Mockito in PathMatchingFilterProviderTest and WebGuiceEnvironmentTest due to issues with bytebuddy + JDK 26
1 parent 5aaba1d commit 0ce506f

2 files changed

Lines changed: 18 additions & 32 deletions

File tree

support/guice/src/test/java/org/apache/shiro/guice/web/PathMatchingFilterProviderTest.java

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,15 @@
2525
import java.util.HashMap;
2626
import java.util.Map;
2727

28-
import static org.easymock.EasyMock.createMock;
29-
import static org.easymock.EasyMock.expect;
30-
import static org.easymock.EasyMock.replay;
31-
import static org.easymock.EasyMock.verify;
28+
import static org.mockito.Mockito.mock;
29+
import static org.mockito.Mockito.verify;
3230

3331
class PathMatchingFilterProviderTest {
3432
@Test
3533
void testPostProcess() {
36-
PathMatchingFilter filter = createMock(PathMatchingFilter.class);
34+
PathMatchingFilter filter = mock(PathMatchingFilter.class);
3735

38-
expect(filter.processPathConfig("/1", "first")).andReturn(filter);
39-
expect(filter.processPathConfig("/2", "second")).andReturn(filter);
40-
41-
replay(filter);
42-
43-
Map<String, String> pathConfigMap = new HashMap<String, String>();
36+
Map<String, String> pathConfigMap = new HashMap<>();
4437
pathConfigMap.put("/1", "first");
4538
pathConfigMap.put("/2", "second");
4639

@@ -49,6 +42,7 @@ void testPostProcess() {
4942

5043
underTest.postProcess(filter);
5144

52-
verify(filter);
45+
verify(filter).processPathConfig("/1", "first");
46+
verify(filter).processPathConfig("/2", "second");
5347
}
5448
}

support/guice/src/test/java/org/apache/shiro/guice/web/WebGuiceEnvironmentTest.java

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -23,44 +23,36 @@
2323
import org.apache.shiro.web.env.EnvironmentLoaderListener;
2424
import org.apache.shiro.web.filter.mgt.FilterChainResolver;
2525
import org.apache.shiro.web.mgt.WebSecurityManager;
26-
import org.easymock.Capture;
2726
import org.junit.jupiter.api.Test;
27+
import org.mockito.ArgumentCaptor;
2828

2929
import jakarta.servlet.ServletContext;
3030

3131
import static org.assertj.core.api.Assertions.assertThat;
3232
import static org.assertj.core.api.Assertions.fail;
33-
import static org.easymock.EasyMock.and;
34-
import static org.easymock.EasyMock.anyObject;
35-
import static org.easymock.EasyMock.capture;
36-
import static org.easymock.EasyMock.createMock;
37-
import static org.easymock.EasyMock.eq;
38-
import static org.easymock.EasyMock.replay;
39-
import static org.easymock.EasyMock.verify;
33+
import static org.mockito.ArgumentMatchers.eq;
34+
import static org.mockito.Mockito.mock;
35+
import static org.mockito.Mockito.verify;
4036

4137
public class WebGuiceEnvironmentTest {
4238

4339
@Test
4440
void ensureInjectable() {
4541
try {
46-
InjectionPoint ip = InjectionPoint.forConstructorOf(WebGuiceEnvironment.class);
42+
InjectionPoint.forConstructorOf(WebGuiceEnvironment.class);
4743
} catch (Exception e) {
4844
fail("Could not create constructor injection point.");
4945
}
5046
}
5147

5248
@Test
5349
void testConstructor() {
54-
WebSecurityManager securityManager = createMock(WebSecurityManager.class);
55-
FilterChainResolver filterChainResolver = createMock(FilterChainResolver.class);
56-
ServletContext servletContext = createMock(ServletContext.class);
57-
ShiroFilterConfiguration filterConfiguration = createMock(ShiroFilterConfiguration.class);
50+
WebSecurityManager securityManager = mock(WebSecurityManager.class);
51+
FilterChainResolver filterChainResolver = mock(FilterChainResolver.class);
52+
ServletContext servletContext = mock(ServletContext.class);
53+
ShiroFilterConfiguration filterConfiguration = mock(ShiroFilterConfiguration.class);
5854

59-
Capture<WebGuiceEnvironment> capture = Capture.newInstance();
60-
servletContext.setAttribute(eq(EnvironmentLoaderListener.ENVIRONMENT_ATTRIBUTE_KEY),
61-
and(anyObject(WebGuiceEnvironment.class), capture(capture)));
62-
63-
replay(servletContext, securityManager, filterChainResolver);
55+
ArgumentCaptor<WebGuiceEnvironment> capture = ArgumentCaptor.forClass(WebGuiceEnvironment.class);
6456

6557
WebGuiceEnvironment underTest =
6658
new WebGuiceEnvironment(filterChainResolver, servletContext, securityManager, filterConfiguration);
@@ -70,8 +62,8 @@ void testConstructor() {
7062
assertThat(underTest.getWebSecurityManager()).isSameAs(securityManager);
7163
assertThat(underTest.getServletContext()).isSameAs(servletContext);
7264

73-
assertThat(capture.getValue()).isSameAs(underTest);
65+
verify(servletContext).setAttribute(eq(EnvironmentLoaderListener.ENVIRONMENT_ATTRIBUTE_KEY), capture.capture());
7466

75-
verify(servletContext);
67+
assertThat(capture.getValue()).isSameAs(underTest);
7668
}
7769
}

0 commit comments

Comments
 (0)