Skip to content

Commit

Permalink
Assert configured modules presence to be module wrapper aware
Browse files Browse the repository at this point in the history
  • Loading branch information
rob van der linden vooren committed Sep 14, 2018
1 parent f6aa5eb commit d62db7c
Showing 1 changed file with 9 additions and 18 deletions.
27 changes: 9 additions & 18 deletions core/src/test/java/org/axonframework/config/ConfigAssertions.java
Expand Up @@ -18,7 +18,8 @@


import java.util.List; import java.util.List;


import static org.junit.Assert.*; import static java.util.Arrays.stream;
import static org.junit.Assert.fail;


/** /**
* Assertion utils for axon {@link Configuration}. * Assertion utils for axon {@link Configuration}.
Expand All @@ -36,26 +37,16 @@ private ConfigAssertions() {
* Asserts whether given {@code modules} are present in the provided {@code configuration}. * Asserts whether given {@code modules} are present in the provided {@code configuration}.
* *
* @param configuration Axon configuration * @param configuration Axon configuration
* @param modules Module configurations * @param moduleTypes expected module configuration types present in {@code configuration}
*/ */
@SafeVarargs @SafeVarargs
public static void assertExpectedModules(Configuration configuration, public static void assertExpectedModules(Configuration configuration,
Class<? extends ModuleConfiguration>... modules) { Class<? extends ModuleConfiguration>... moduleTypes) {
List<ModuleConfiguration> configurationModules = configuration.getModules(); stream(moduleTypes).forEach(moduleType -> {
boolean[] matches = new boolean[configurationModules.size()]; List<? extends ModuleConfiguration> matches = configuration.findModules(moduleType);
for (Class<? extends ModuleConfiguration> module : modules) { if (matches.isEmpty()) {
boolean found = false; fail("No module of type '" + moduleType.getName() + "' was found in the provided configuration");
for (int i = 0; i < configurationModules.size(); i++) {
if (module.isInstance(configurationModules.get(i)) && !matches[i]) {
found = true;
matches[i] = true;
break;
}
} }
if (!found) { });
fail("Module '" + module + "' was not found in the provided configuration");
break;
}
}
} }
} }

0 comments on commit d62db7c

Please sign in to comment.