releng: use Hamcrest's assertThat instead of JUnit's deprecated
assertThat
diff --git a/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/impl/PackagePropertiesImplTest.java b/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/impl/PackagePropertiesImplTest.java
index 99a330c..eb5c7ad 100644
--- a/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/impl/PackagePropertiesImplTest.java
+++ b/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/impl/PackagePropertiesImplTest.java
@@ -25,8 +25,8 @@
 
 import org.apache.jackrabbit.vault.packaging.PackageId;
 import org.apache.jackrabbit.vault.packaging.PackageProperties;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
-import org.junit.Assert;
 import org.junit.Test;
 
 public class PackagePropertiesImplTest {
@@ -48,32 +48,32 @@
     @Test
     public void testGetDependenciesLocations() throws URISyntaxException {
         PackageProperties packageProperties = new SimplePackageProperties(Collections.singletonMap(PackageProperties.NAME_DEPENDENCIES_LOCATIONS, "group1:name1:1.0=maven:com.example.mygroupid:myartifactId:1.0.0:zip"));
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.singletonMap(PackageId.fromString("group1:name1:1.0"), new URI("maven:com.example.mygroupid:myartifactId:1.0.0:zip"))));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.singletonMap(PackageId.fromString("group1:name1:1.0"), new URI("maven:com.example.mygroupid:myartifactId:1.0.0:zip"))));
         
         packageProperties = new SimplePackageProperties(Collections.singletonMap(PackageProperties.NAME_DEPENDENCIES_LOCATIONS, "group1:name1:1.0=maven:com.example.mygroupid:myartifactId:1.0.0:zip,group2:name2:2.0=maven:com.example.mygroupid2:myartifactId2:2.0.0:zip,"));
         Map<PackageId, URI> expectedDependenciesLocations = new HashMap<>();
         expectedDependenciesLocations.put(PackageId.fromString("group1:name1:1.0"), new URI("maven:com.example.mygroupid:myartifactId:1.0.0:zip"));
         expectedDependenciesLocations.put(PackageId.fromString("group2:name2:2.0"), new URI("maven:com.example.mygroupid2:myartifactId2:2.0.0:zip"));
         
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(expectedDependenciesLocations));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(expectedDependenciesLocations));
     }
 
     @Test
     public void testGetInvalidDependenciesLocations() throws URISyntaxException {
         PackageProperties packageProperties = new SimplePackageProperties(Collections.singletonMap(PackageProperties.NAME_DEPENDENCIES_LOCATIONS, "group1:name1:1.0maven:com.example.mygroupid:myartifactId:1.0.0:zip"));
         // no key=value format
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
         // invalid key (pid)
         packageProperties = new SimplePackageProperties(Collections.singletonMap(PackageProperties.NAME_DEPENDENCIES_LOCATIONS, "=maven:com.example.mygroupid:myartifactId:1.0.0:zip"));
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
         // invalid value (uri)
         packageProperties = new SimplePackageProperties(Collections.singletonMap(PackageProperties.NAME_DEPENDENCIES_LOCATIONS, "group1:name1:1.0=maven:invalid uri"));
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
     }
 
     @Test
     public void testGetNotSetDependenciesLocations() throws URISyntaxException {
         PackageProperties packageProperties = new SimplePackageProperties(Collections.emptyMap());
-        Assert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
+        MatcherAssert.assertThat(packageProperties.getDependenciesLocations(), Matchers.equalTo(Collections.emptyMap()));
     }
 }
diff --git a/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/integration/FSInstallStateTest.java b/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/integration/FSInstallStateTest.java
index 321ec5a..e140146 100644
--- a/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/integration/FSInstallStateTest.java
+++ b/vault-core/src/test/java/org/apache/jackrabbit/vault/packaging/integration/FSInstallStateTest.java
@@ -17,6 +17,8 @@
 
 package org.apache.jackrabbit.vault.packaging.integration;
 
+import static org.junit.Assert.assertEquals;
+
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
@@ -32,12 +34,10 @@
 import org.apache.jackrabbit.vault.packaging.SubPackageHandling;
 import org.apache.jackrabbit.vault.packaging.registry.impl.FSInstallState;
 import org.apache.jackrabbit.vault.packaging.registry.impl.FSPackageStatus;
+import org.hamcrest.MatcherAssert;
 import org.junit.Test;
 import org.xmlunit.matchers.CompareMatcher;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertThat;
-
 /**
  * Test the Package registry interface
  */
@@ -71,7 +71,7 @@
         state.save(out);
         out.close();
 
-        assertThat(out.toString("utf-8"), CompareMatcher.isIdenticalTo(TEST_XML));
+        MatcherAssert.assertThat(out.toString("utf-8"), CompareMatcher.isIdenticalTo(TEST_XML));
         assertEquals(TEST_XML, out.toString("utf-8"));
     }
 
