This is an automated email from the ASF dual-hosted git repository. joerghoh pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-resourceresolver.git
The following commit(s) were added to refs/heads/master by this push: new 1e5763a SLING-12021 upate to parent 52, support build with java 17 (#102) 1e5763a is described below commit 1e5763a900661444caec477447aeea7ba32cae44 Author: Jörg Hoh <joerg...@users.noreply.github.com> AuthorDate: Sun Sep 10 13:24:51 2023 +0200 SLING-12021 upate to parent 52, support build with java 17 (#102) update Mockito and adapt tests cases ( "any()" does no longer match null) --- pom.xml | 6 ++--- .../impl/EtcMappingResourceResolverTest.java | 5 ++--- .../impl/MockedResourceResolverImplTest.java | 18 ++++++++------- .../resourceresolver/impl/ProviderHandlerTest.java | 4 +++- .../impl/ResourceProviderEntryTest.java | 26 ++++++++++++---------- .../impl/ResourceResolverImplTest.java | 11 +++++++-- .../impl/helper/ResourceResolverControlTest.java | 23 ++++++++++--------- .../mapping/AbstractMappingMapEntriesTest.java | 12 +++++----- .../impl/mapping/EtcMappingMapEntriesTest.java | 4 ++-- .../impl/mapping/MapEntriesTest.java | 12 +++++----- .../SecureResourceProviderDecoratorTest.java | 2 +- .../sling/resourceresolver/util/MockTestUtil.java | 8 ++++--- 12 files changed, 75 insertions(+), 56 deletions(-) diff --git a/pom.xml b/pom.xml index d1c7acf..75d9d34 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ <parent> <groupId>org.apache.sling</groupId> <artifactId>sling-bundle-parent</artifactId> - <version>49</version> + <version>52</version> <relativePath /> </parent> @@ -212,8 +212,8 @@ </dependency> <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> - <version>1.9.5</version> + <artifactId>mockito-core</artifactId> + <version>5.5.0</version> <scope>test</scope> </dependency> <dependency> diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/EtcMappingResourceResolverTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/EtcMappingResourceResolverTest.java index 5193b62..d87aa22 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/EtcMappingResourceResolverTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/EtcMappingResourceResolverTest.java @@ -57,8 +57,7 @@ import static org.apache.sling.resourceresolver.util.MockTestUtil.createRequestF import static org.apache.sling.resourceresolver.util.MockTestUtil.createStringInterpolationProviderConfiguration; import static org.apache.sling.resourceresolver.util.MockTestUtil.setInaccessibleField; import static org.apache.sling.resourceresolver.util.MockTestUtil.setupStringInterpolationProvider; -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyString; +import static org.mockito.ArgumentMatchers.nullable; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; @@ -133,7 +132,7 @@ public class EtcMappingResourceResolverTest { setInaccessibleField("serviceUserMapper", activator, serviceUserMapper); commonFactory = spy(new CommonResourceResolverFactoryImpl(activator)); when(bundleContext.getBundle()).thenReturn(bundle); - when(serviceUserMapper.getServiceUserID(any(Bundle.class),anyString())).thenReturn("mapping"); + when(serviceUserMapper.getServiceUserID(nullable(Bundle.class),nullable(String.class))).thenReturn("mapping"); // Activate method is package private so we use reflection to to call it callInaccessibleMethod("activate", null, commonFactory, BundleContext.class, bundleContext); final Bundle usingBundle = mock(Bundle.class); diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/MockedResourceResolverImplTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/MockedResourceResolverImplTest.java index 7b21023..2594e88 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/MockedResourceResolverImplTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/MockedResourceResolverImplTest.java @@ -24,8 +24,8 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyString; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -77,6 +77,8 @@ import org.osgi.framework.Constants; import org.osgi.framework.ServiceFactory; import org.osgi.framework.ServiceReference; +import static org.mockito.ArgumentMatchers.nullable; + /** * This tests the ResourceResolver using mocks. The Unit test is in addition to * ResourceResolverImplTest which covers API conformance more than it covers all @@ -176,7 +178,7 @@ public class MockedResourceResolverImplTest { Mockito.when(resourceProviderTracker.getResourceProviderStorage()).thenReturn(storage); activator.serviceUserMapper = mock(ServiceUserMapper.class); - when(activator.serviceUserMapper.getServicePrincipalNames(any(), any())).thenReturn(Collections.singletonList("user")); + when(activator.serviceUserMapper.getServicePrincipalNames(nullable(Bundle.class), nullable(String.class))).thenReturn(Collections.singletonList("user")); activator.stringInterpolationProvider = mock(StringInterpolationProvider.class); when(activator.stringInterpolationProvider.substitute(anyString())).thenAnswer(inv -> (String) inv.getArguments()[0]); @@ -382,7 +384,7 @@ public class MockedResourceResolverImplTest { mappingChildren.add(buildResource(path+"/http/localhost_any", localHostAnyList, resourceResolver, provider,"sling:match", "localhost\\.\\d*", "sling:internalRedirect", "/content")); Resource etcMapResource = buildResource(path+"/http", mappingChildren); - Mockito.when(provider.getResource(Mockito.any(ResolveContext.class), Mockito.eq(path), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(etcMapResource); + Mockito.when(provider.getResource(Mockito.nullable(ResolveContext.class), Mockito.eq(path), Mockito.nullable(ResourceContext.class), Mockito.nullable(Resource.class))).thenReturn(etcMapResource); return etcMapResource; } @@ -443,8 +445,8 @@ public class MockedResourceResolverImplTest { // register the resource with the provider if ( provider != null ) { - Mockito.when(provider.listChildren(Mockito.any(ResolveContext.class), Mockito.eq(resource))).thenReturn(children.iterator()); - Mockito.when(provider.getResource(Mockito.any(ResolveContext.class), Mockito.eq(fullpath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(resource); + Mockito.when(provider.listChildren(Mockito.nullable(ResolveContext.class), Mockito.eq(resource))).thenReturn(children.iterator()); + Mockito.when(provider.getResource(Mockito.nullable(ResolveContext.class), Mockito.eq(fullpath), Mockito.nullable(ResourceContext.class), Mockito.nullable(Resource.class))).thenReturn(resource); } if ( properties != null ) { ValueMap vm = new SimpleValueMapImpl(); @@ -668,8 +670,8 @@ public class MockedResourceResolverImplTest { public void testQueryResources() throws LoginException { final int n = 3; String[] languages = new String[] {FAKE_QUERY_LANGUAGE}; - Mockito.when(queryProvider.getSupportedLanguages(Mockito.any(ResolveContext.class))).thenReturn(languages); - Mockito.when(queryProvider.queryResources(Mockito.any(ResolveContext.class), Mockito.any(String.class), Mockito.any(String.class))) + Mockito.when(queryProvider.getSupportedLanguages(Mockito.nullable(ResolveContext.class))).thenReturn(languages); + Mockito.when(queryProvider.queryResources(Mockito.nullable(ResolveContext.class), Mockito.nullable(String.class), Mockito.nullable(String.class))) .thenReturn(buildValueMapCollection(n, "A_").iterator()); final ResourceResolver rr = resourceResolverFactory.getResourceResolver(null); diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/ProviderHandlerTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/ProviderHandlerTest.java index d9592c4..5a27655 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/ProviderHandlerTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/ProviderHandlerTest.java @@ -42,6 +42,8 @@ import org.mockito.Mockito; import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; +import static org.mockito.ArgumentMatchers.nullable; + public class ProviderHandlerTest { @SuppressWarnings("unchecked") @@ -56,7 +58,7 @@ public class ProviderHandlerTest { }); final ResourceProvider<?> leaveProvider = Mockito.mock(ResourceProvider.class); - Mockito.when(leaveProvider.getResource(Mockito.any(ResolveContext.class), Mockito.eq(servletpath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(servletResource); + Mockito.when(leaveProvider.getResource(nullable(ResolveContext.class), Mockito.eq(servletpath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(servletResource); final ResourceProviderHandler h = createRPHandler(leaveProvider, "my-pid", 0, servletpath); ResourceResolverFactoryActivator activator = new ResourceResolverFactoryActivator(); activator.resourceAccessSecurityTracker = new ResourceAccessSecurityTracker(); diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/ResourceProviderEntryTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/ResourceProviderEntryTest.java index 3e74a62..5bea980 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/ResourceProviderEntryTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/ResourceProviderEntryTest.java @@ -46,6 +46,8 @@ import org.junit.Test; import org.mockito.Mockito; import org.osgi.framework.Constants; + import static org.mockito.ArgumentMatchers.nullable; + @SuppressWarnings("unchecked") public class ResourceProviderEntryTest { @@ -60,7 +62,7 @@ public class ResourceProviderEntryTest { this.providersBasedResolver = null; this.providers.clear(); final ResourceProvider<?> rootProvider = Mockito.mock(ResourceProvider.class); - Mockito.when(rootProvider.getResource(Mockito.any(ResolveContext.class), Mockito.anyString(), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(this.mockedRootResolver)); + Mockito.when(rootProvider.getResource(nullable(ResolveContext.class), nullable(String.class), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(this.mockedRootResolver)); providers.add(createRPHandler(rootProvider, "rp0", 0, "/")); } @@ -77,7 +79,7 @@ public class ResourceProviderEntryTest { String firstPath = "/rootel"; final ResourceResolver resolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> first = Mockito.mock(ResourceProvider.class); - Mockito.when(first.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(firstPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(resolver)); + Mockito.when(first.getResource(nullable(ResolveContext.class), Mockito.startsWith(firstPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(resolver)); providers.add(createRPHandler(first, "rp1", 1, "/rootel")); this.providersBasedResolver = null; @@ -98,13 +100,13 @@ public class ResourceProviderEntryTest { final ResourceResolver firstResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> first = Mockito.mock(ResourceProvider.class); - Mockito.when(first.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(firstPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(firstResolver)); + Mockito.when(first.getResource(nullable(ResolveContext.class), Mockito.startsWith(firstPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(firstResolver)); final ResourceResolver secondResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> second = Mockito.mock(ResourceProvider.class); - Mockito.when(second.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(secondPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(secondResolver)); + Mockito.when(second.getResource(nullable(ResolveContext.class), Mockito.startsWith(secondPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(secondResolver)); final ResourceResolver thirdResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> third = Mockito.mock(ResourceProvider.class); - Mockito.when(third.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(thirdPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(thirdResolver)); + Mockito.when(third.getResource(nullable(ResolveContext.class), Mockito.startsWith(thirdPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(thirdResolver)); providers.add(createRPHandler(first, "rp1", 1, firstPath)); providers.add(createRPHandler(second, "rp2", 2, secondPath)); @@ -127,13 +129,13 @@ public class ResourceProviderEntryTest { final ResourceResolver firstResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> first = Mockito.mock(ResourceProvider.class); - Mockito.when(first.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(firstPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(firstResolver)); + Mockito.when(first.getResource(nullable(ResolveContext.class), Mockito.startsWith(firstPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(firstResolver)); final ResourceResolver secondResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> second = Mockito.mock(ResourceProvider.class); - Mockito.when(second.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(secondPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(secondResolver)); + Mockito.when(second.getResource(nullable(ResolveContext.class), Mockito.startsWith(secondPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(secondResolver)); final ResourceResolver thirdResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> third = Mockito.mock(ResourceProvider.class); - Mockito.when(third.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(thirdPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(thirdResolver)); + Mockito.when(third.getResource(nullable(ResolveContext.class), Mockito.startsWith(thirdPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(thirdResolver)); providers.add(createRPHandler(first, "rp1", 1, firstPath)); providers.add(createRPHandler(second, "rp2", 2, secondPath)); @@ -156,13 +158,13 @@ public class ResourceProviderEntryTest { final ResourceResolver firstResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> first = Mockito.mock(ResourceProvider.class); - Mockito.when(first.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(firstPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(firstResolver)); + Mockito.when(first.getResource(nullable(ResolveContext.class), Mockito.startsWith(firstPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(firstResolver)); final ResourceResolver secondResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> second = Mockito.mock(ResourceProvider.class); - Mockito.when(second.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(secondPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(secondResolver)); + Mockito.when(second.getResource(nullable(ResolveContext.class), Mockito.startsWith(secondPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(secondResolver)); final ResourceResolver thirdResolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> third = Mockito.mock(ResourceProvider.class); - Mockito.when(third.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(thirdPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(thirdResolver)); + Mockito.when(third.getResource(nullable(ResolveContext.class), Mockito.startsWith(thirdPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(thirdResolver)); final Map<String, Object> firstProps = new HashMap<String, Object>(); firstProps.put(Constants.SERVICE_ID, (long)1); @@ -204,7 +206,7 @@ public class ResourceProviderEntryTest { for(String path : new String[] { "/foo", "/", "/foo/bar" }) { final ResourceResolver resolver = Mockito.mock(ResourceResolver.class); final ResourceProvider<?> p = Mockito.mock(ResourceProvider.class); - Mockito.when(p.getResource(Mockito.any(ResolveContext.class), Mockito.startsWith(path), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(new TestResource(resolver)); + Mockito.when(p.getResource(nullable(ResolveContext.class), Mockito.startsWith(path), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(new TestResource(resolver)); ++counter; diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverImplTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverImplTest.java index 2d9bd75..2791776 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverImplTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverImplTest.java @@ -66,7 +66,6 @@ import org.jetbrains.annotations.Nullable; import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; -import org.mockito.internal.util.reflection.Whitebox; import org.osgi.framework.Bundle; public class ResourceResolverImplTest { @@ -241,7 +240,7 @@ public class ResourceResolverImplTest { ResourceResolverFactoryConfig config = mock(ResourceResolverFactoryConfig.class); when(config.resource_resolver_log_closing()).thenReturn(true); ResourceResolverFactoryActivator rrfa = spy(new ResourceResolverFactoryActivator()); - Whitebox.setInternalState(rrfa, "config", config); + setField(rrfa, "config", config); CommonResourceResolverFactoryImpl crrfi = new CommonResourceResolverFactoryImpl(rrfa); final ResourceResolver rr = new ResourceResolverImpl(crrfi, false, null, resourceProviderTracker); assertTrue(rr.isLive()); @@ -824,4 +823,12 @@ public class ResourceResolverImplTest { } + public static void setField(Object o, String name, Object value) throws Exception { + Field f = o.getClass().getDeclaredField(name); + f.setAccessible(true); + f.set(o, value); + } + + + } diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControlTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControlTest.java index c99aa54..429dd41 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControlTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControlTest.java @@ -67,6 +67,9 @@ import org.junit.Test; import org.mockito.Mockito; import org.osgi.framework.BundleContext; +import static org.mockito.ArgumentMatchers.nullable; +import static org.mockito.ArgumentMatchers.any; + @SuppressWarnings("unchecked") public class ResourceResolverControlTest { @@ -157,9 +160,9 @@ public class ResourceResolverControlTest { somePathRootResource = configureResourceAt(rootProvider, "/some/path"); // configure query at '/' - when(rootProvider.listChildren((ResolveContext<Object>) Mockito.anyObject(), Mockito.eq(root))).thenReturn(Arrays.asList(somethingResource, someRootResource).iterator()); - when(rootProvider.listChildren((ResolveContext<Object>) Mockito.anyObject(), Mockito.eq(someRootResource))).thenReturn(Arrays.asList(somePathRootResource).iterator()); - when(rootProvider.getResource((ResolveContext<Object>) Mockito.anyObject(), Mockito.eq("/some/path"), Mockito.anyObject(), Mockito.anyObject())).thenReturn(somePathResource); + when(rootProvider.listChildren((ResolveContext<Object>) nullable(ResolveContext.class), Mockito.eq(root))).thenReturn(Arrays.asList(somethingResource, someRootResource).iterator()); + when(rootProvider.listChildren((ResolveContext<Object>) any(ResolveContext.class), Mockito.eq(someRootResource))).thenReturn(Arrays.asList(somePathRootResource).iterator()); + when(rootProvider.getResource((ResolveContext<Object>) any(ResolveContext.class), Mockito.eq("/some/path"), any(), any())).thenReturn(somePathResource); ResourceResolver rr = mock(ResourceResolver.class); ResourceAccessSecurityTracker securityTracker = Mockito.mock(ResourceAccessSecurityTracker.class); @@ -201,7 +204,7 @@ public class ResourceResolverControlTest { Resource mockResource = newMockResource(path); - when(provider.getResource((ResolveContext<T>) Mockito.any(), Mockito.eq(path), (ResourceContext) Mockito.any(), (Resource) Mockito.any())) + when(provider.getResource((ResolveContext<T>) nullable(ResolveContext.class), Mockito.eq(path), nullable(ResourceContext.class), nullable(Resource.class))) .thenReturn(mockResource); return mockResource; @@ -239,7 +242,7 @@ public class ResourceResolverControlTest { } private ResolveContext<Object> mockContext() { - return (ResolveContext<Object>) Mockito.any(); + return (ResolveContext<Object>) nullable(ResolveContext.class); } /** @@ -301,11 +304,11 @@ public class ResourceResolverControlTest { public void getParent_differentProviders() { final Resource childResource = mock(Resource.class); when(childResource.getPath()).thenReturn("/some/path"); - when(subProvider.getResource((ResolveContext<Object>) Mockito.anyObject(), Mockito.eq("/some/path"), (ResourceContext) Mockito.anyObject(), (Resource)Mockito.eq(null))).thenReturn(childResource); + when(subProvider.getResource((ResolveContext<Object>) nullable(ResolveContext.class), Mockito.eq("/some/path"), nullable(ResourceContext.class), (Resource)Mockito.eq(null))).thenReturn(childResource); final Resource parentResource = mock(Resource.class); when(parentResource.getPath()).thenReturn("/some"); - when(rootProvider.getResource((ResolveContext<Object>) Mockito.anyObject(), Mockito.eq("/some"), (ResourceContext) Mockito.anyObject(), (Resource)Mockito.eq(null))).thenReturn(parentResource); + when(rootProvider.getResource((ResolveContext<Object>) nullable(ResolveContext.class), Mockito.eq("/some"), nullable(ResourceContext.class), (Resource)Mockito.eq(null))).thenReturn(parentResource); Resource child = crp.getResource(context, "/some/path", null, null, false); assertNotNull(child); @@ -400,7 +403,7 @@ public class ResourceResolverControlTest { public void copy_differentProvider() throws PersistenceException { Resource newRes = newMockResource("/object"); - when(rootProvider.create(mockContext(), Mockito.eq("/object"), Mockito.anyMap())) + when(rootProvider.create(mockContext(), Mockito.eq("/object"), nullable(Map.class))) .thenReturn(newRes); Resource resource = crp.copy(context, "/some/path/object", "/"); @@ -435,7 +438,7 @@ public class ResourceResolverControlTest { public void move_differentProvider() throws PersistenceException { Resource newRes = newMockResource("/object"); - when(rootProvider.create(mockContext(), Mockito.eq("/object"), Mockito.anyMap())).thenReturn(newRes); + when(rootProvider.create(mockContext(), Mockito.eq("/object"), nullable(Map.class))).thenReturn(newRes); Resource resource = crp.move(context, "/some/path/object", "/"); @@ -694,6 +697,6 @@ public class ResourceResolverControlTest { final AuthenticatedResourceProvider p = control.getBestMatchingModifiableProvider(rrContext, "/libs/foo"); p.create(rr, "/foo", null); - Mockito.verify(rootProvider).create(Mockito.any(), Mockito.eq("/foo"), Mockito.isNull(Map.class)); + Mockito.verify(rootProvider).create(nullable(ResolveContext.class), Mockito.eq("/foo"), Mockito.isNull(Map.class)); } } diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AbstractMappingMapEntriesTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AbstractMappingMapEntriesTest.java index 6b2bca0..36c35c0 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AbstractMappingMapEntriesTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AbstractMappingMapEntriesTest.java @@ -50,10 +50,10 @@ import java.util.concurrent.Semaphore; import static org.apache.sling.resourceresolver.util.MockTestUtil.createStringInterpolationProviderConfiguration; import static org.apache.sling.resourceresolver.util.MockTestUtil.setupStringInterpolationProvider; import static org.junit.Assert.fail; -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyMap; -import static org.mockito.Matchers.anyString; -import static org.mockito.Matchers.eq; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyMap; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -216,11 +216,11 @@ public abstract class AbstractMappingMapEntriesTest { * so that we can add children to them and create the iterators after * everything is setup */ - static interface ResourceDecorator { + public static interface ResourceDecorator { public List<Resource> getChildrenList(); } - static class DataFuture { + public static class DataFuture { public Future<Iterator<?>> future; public DataFuture(Future<Iterator<?>> future) { diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/EtcMappingMapEntriesTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/EtcMappingMapEntriesTest.java index a9e390e..f0fb4ec 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/EtcMappingMapEntriesTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/EtcMappingMapEntriesTest.java @@ -48,8 +48,8 @@ import static org.apache.sling.resourceresolver.impl.ResourceResolverImpl.PROP_R import static org.apache.sling.resourceresolver.impl.mapping.MapEntries.PROP_REDIRECT_EXTERNAL; import static org.apache.sling.resourceresolver.util.MockTestUtil.ExpectedEtcMapping; import static org.junit.Assert.assertEquals; -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyString; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/MapEntriesTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/MapEntriesTest.java index 6a0b69c..fc8ec76 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/MapEntriesTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/MapEntriesTest.java @@ -21,9 +21,9 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyString; -import static org.mockito.Matchers.eq; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -68,6 +68,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; +import org.mockito.ArgumentMatchers; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; @@ -76,6 +77,7 @@ import org.mockito.stubbing.Answer; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import org.osgi.service.event.EventAdmin; +import org.osgi.service.event.Event; @RunWith(Parameterized.class) public class MapEntriesTest extends AbstractMappingMapEntriesTest { @@ -443,7 +445,7 @@ public class MapEntriesTest extends AbstractMappingMapEntriesTest { // map entries should have no alias atm assertTrue( mapEntries.getResolveMaps().isEmpty()); // till now we already have 2 events being sent - Mockito.verify(eventAdmin,Mockito.times(2)).postEvent(Mockito.anyObject()); + Mockito.verify(eventAdmin,Mockito.times(2)).postEvent(ArgumentMatchers.any(Event.class)); // 3 updates at the same onChange call mapEntries.onChange(Arrays.asList( @@ -461,7 +463,7 @@ public class MapEntriesTest extends AbstractMappingMapEntriesTest { assertTrue(entries.stream().anyMatch(e -> e.getPattern().contains("/target/found3"))); // a single event is sent for all 3 added vanity paths - Mockito.verify(eventAdmin,Mockito.times(3)).postEvent(Mockito.anyObject()); + Mockito.verify(eventAdmin,Mockito.times(3)).postEvent(ArgumentMatchers.any(Event.class)); } @Test diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/providers/stateful/SecureResourceProviderDecoratorTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/providers/stateful/SecureResourceProviderDecoratorTest.java index 8442a71..a342704 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/providers/stateful/SecureResourceProviderDecoratorTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/providers/stateful/SecureResourceProviderDecoratorTest.java @@ -134,7 +134,7 @@ public class SecureResourceProviderDecoratorTest { // correct } - Mockito.verifyZeroInteractions(rp); + Mockito.verifyNoInteractions(rp); } @Test diff --git a/src/test/java/org/apache/sling/resourceresolver/util/MockTestUtil.java b/src/test/java/org/apache/sling/resourceresolver/util/MockTestUtil.java index 5291b5b..3ff210f 100644 --- a/src/test/java/org/apache/sling/resourceresolver/util/MockTestUtil.java +++ b/src/test/java/org/apache/sling/resourceresolver/util/MockTestUtil.java @@ -53,6 +53,8 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.mockito.Mockito.withSettings; +import static org.mockito.ArgumentMatchers.nullable; + public class MockTestUtil { static final String PROP_SLING_TARGET = "sling:target"; @@ -161,13 +163,13 @@ public class MockTestUtil { // register the resource with the provider if (provider != null) { - when(provider.listChildren(Mockito.any(ResolveContext.class), Mockito.eq(resource))).thenAnswer(new Answer<Iterator<Resource>>() { + when(provider.listChildren(nullable(ResolveContext.class), Mockito.eq(resource))).thenAnswer(new Answer<Iterator<Resource>>() { @Override public Iterator<Resource> answer(InvocationOnMock invocation) throws Throwable { return childrenList.iterator(); } }); - when(provider.getResource(Mockito.any(ResolveContext.class), Mockito.eq(fullPath), Mockito.any(ResourceContext.class), Mockito.any(Resource.class))).thenReturn(resource); + when(provider.getResource(nullable(ResolveContext.class), Mockito.eq(fullPath), nullable(ResourceContext.class), nullable(Resource.class))).thenReturn(resource); } if (properties != null) { ValueMap vm = new SimpleValueMapImpl(); @@ -346,7 +348,7 @@ public class MockTestUtil { * so that we can add children to them and create the iterators after * everything is setup */ - static interface ResourceChildrenAccessor { + public static interface ResourceChildrenAccessor { public List<Resource> getChildrenList(); }