This is an automated email from the ASF dual-hosted git repository.

smolnar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/knox.git


The following commit(s) were added to refs/heads/master by this push:
     new 0fca7da10 KNOX-3204 - Remove Mockito and use EasyMock instead (#1093)
0fca7da10 is described below

commit 0fca7da1099f881bf3ebc6d299b7063852165729
Author: Sandor Molnar <[email protected]>
AuthorDate: Fri Oct 3 13:43:26 2025 +0200

    KNOX-3204 - Remove Mockito and use EasyMock instead (#1093)
---
 gateway-spi/pom.xml                                |   7 -
 .../util/KnoxImpersonationProviderTest.java        | 217 ++++++++++++---------
 gateway-test-release/pom.xml                       |   7 -
 pom.xml                                            |   1 -
 4 files changed, 122 insertions(+), 110 deletions(-)

diff --git a/gateway-spi/pom.xml b/gateway-spi/pom.xml
index 635d9be42..41df0a535 100644
--- a/gateway-spi/pom.xml
+++ b/gateway-spi/pom.xml
@@ -207,13 +207,6 @@
             <scope>test</scope>
         </dependency>
 
-        <dependency>
-            <groupId>org.mockito</groupId>
-            <artifactId>mockito-core</artifactId>
-            <version>${mockito.version}</version>
-            <scope>test</scope>
-        </dependency>
-
         <dependency>
             <groupId>org.apache.hadoop</groupId>
             <artifactId>hadoop-auth</artifactId>
diff --git 
a/gateway-spi/src/test/java/org/apache/knox/gateway/util/KnoxImpersonationProviderTest.java
 
b/gateway-spi/src/test/java/org/apache/knox/gateway/util/KnoxImpersonationProviderTest.java
index 7d39443e2..a5bc5c2a1 100644
--- 
a/gateway-spi/src/test/java/org/apache/knox/gateway/util/KnoxImpersonationProviderTest.java
+++ 
b/gateway-spi/src/test/java/org/apache/knox/gateway/util/KnoxImpersonationProviderTest.java
@@ -18,11 +18,11 @@ package org.apache.knox.gateway.util;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.security.UserGroupInformation;
+import org.easymock.EasyMock;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.Timeout;
-import org.mockito.Mockito;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
@@ -40,7 +40,6 @@ import static org.junit.Assert.assertFalse;
 
 import static org.apache.knox.gateway.util.AuthFilterUtils.PROXYUSER_PREFIX;
 import static org.junit.Assert.assertEquals;
-import static org.mockito.Mockito.when;
 
 public class KnoxImpersonationProviderTest {
 
@@ -121,15 +120,17 @@ public class KnoxImpersonationProviderTest {
         String impersonatedUser = "impersonatedUser";
         String[] proxyGroups = {"virtual_group_1"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -140,12 +141,14 @@ public class KnoxImpersonationProviderTest {
         method.setAccessible(true);
         method.invoke(provider, userGroupInformation, 
InetAddress.getByName("2.2.2.2"), Collections.emptyList());
 
+        EasyMock.reset(realUserUGI, userGroupInformation);
         String[] proxyGroups2 = {"virtual.group_2"};
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups2);
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups2).anyTimes();
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         method.invoke(provider, userGroupInformation, 
InetAddress.getByName("2.2.2.2"), Collections.emptyList());
@@ -188,15 +191,16 @@ public class KnoxImpersonationProviderTest {
 
         String[] proxyGroups = {"virtual_group_1"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -207,12 +211,14 @@ public class KnoxImpersonationProviderTest {
         method.setAccessible(true);
         method.invoke(gProvider, userGroupInformation, 
InetAddress.getByName("2.2.2.2"), Collections.emptyList());
 
+        EasyMock.reset(realUserUGI, userGroupInformation);
         String[] proxyGroups2 = {"virtual.group_2"};
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups2);
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups2).anyTimes();
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         method.invoke(gProvider, userGroupInformation, 
InetAddress.getByName("2.2.2.2"), Collections.emptyList());
@@ -224,14 +230,15 @@ public class KnoxImpersonationProviderTest {
         String impersonatedUser = "impersonatedUser";
         String[] proxyGroups = {"virtual group_3"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+        EasyMock.replay(realUserUGI, userGroupInformation);
         provider.authorize(userGroupInformation, 
InetAddress.getByName("2.2.2.2"));
     }
 
@@ -264,15 +271,17 @@ public class KnoxImpersonationProviderTest {
 
         String[] proxyGroups = {"virtual_group_1"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -315,15 +324,17 @@ public class KnoxImpersonationProviderTest {
 
         String[] proxyGroups = {"somegroup"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -371,15 +382,17 @@ public class KnoxImpersonationProviderTest {
 
         String[] proxyGroups = {"virtual_group_1"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(proxyGroups);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(proxyGroups).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Use reflection to call the checkProxyGroupAuthorization method 
directly
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -414,15 +427,17 @@ public class KnoxImpersonationProviderTest {
         // User has no groups in their subject
         String[] emptyGroups = {};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(emptyGroups).anyTimes();
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(emptyGroups);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn("impersonatedUser").anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        
when(userGroupInformation.getUserName()).thenReturn("impersonatedUser");
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Create a list of groups to provide to the authorize method
         List<String> providedGroups = new ArrayList<>();
@@ -456,15 +471,17 @@ public class KnoxImpersonationProviderTest {
         // User has no groups in their subject
         String[] emptyGroups = {};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(emptyGroups).anyTimes();
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(emptyGroups);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn("impersonatedUser").anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        
when(userGroupInformation.getUserName()).thenReturn("impersonatedUser");
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Create a list of groups to provide to the authorize method
         // These groups do not have permission to impersonate
@@ -510,15 +527,17 @@ public class KnoxImpersonationProviderTest {
         // User has virtual_group_1 in their subject
         String[] subjectGroups = {"virtual_group_1"};
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(subjectGroups);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getGroupNames()).andReturn(subjectGroups).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Create a list of groups to provide to the authorize method
         // These include virtual_group_2 which is also authorized
@@ -551,8 +570,10 @@ public class KnoxImpersonationProviderTest {
         testProvider.init("hadoop.proxygroup");
 
         // Create mocks for testing
-        UserGroupInformation userToImpersonate = 
Mockito.mock(UserGroupInformation.class);
-        when(userToImpersonate.getUserName()).thenReturn("impersonatedUser");
+        UserGroupInformation userToImpersonate = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        
EasyMock.expect(userToImpersonate.getUserName()).andReturn("impersonatedUser").anyTimes();
+
+        EasyMock.replay(userToImpersonate);
 
         // Set up the method to test via reflection
         java.lang.reflect.Method method = 
KnoxImpersonationProvider.class.getDeclaredMethod(
@@ -618,14 +639,16 @@ public class KnoxImpersonationProviderTest {
         String proxyUser = "testuser";
         String impersonatedUser = "impersonatedUser";
 
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
+        EasyMock.expect(realUserUGI.getGroupNames()).andReturn(new 
String[0]).anyTimes(); // No groups in subject
 
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getGroupNames()).thenReturn(new String[0]); // No 
groups in subject
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Create a list of groups to provide to the authorize method
         List<String> providedGroups = new ArrayList<>();
@@ -660,14 +683,16 @@ public class KnoxImpersonationProviderTest {
         testProvider.init("hadoop.proxyuser");
 
         // Create mocks for testing
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
 
-        when(realUserUGI.getShortUserName()).thenReturn(proxyUser);
-        when(realUserUGI.getUserName()).thenReturn(proxyUser);
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(proxyUser).anyTimes();
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(proxyUser).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
+
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // This should not throw an exception since the proxy user 
configuration is valid
         testProvider.authorize(userGroupInformation, 
InetAddress.getByName("2.2.2.2"));
@@ -704,15 +729,17 @@ public class KnoxImpersonationProviderTest {
         testProvider.init("hadoop.proxyuser");
 
         // Create mocks for testing
-        UserGroupInformation realUserUGI = 
Mockito.mock(UserGroupInformation.class);
-        UserGroupInformation userGroupInformation = 
Mockito.mock(UserGroupInformation.class);
+        UserGroupInformation realUserUGI = 
EasyMock.createNiceMock(UserGroupInformation.class);
+        UserGroupInformation userGroupInformation = 
EasyMock.createNiceMock(UserGroupInformation.class);
+
+        
EasyMock.expect(realUserUGI.getShortUserName()).andReturn(unauthorizedUser).anyTimes();
 // Use unauthorized user
+        
EasyMock.expect(realUserUGI.getUserName()).andReturn(unauthorizedUser).anyTimes();
+        EasyMock.expect(realUserUGI.getGroupNames()).andReturn(new 
String[0]).anyTimes(); // No groups in subject
 
-        when(realUserUGI.getShortUserName()).thenReturn(unauthorizedUser); // 
Use unauthorized user
-        when(realUserUGI.getUserName()).thenReturn(unauthorizedUser);
-        when(realUserUGI.getGroupNames()).thenReturn(new String[0]); // No 
groups in subject
+        
EasyMock.expect(userGroupInformation.getRealUser()).andReturn(realUserUGI).anyTimes();
+        
EasyMock.expect(userGroupInformation.getUserName()).andReturn(impersonatedUser).anyTimes();
 
-        when(userGroupInformation.getRealUser()).thenReturn(realUserUGI);
-        when(userGroupInformation.getUserName()).thenReturn(impersonatedUser);
+        EasyMock.replay(realUserUGI, userGroupInformation);
 
         // Create a list of groups to provide to the authorize method
         List<String> providedGroups = new ArrayList<>();
diff --git a/gateway-test-release/pom.xml b/gateway-test-release/pom.xml
index c1913c4a6..c6dace6c8 100644
--- a/gateway-test-release/pom.xml
+++ b/gateway-test-release/pom.xml
@@ -292,13 +292,6 @@
              <scope>test</scope>
         </dependency>
 
-        <dependency>
-             <groupId>org.mockito</groupId>
-             <artifactId>mockito-core</artifactId>
-             <version>${mockito.version}</version>
-             <scope>test</scope>
-        </dependency>
-
         <dependency>
             <groupId>org.apache.knox</groupId>
             <artifactId>gateway-release</artifactId>
diff --git a/pom.xml b/pom.xml
index fa0c6ce9c..a86f674b4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -254,7 +254,6 @@
         <maven-pmd-plugin.version>3.12.0</maven-pmd-plugin.version>
         <metrics.version>4.1.16</metrics.version>
         <mina.version>2.0.27</mina.version>
-        <mockito.version>4.8.1</mockito.version>
         <netty.version>4.1.123.Final</netty.version>
         <nimbus-jose-jwt.version>10.0.2</nimbus-jose-jwt.version>
         <nodejs.version>v16.10.0</nodejs.version>

Reply via email to