diff --git a/vault-core/src/test/java/org/apache/jackrabbit/vault/util/QNameComparatorTest.java b/vault-core/src/test/java/org/apache/jackrabbit/vault/util/QNameComparatorTest.java
index 8481dfd..01a1446 100644
--- a/vault-core/src/test/java/org/apache/jackrabbit/vault/util/QNameComparatorTest.java
+++ b/vault-core/src/test/java/org/apache/jackrabbit/vault/util/QNameComparatorTest.java
@@ -24,8 +24,8 @@
 import javax.xml.XMLConstants;
 import javax.xml.namespace.QName;
 
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
-import org.junit.Assert;
 import org.junit.Test;
 
 public class QNameComparatorTest {
@@ -45,6 +45,6 @@
         names.add(name5);
         Collections.sort(names, new QNameComparator());
         
-        Assert.assertThat(names, Matchers.contains(name2, name5, name4, name3, name1));
+        MatcherAssert.assertThat(names, Matchers.contains(name2, name5, name4, name3, name1));
     }
 }
diff --git a/vault-rcp/src/test/java/org/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImplTest.java b/vault-rcp/src/test/java/org/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImplTest.java
index 8ad95bc..8462ad5 100644
--- a/vault-rcp/src/test/java/org/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImplTest.java
+++ b/vault-rcp/src/test/java/org/apache/jackrabbit/vault/rcp/impl/RcpTaskManagerImplTest.java
@@ -21,25 +21,19 @@
 import java.io.InputStream;
 import java.net.URISyntaxException;
 import java.util.Arrays;
-import java.util.Collection;
 import java.util.Collections;
 import java.util.Dictionary;
-import java.util.stream.Collectors;
 
 import javax.jcr.RepositoryException;
 import javax.jcr.SimpleCredentials;
 
-import org.apache.commons.lang3.builder.EqualsBuilder;
-import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
 import org.apache.jackrabbit.spi2dav.ConnectionOptions;
 import org.apache.jackrabbit.vault.fs.api.RepositoryAddress;
 import org.apache.jackrabbit.vault.fs.config.ConfigurationException;
 import org.apache.jackrabbit.vault.fs.config.DefaultWorkspaceFilter;
 import org.apache.jackrabbit.vault.rcp.RcpTask;
-import org.hamcrest.Description;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
-import org.hamcrest.TypeSafeMatcher;
 import org.hamcrest.collection.IsIterableContainingInOrder;
 import org.junit.Assert;
 import org.junit.Before;
@@ -108,11 +102,11 @@
         connectionOptionsBuilder.proxyHost("proxyHost");
         RcpTaskImpl taskOld = (RcpTaskImpl)taskManager.addTask(new RepositoryAddress("http://localhost:4502"), connectionOptionsBuilder.build(), new SimpleCredentials("testUser", "pw".toCharArray()), "/target/path", "2", Arrays.asList("exclude1", "exclude2"), false);
         RcpTaskImpl taskNew = (RcpTaskImpl)taskManager.editTask(taskOld.getId(), null, null, null, null, null, null, null);
-        Assert.assertThat(taskNew, Matchers.equalTo(taskOld));
+        MatcherAssert.assertThat(taskNew, Matchers.equalTo(taskOld));
         
         RepositoryAddress newSource = new RepositoryAddress("http://localhost:4503");
         taskNew = (RcpTaskImpl)taskManager.editTask(taskOld.getId(), newSource, null, null, null, null, null, null);
-        Assert.assertThat(taskNew, Matchers.not(Matchers.equalTo(taskOld)));
+        MatcherAssert.assertThat(taskNew, Matchers.not(Matchers.equalTo(taskOld)));
         Assert.assertEquals(newSource, taskNew.getSource());
     }
 
@@ -137,6 +131,6 @@
         // convert to Map
         RcpTaskManagerImpl taskManager2 = new RcpTaskManagerImpl(mockBundleContext, mockConfigurationAdmin, RcpTaskManagerImpl.createMapFromDictionary(configProperties));
         // how to get list ordered by id?
-        Assert.assertThat(taskManager2.tasks.values(), IsIterableContainingInOrder.contains(taskManager.tasks.values().toArray()));
+        MatcherAssert.assertThat(taskManager2.tasks.values(), IsIterableContainingInOrder.contains(taskManager.tasks.values().toArray()));
     }
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/DocumentViewParserValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/DocumentViewParserValidatorTest.java
index 56063f6..7e49adf 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/DocumentViewParserValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/DocumentViewParserValidatorTest.java
@@ -37,7 +37,6 @@
 import org.apache.jackrabbit.vault.util.DocViewNode;
 import org.apache.jackrabbit.vault.util.DocViewProperty;
 import org.apache.jackrabbit.vault.util.JcrConstants;
-import org.apache.jackrabbit.vault.validation.ValidationViolation;
 import org.apache.jackrabbit.vault.validation.impl.util.DocumentViewXmlContentHandler;
 import org.apache.jackrabbit.vault.validation.spi.DocumentViewXmlValidator;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
@@ -46,6 +45,7 @@
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
 import org.apache.sling.api.SlingConstants;
 import org.apache.sling.jcr.resource.JcrResourceConstants;
+import org.hamcrest.MatcherAssert;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -165,7 +165,7 @@
     public void testDocViewWithEmptyElements() throws IOException {
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/jcr_root/apps/emptyelements/.content.xml")) {
             Collection<ValidationMessage> messages = validator.validateJcrData(input, Paths.get("apps", "emptyelements", ".content.xml"), Paths.get(""), nodePathsAndLineNumbers);
-            Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
 
             // verify node names
             Map<String, Integer> expectedNodePathsAndLineNumber = new HashMap<>();
@@ -181,7 +181,7 @@
 
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/jcr_root/apps/child1.xml")) {
             Collection<ValidationMessage> messages = validator.validateJcrData(input, Paths.get("apps", "child1.xml"), Paths.get(""), nodePathsAndLineNumbers);
-            Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
 
             Map<String, DocViewProperty> properties = new HashMap<>();
             properties.put(NameConstants.JCR_PRIMARYTYPE.toString(),
@@ -225,7 +225,7 @@
             throws ParserConfigurationException, SAXException, URISyntaxException, IOException, NamespaceException {
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/jcr_root/apps/child2/.content.xml")) {
             Collection<ValidationMessage> messages = validator.validateJcrData(input, Paths.get("apps", "child2", ".content.xml"), Paths.get(""), nodePathsAndLineNumbers);
-            Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
 
             Map<String, DocViewProperty> properties = new HashMap<>();
             properties.put(NameConstants.JCR_PRIMARYTYPE.toString(),
@@ -255,7 +255,7 @@
         // https://issues.apache.org/jira/browse/JCRVLT-358"
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/jcr_root/apps/child2/child1.xml")) {
             Collection<ValidationMessage> messages = validator.validateJcrData(input, Paths.get("apps", "child2", "child1.xml"), Paths.get(""), nodePathsAndLineNumbers);
-            Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
 
             Mockito.verifyNoMoreInteractions(docViewXmlValidator);
 
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorFactoryTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorFactoryTest.java
index 2089117..6685e3d 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorFactoryTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorFactoryTest.java
@@ -25,14 +25,13 @@
 
 import javax.xml.parsers.ParserConfigurationException;
 
-import org.apache.jackrabbit.vault.validation.ValidationExecutor;
-import org.apache.jackrabbit.vault.validation.ValidationExecutorFactory;
 import org.apache.jackrabbit.vault.validation.impl.util.ValidatorSettingsImpl;
 import org.apache.jackrabbit.vault.validation.spi.ValidationContext;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.Validator;
 import org.apache.jackrabbit.vault.validation.spi.ValidatorFactory;
 import org.apache.jackrabbit.vault.validation.spi.ValidatorSettings;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
 import org.junit.Assert;
 import org.junit.Before;
@@ -99,7 +98,7 @@
         expectedValidators.put("id2", validator2);
         expectedValidators.put("id3", validator3);
         Assert.assertEquals(expectedValidators.toString(), actualValidators.toString());
-        Assert.assertThat(actualValidators.keySet(), Matchers.contains("id1", "id2", "id3"));
+        MatcherAssert.assertThat(actualValidators.keySet(), Matchers.contains("id1", "id2", "id3"));
         // the reinstantiate with a different order
         Collections.shuffle(validatorFactories);
         executorFactory = new ValidationExecutorFactory(validatorFactories);
@@ -110,15 +109,15 @@
         actualValidators = executor.getAllValidatorsById();
         // the returned validators should still have the same order
         Assert.assertEquals(expectedValidators.toString(), actualValidators.toString());
-        Assert.assertThat(actualValidators.keySet(), Matchers.contains("id1", "id2", "id3"));
+        MatcherAssert.assertThat(actualValidators.keySet(), Matchers.contains("id1", "id2", "id3"));
     }
 
     @Test
     public void testOrderOfValidatorFactories()  {
-        Assert.assertThat(executorFactory.validatorFactories, Matchers.contains(validatorFactory1, validatorFactory2, validatorFactory3));
+        MatcherAssert.assertThat(executorFactory.validatorFactories, Matchers.contains(validatorFactory1, validatorFactory2, validatorFactory3));
         Collections.shuffle(validatorFactories);
         executorFactory = new ValidationExecutorFactory(validatorFactories);
-        Assert.assertThat(executorFactory.validatorFactories, Matchers.contains(validatorFactory1, validatorFactory2, validatorFactory3));
+        MatcherAssert.assertThat(executorFactory.validatorFactories, Matchers.contains(validatorFactory1, validatorFactory2, validatorFactory3));
     }
 
     @Test
@@ -126,7 +125,7 @@
         Mockito.when(validatorFactory2.getServiceRanking()).thenReturn(3);
         Mockito.when(validatorFactory3.getServiceRanking()).thenReturn(3);
         executorFactory = new ValidationExecutorFactory(validatorFactories);
-        Assert.assertThat(executorFactory.validatorFactories, Matchers.containsInAnyOrder(validatorFactory1, validatorFactory2, validatorFactory3));
+        MatcherAssert.assertThat(executorFactory.validatorFactories, Matchers.containsInAnyOrder(validatorFactory1, validatorFactory2, validatorFactory3));
     }
 
     @Test
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorTest.java
index 5194220..d64c9cd 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/ValidationExecutorTest.java
@@ -32,8 +32,6 @@
 import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.jackrabbit.vault.fs.config.ConfigurationException;
-import org.apache.jackrabbit.vault.validation.ValidationExecutor;
-import org.apache.jackrabbit.vault.validation.ValidationViolation;
 import org.apache.jackrabbit.vault.validation.spi.DocumentViewXmlValidator;
 import org.apache.jackrabbit.vault.validation.spi.GenericJcrDataValidator;
 import org.apache.jackrabbit.vault.validation.spi.GenericMetaInfDataValidator;
@@ -47,6 +45,7 @@
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.Validator;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
 import org.junit.Assert;
 import org.junit.Before;
@@ -103,8 +102,8 @@
 
     @Test
     public void testUnusedValidators() throws ParserConfigurationException, SAXException {
-        Assert.assertThat(executor.getUnusedValidatorsById(), Matchers.hasEntry("unusedid", unusedValidator));
-        Assert.assertThat(executor.getUnusedValidatorsById(), Matchers.aMapWithSize(1));
+        MatcherAssert.assertThat(executor.getUnusedValidatorsById(), Matchers.hasEntry("unusedid", unusedValidator));
+        MatcherAssert.assertThat(executor.getUnusedValidatorsById(), Matchers.aMapWithSize(1));
     }
 
     @Test
@@ -149,7 +148,7 @@
             throws URISyntaxException, IOException, SAXException, ParserConfigurationException, ConfigurationException {
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/META-INF/vault/genericfile.txt")) {
             Collection<ValidationViolation> messages = validate(input, executor, Paths.get(""), "vault/genericfile.txt", true);
-            Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
             Mockito.verify(genericMetaInfDataValidator, Mockito.never()).validateMetaInfData(Mockito.any(), Mockito.any());
         }
     }
@@ -157,7 +156,7 @@
     @Test
     public void testMetaInfFolder() throws URISyntaxException, IOException, SAXException {
         Collection<ValidationViolation> messages = validateFolder(executor, Paths.get(""), "vault/genericfile.txt", true);
-        Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
         Mockito.verify(metaInfPathValidator).validateMetaInfPath(Paths.get("vault", "genericfile.txt"), Paths.get(""), true);
     }
 
@@ -193,7 +192,7 @@
             throws URISyntaxException, IOException, SAXException, ParserConfigurationException, ConfigurationException {
         try (InputStream input = this.getClass().getResourceAsStream("/simple-package/jcr_root/apps/genericfile.xml")) {
             Collection<ValidationViolation> messages = validate(input, executor, Paths.get(""), "apps/genericfile.xml", false);
-            Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
             Mockito.verify(genericJcrDataValidator, Mockito.never()).validateJcrData(Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any());
         }
     }
@@ -201,7 +200,7 @@
     @Test
     public void testJcrRootFolder() throws URISyntaxException, IOException, SAXException {
         Collection<ValidationViolation> messages = validateFolder(executor, Paths.get(""), "apps.dir", false);
-        Assert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationViolationMatcher.noValidationInCollection());
         NodeContext expectedNodeContext = new NodeContextImpl("/apps", Paths.get("apps.dir"), Paths.get(""));
         Mockito.verify(jcrPathValidator).validateJcrPath(expectedNodeContext, true, true);
         Mockito.verify(nodePathValidator).validate(expectedNodeContext);
@@ -254,7 +253,7 @@
         } else {
             List<ValidationMessage> filteredMessages = messages.stream()
                     .filter(m -> m.getSeverity().ordinal() >= thresholdSeverity.ordinal()).collect(Collectors.toList());
-            Assert.assertThat(filteredMessages, Matchers.contains(violations));
+            MatcherAssert.assertThat(filteredMessages, Matchers.contains(violations));
         }
     }
 
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidatorTest.java
index 8c162f6..46ef18a 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AccessControlValidatorTest.java
@@ -31,7 +31,7 @@
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
-import org.junit.Assert;
+import org.hamcrest.MatcherAssert;
 import org.junit.Test;
 
 public class AccessControlValidatorTest {
@@ -47,8 +47,8 @@
 
         DocViewNode node = new DocViewNode("somename", "somename", null, props, null, "rep:ACL");
         Collection<ValidationMessage> messages = validator.validate(node,  new NodeContextImpl("/apps/test/deep", Paths.get(".content.xml"), Paths.get("base")), false);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -60,8 +60,8 @@
 
         DocViewNode node = new DocViewNode("somename", "somename", null, props, null, "unstructured");
         Collection<ValidationMessage> messages = validator.validate(node,  new NodeContextImpl("/apps/test/deep", Paths.get(".content.xml"), Paths.get("base")), false);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -73,7 +73,7 @@
 
         DocViewNode node = new DocViewNode("somename", "somename", null, props, null, "nt:unstructured");
         Collection<ValidationMessage> messages = validator.validate(node,  new NodeContextImpl("/apps/test/deep", Paths.get(".content.xml"), Paths.get("base")), false);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
         ValidationExecutorTest.assertViolation(validator.done(), new ValidationMessage(ValidationMessageSeverity.ERROR, String.format(AccessControlValidator.MESSAGE_INEFFECTIVE_ACCESS_CONTROL_LIST, AccessControlHandling.MERGE)));
     }
 
@@ -89,7 +89,7 @@
         
         ValidationExecutorTest.assertViolation(messages,
                 new ValidationMessage(ValidationMessageSeverity.ERROR, String.format(AccessControlValidator.MESSAGE_IGNORED_ACCESS_CONTROL_LIST, AccessControlHandling.CLEAR)));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -104,6 +104,6 @@
         
         ValidationExecutorTest.assertViolation(messages,
                 new ValidationMessage(ValidationMessageSeverity.ERROR, String.format(AccessControlValidator.MESSAGE_IGNORED_ACCESS_CONTROL_LIST, AccessControlHandling.IGNORE)));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedFilterValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedFilterValidatorTest.java
index e7454db..f0ed13b 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedFilterValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedFilterValidatorTest.java
@@ -52,6 +52,7 @@
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
+import org.hamcrest.MatcherAssert;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -136,7 +137,7 @@
             Mockito.verify(filterValidator2).validate(filter);
 
             // as this is a cleanup filter no orphaned entries should be there
-            Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
         }
     }
 
@@ -156,15 +157,15 @@
                 dependenciesMetaInfo,
                 filter, // this is per test
                 validRoots);
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test/huhu"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test/huhu"), false, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test"), false, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test2/valid"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test2/valid"), false, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test3/valid"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test3/valid"), false, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test4/test/valid"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test4/test/valid"), false, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
     }
 
@@ -185,7 +186,7 @@
                 filter, // this is per test
                 validRoots);
 
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps"), true, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps"), true, false),
                 AnyValidationViolationMatcher.noValidationInCollection());
         ValidationExecutorTest.assertViolation(validator.validateJcrPath(getStandardNodeContext("/apps/notcontained"), false, false),
                 new ValidationMessage(ValidationMessageSeverity.WARN,
@@ -199,11 +200,11 @@
         props.put("prop1", new DocViewProperty("prop1", new String[] { "value1" }, false, PropertyType.STRING));
 
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, null, "nt:unstructured");
-        Assert.assertThat(validator.validate(node, getStandardNodeContext("/apps/notcontained"), true),
+        MatcherAssert.assertThat(validator.validate(node, getStandardNodeContext("/apps/notcontained"), true),
                 AnyValidationViolationMatcher.noValidationInCollection());
         // order nodes should be skipped
         node = new DocViewNode("ordernode", "ordernode", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, getStandardNodeContext("/apps/notcontained/ordernode"), false),
+        MatcherAssert.assertThat(validator.validate(node, getStandardNodeContext("/apps/notcontained/ordernode"), false),
                 AnyValidationViolationMatcher.noValidationInCollection());
         // regular nodes should not be skipped
         node = new DocViewNode("regularnode", "regularnode", null, props, null, null);
@@ -333,7 +334,7 @@
         ValidationExecutorTest.assertViolation(messages, ValidationMessageSeverity.INFO,
                 new ValidationMessage(ValidationMessageSeverity.INFO,
                         String.format(AdvancedFilterValidator.MESSAGE_NODE_BELOW_CLEANUP_FILTER, "/apps/test3")));
-        Assert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test2/something/anothervalid"), false, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(getStandardNodeContext("/apps/test2/something/anothervalid"), false, false),
                 AnyValidationMessageMatcher.noValidationInCollection());
         messages = validator.done();
         ValidationExecutorTest.assertViolation(messages, ValidationMessageSeverity.INFO,
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedPropertiesValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedPropertiesValidatorTest.java
index 53a0240..4a7ec4b 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedPropertiesValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/AdvancedPropertiesValidatorTest.java
@@ -36,7 +36,6 @@
 import org.apache.jackrabbit.vault.validation.spi.PropertiesValidator;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
-import org.apache.jackrabbit.vault.validation.spi.impl.AdvancedPropertiesValidator;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/DependencyValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/DependencyValidatorTest.java
index 83bc308..a819cde 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/DependencyValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/DependencyValidatorTest.java
@@ -34,9 +34,8 @@
 import org.apache.jackrabbit.vault.validation.AnyValidationMessageMatcher;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
-import org.apache.jackrabbit.vault.validation.spi.impl.DependencyValidator;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -68,13 +67,13 @@
         resolvedPackageInfos.add(getPackageInfo("group1:package1:0.1", "/filter.xml", null));
         resolvedPackageInfos.add(getPackageInfo("group2:package2:2.9", "/simple-package/META-INF/vault/filter.xml", null));
         
-        Assert.assertThat(validator.validate(properties), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(properties), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
     public void testValidateWithUnresolvedDependencies() {
         resolvedPackageInfos.add(getPackageInfo("group1:package1:0.1", "/filter.xml", null));
-        Assert.assertThat(validator.validate(properties), 
+        MatcherAssert.assertThat(validator.validate(properties), 
                 Matchers.contains(new ValidationMessage(ValidationMessageSeverity.ERROR, String.format(String.format(DependencyValidator.MESSAGE_UNRESOLVED_DEPENDENCY, "group2:package2:(2,3)")))));
     }
 
@@ -82,7 +81,7 @@
     public void testValidateWithDependenciesWithOverlappingFilterRoots() {
         resolvedPackageInfos.add(getPackageInfo("group1:package1:0.1", "/simple-package/META-INF/vault/filter.xml", null));
         resolvedPackageInfos.add(getPackageInfo("group2:package2:2.9", "/simple-package/META-INF/vault/filter.xml", null));
-        Assert.assertThat(validator.validate(properties), 
+        MatcherAssert.assertThat(validator.validate(properties), 
                 Matchers.contains(new ValidationMessage(ValidationMessageSeverity.ERROR, String.format(String.format(String.format(DependencyValidator.MESSAGE_DEPENDENCIES_WITH_OVERLAPPING_FILTERS,
                         "group2:package2:2.9", "/etc/project1", "group1:package1:0.1"))))));
     }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/EmptyElementsValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/EmptyElementsValidatorTest.java
index 886d0b9..5574b56 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/EmptyElementsValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/EmptyElementsValidatorTest.java
@@ -33,8 +33,8 @@
 import org.apache.jackrabbit.vault.validation.ValidationExecutorTest;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
-import org.apache.jackrabbit.vault.validation.spi.impl.EmptyElementsValidator;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
+import org.hamcrest.MatcherAssert;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -59,30 +59,30 @@
 
         // order node only (no other property)
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node1", Paths.get("node1"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node1", Paths.get("node1"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // another order node (to be covered by another file)
         node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node2", Paths.get("node2"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node2", Paths.get("node2"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // another order node only
         node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node3", Paths.get("node3"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node3", Paths.get("node3"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // no order node (due to props)
         node = new DocViewNode("jcr:root", "jcr:root", null, props, null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node4", Paths.get("node4"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node4", Paths.get("node4"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // no order node (due to primary type)
         node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, "nt:unstructed");
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node5", Paths.get("node5"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node5", Paths.get("node5"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // overwritten node 2 (plain file/folder)
         Assert.assertNull(validator.validate(new NodeContextImpl("/apps/test/node2", Paths.get("apps", "test", "node.xml"), Paths.get("base"))));
         
         // empty node with name rep:policy (doesn't do any harm and is included in standard packages from exporter as well)
         node = new DocViewNode("rep:policy", "rep:polucy", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node6", Paths.get("node6"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node6", Paths.get("node6"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         ValidationExecutorTest.assertViolation(validator.done(), 
                 new ValidationMessage(ValidationMessageSeverity.ERROR, EmptyElementsValidator.MESSAGE_EMPTY_NODES, "/apps/test/node1", Paths.get("node1"), Paths.get(""), null),
@@ -96,12 +96,12 @@
 
         // primary node type set as well
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, "nt:unstructured");
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("somepath1", Paths.get("/some/path"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("somepath1", Paths.get("/some/path"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // primary node type set with additional properties
         node = new DocViewNode("jcr:root", "jcr:root", null, props, null, "nt:unstructured");
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("somepath2", Paths.get("/some/path"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("somepath2", Paths.get("/some/path"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -111,10 +111,10 @@
 
         // order node only (no other property)
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node1", Paths.get("node1"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test/node1", Paths.get("node1"), Paths.get("")), false), AnyValidationMessageMatcher.noValidationInCollection());
         
         // folder below 
-        Assert.assertThat(validator.validate(new NodeContextImpl("/apps/test/node1", Paths.get("test"), Paths.get("base"))), AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());;
+        MatcherAssert.assertThat(validator.validate(new NodeContextImpl("/apps/test/node1", Paths.get("test"), Paths.get("base"))), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());;
     }
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/MergeLimitationsValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/MergeLimitationsValidatorTest.java
index 47a563d..717b024 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/MergeLimitationsValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/MergeLimitationsValidatorTest.java
@@ -33,9 +33,8 @@
 import org.apache.jackrabbit.vault.validation.ValidationExecutorTest;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
-import org.apache.jackrabbit.vault.validation.spi.impl.MergeLimitationsValidator;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
-import org.junit.Assert;
+import org.hamcrest.MatcherAssert;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -70,7 +69,7 @@
 
         DocViewNode node = new DocViewNode("somename", "somename", null, props, null, "nt:unstructured");
         Collection<ValidationMessage> messages = validator.validate(node, new NodeContextImpl("/apps/test/deep", Paths.get(".content.xml"), Paths.get("")), true);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
     }
 
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidatorTest.java
index 70d5598..55717bb 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/OakIndexDefinitionValidatorTest.java
@@ -35,9 +35,8 @@
 import org.apache.jackrabbit.vault.validation.ValidationExecutorTest;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
-import org.apache.jackrabbit.vault.validation.spi.impl.OakIndexDefinitionValidator;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
-import org.junit.Assert;
+import org.hamcrest.MatcherAssert;
 import org.junit.Before;
 import org.junit.Test;
 import org.xml.sax.SAXException;
@@ -100,7 +99,7 @@
         try (InputStream input = this.getClass().getResourceAsStream("/oak-index/filter-with-acl.xml")) {
             DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
             filter.load(input);
-            Assert.assertThat(validator.validate(filter), AnyValidationMessageMatcher.noValidationInCollection());
+            MatcherAssert.assertThat(validator.validate(filter), AnyValidationMessageMatcher.noValidationInCollection());
         }
         Map<String, DocViewProperty> props = new HashMap<>();
         props.put("rep:policy", new DocViewProperty("rep:policy", new String[] { "/home]" }, true, PropertyType.STRING));
@@ -108,10 +107,10 @@
 
         Collection<ValidationMessage> messages = validator.validate(node, new NodeContextImpl("/oak:index/rep:policy",
                 Paths.get("_oak_index", "_rep_policy.xml"), Paths.get("")), true);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
         node = new DocViewNode("allow", "allow", null, props, null, "rep:GrantACE");
         messages = validator.validate(node, new NodeContextImpl("/oak:index/rep:policy/allow",
                 Paths.get("_oak_index", "_rep_policy.xml"), Paths.get("")), false);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
     }
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImplTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImplTest.java
index eb9c143..b2d472b 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImplTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/JcrNodeTypeMetaDataImplTest.java
@@ -47,6 +47,7 @@
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessage;
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
+import org.hamcrest.MatcherAssert;
 import org.hamcrest.Matchers;
 import org.junit.Assert;
 import org.junit.Before;
@@ -256,7 +257,7 @@
 
         // calling a second time will not lead to anything
         messages = node.finalizeValidation(ntManagerProvider.getNamePathResolver(), ValidationMessageSeverity.ERROR, filter);
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
         
         // now add mandatory child node
         node = root.addChildNode(ntManagerProvider.getNamePathResolver(),
@@ -270,7 +271,7 @@
                 "my:nodeType1");
         messages = node.finalizeValidation(ntManagerProvider.getNamePathResolver(), ValidationMessageSeverity.ERROR,
                 new DefaultWorkspaceFilter());
-        Assert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(messages, AnyValidationMessageMatcher.noValidationInCollection());
 
         // add arbitrary property to root
         root.addProperty(createSimpleNodeContext("/"), ntManagerProvider.getNamePathResolver(),
@@ -399,13 +400,13 @@
     private static void assertNoValidationErrors(JcrNodeTypeMetaData node) {
         Collection<ValidationMessage> messages = new ArrayList<>();
         node.fetchAndClearValidationMessages(messages);
-        Assert.assertThat(messages, Matchers.empty());
+        MatcherAssert.assertThat(messages, Matchers.empty());
     }
 
     private static void assertValidationMessage(JcrNodeTypeMetaData node, ValidationMessage... expectedMessages) {
         Collection<ValidationMessage> actualMessages = new ArrayList<>();
         node.fetchAndClearValidationMessages(actualMessages);
-        Assert.assertThat(actualMessages, Matchers.contains(expectedMessages));
+        MatcherAssert.assertThat(actualMessages, Matchers.contains(expectedMessages));
     }
 
 }
diff --git a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidatorTest.java b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidatorTest.java
index 1cea74a..54c5913 100644
--- a/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidatorTest.java
+++ b/vault-validation/src/test/java/org/apache/jackrabbit/vault/validation/spi/impl/nodetype/NodeTypeValidatorTest.java
@@ -47,6 +47,7 @@
 import org.apache.jackrabbit.vault.validation.spi.ValidationMessageSeverity;
 import org.apache.jackrabbit.vault.validation.spi.util.NodeContextImpl;
 import org.apache.jackrabbit.vault.validation.spi.util.classloaderurl.URLFactory;
+import org.hamcrest.MatcherAssert;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Ignore;
@@ -120,15 +121,15 @@
                 new String[] { "rep:AccessControllable", "rep:RepoAccessControllable" }, true, PropertyType.STRING));
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, null, "rep:root");
         
-        Assert.assertThat(validator.validate(node, nodeContext, true), AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.validateEnd(node, nodeContext, true), AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, true), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validateEnd(node, nodeContext, true), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
     public void testInvalidChildNodeTypeBelowDefault() {
         NodeContext nodeContext = new NodeContextImpl("/apps", Paths.get("apps"), Paths.get(""));
-        Assert.assertThat(validator.validateJcrPath(nodeContext, true, false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validateJcrPath(nodeContext, true, false), AnyValidationMessageMatcher.noValidationInCollection());
         nodeContext = new NodeContextImpl("/apps/test", Paths.get("apps", "test"), Paths.get(""));
 
         Map<String, DocViewProperty> props = new HashMap<>();
@@ -142,7 +143,7 @@
                         String.format(JcrNodeTypeMetaDataImpl.MESSAGE_CHILD_NODE_OF_NOT_CONTAINED_PARENT_POTENTIALLY_NOT_ALLOWED,
                                 "test", "nt:unstructured", JcrConstants.NT_FOLDER,
                                 "Node type does not allow arbitrary child nodes and does not allow this specific name and node type either!"), nodeContext));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -153,13 +154,13 @@
         props.put(NameConstants.JCR_PRIMARYTYPE.toString(), new DocViewProperty(NameConstants.JCR_PRIMARYTYPE.toString(),
                 new String[] { JcrConstants.NT_FILE }, false, PropertyType.STRING));
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, null, JcrConstants.NT_FILE);
-        Assert.assertThat(validator.validate(node, nodeContext, false), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, false), AnyValidationMessageMatcher.noValidationInCollection());
 
         ValidationExecutorTest.assertViolation(validator.done(),
                 new ValidationMessage(ValidationMessageSeverity.ERROR,
                         String.format(JcrNodeTypeMetaDataImpl.MESSAGE_MANDATORY_CHILD_NODE_MISSING,
                                 "jcr:content [nt:base]", "nt:file", "/apps/test/node4")));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -211,7 +212,7 @@
                 new ValidationMessage(ValidationMessageSeverity.WARN,
                         String.format(NodeTypeValidator.MESSAGE_UNKNOWN_NODE_TYPE_OR_NAMESPACE,
                                 "Invalid primary type 'sling:Folder': sling: is not a registered namespace prefix."), nodeContext));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -225,7 +226,7 @@
                 new ValidationMessage(ValidationMessageSeverity.WARN,
                         String.format(NodeTypeValidator.MESSAGE_UNKNOWN_NODE_TYPE_OR_NAMESPACE,
                                 "Invalid node name 'cq:dialog': cq: is not a registered namespace prefix."), nodeContext));
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     
@@ -237,12 +238,12 @@
 
         // order node only (no other property)
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, Collections.emptyMap(), null, null);
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test", Paths.get("/some/path"), Paths.get("")), false),
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test", Paths.get("/some/path"), Paths.get("")), false),
                 AnyValidationMessageMatcher.noValidationInCollection());
 
         // missing node type but not contained in filter (with properties)
         node = new DocViewNode("jcr:root", "jcr:root", null, props, null, null);
-        Assert.assertThat(
+        MatcherAssert.assertThat(
                 validator.validate(node, new NodeContextImpl("/apps/test2/invalid", Paths.get("/some/path"), Paths.get("")), false),
                 AnyValidationMessageMatcher.noValidationInCollection());
 
@@ -256,9 +257,9 @@
         props.put(NameConstants.JCR_PRIMARYTYPE.toString(), new DocViewProperty(NameConstants.JCR_PRIMARYTYPE.toString(),
                 new String[] { "nt:unstructured" }, false, PropertyType.STRING));
         node = new DocViewNode("jcr:root", "jcr:root", null, props, null, "nt:unstructured");
-        Assert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test", Paths.get("/some/path"), Paths.get("")), false),
+        MatcherAssert.assertThat(validator.validate(node, new NodeContextImpl("/apps/test", Paths.get("/some/path"), Paths.get("")), false),
                 AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
 
     }
 
@@ -276,9 +277,9 @@
         props.put(NameConstants.JCR_PRIMARYTYPE.toString(), new DocViewProperty(NameConstants.JCR_PRIMARYTYPE.toString(),
                 new String[] { JcrConstants.NT_UNSTRUCTURED }, false, PropertyType.STRING));
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, new String[] { NameConstants.MIX_LASTMODIFIED.toString() }, JcrConstants.NT_UNSTRUCTURED);
-        Assert.assertThat(validator.validate(node, nodeContext, false),
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, false),
                 AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -291,9 +292,9 @@
         props.put(NameConstants.JCR_PRIMARYTYPE.toString(), new DocViewProperty(NameConstants.JCR_PRIMARYTYPE.toString(),
                 new String[] { JcrConstants.NT_UNSTRUCTURED }, false, PropertyType.STRING));
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, null, JcrConstants.NT_UNSTRUCTURED);
-        Assert.assertThat(validator.validate(node, nodeContext, false),
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, false),
                 AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
@@ -309,16 +310,16 @@
         props.put(NameConstants.JCR_ISCHECKEDOUT.toString(), new DocViewProperty(NameConstants.JCR_ISCHECKEDOUT.toString(),
                 new String[] { "true" }, false, PropertyType.BOOLEAN));
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, new String[] { NameConstants.MIX_VERSIONABLE.toString() }, "WorkflowModel");
-        Assert.assertThat(validator.validate(node, nodeContext, false),
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, false),
                 AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 
     @Test
     public void testAuthorizableNodes() {
         // the folder is detected first
         NodeContext nodeContext = new NodeContextImpl("/home/users/system/systemuser", Paths.get("node4"), Paths.get(""));
-        Assert.assertThat(validator.validateJcrPath(nodeContext, true, false),
+        MatcherAssert.assertThat(validator.validateJcrPath(nodeContext, true, false),
                 AnyValidationMessageMatcher.noValidationInCollection());
         Map<String, DocViewProperty> props = new HashMap<>();
         props.put(NameConstants.JCR_PRIMARYTYPE.toString(), new DocViewProperty(NameConstants.JCR_PRIMARYTYPE.toString(),
@@ -331,8 +332,8 @@
                 new String[] { "systemuser" }, false, PropertyType.STRING));
         // then the actual doctype with the user
         DocViewNode node = new DocViewNode("jcr:root", "jcr:root", null, props, new String[] { }, "rep:SystemUser");
-        Assert.assertThat(validator.validate(node, nodeContext, true),
+        MatcherAssert.assertThat(validator.validate(node, nodeContext, true),
                 AnyValidationMessageMatcher.noValidationInCollection());
-        Assert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
+        MatcherAssert.assertThat(validator.done(), AnyValidationMessageMatcher.noValidationInCollection());
     }
 }