@SuppressWarnings({"unused", "unchecked"}) public void generate(@Observes(precedence = 100) final GenerateDeployment event) throws Exception { final Class testClass = event.getTestClass().getJavaClass(); this.container.setTestClass(testClass); final List<Method> annotatedMethods = Stream.of(testClass.getDeclaredMethods()) .filter(m -> m.isAnnotationPresent(ArtifactDependencies.class)) .collect(Collectors.toList()); if (annotatedMethods.size() > 1) { throw new IllegalArgumentException("Too many methods annotated with " + ArtifactDependencies.class.getName()); } if (annotatedMethods.size() == 1) { final Method dependencyMethod = annotatedMethods.get(0); dependencyMethod.setAccessible(true); validate(dependencyMethod); this.container.setRequestedMavenArtifacts((List<String>) dependencyMethod.invoke(null)); } }
@SuppressWarnings({"unused", "unchecked"}) public void generate(@Observes(precedence = 100) final GenerateDeployment event) throws Exception { final Class testClass = event.getTestClass().getJavaClass(); this.container.setTestClass(testClass); final List<Method> annotatedMethods = Stream.of(testClass.getDeclaredMethods()) .filter(m -> m.isAnnotationPresent(ArtifactDependencies.class)) .collect(Collectors.toList()); if (annotatedMethods.size() > 1) { throw new IllegalArgumentException("Too many methods annotated with " + ArtifactDependencies.class.getName()); } if (annotatedMethods.size() == 1) { final Method dependencyMethod = annotatedMethods.get(0); dependencyMethod.setAccessible(true); validate(dependencyMethod); this.container.setRequestedMavenArtifacts((List<String>) dependencyMethod.invoke(null)); } }
public void generateDeployment(@Observes GenerateDeployment event) { final Collection<DeploymentScenarioGenerator> deploymentScenarioGenerators = serviceLoader.get().all(DeploymentScenarioGenerator.class); DeploymentScenario scenario = new DeploymentScenario(); for (DeploymentScenarioGenerator generator : deploymentScenarioGenerators) { for (DeploymentDescription deployment : generator.generate(event.getTestClass())) { scenario.addDeployment(deployment); } } validate(scenario); createTestableDeployments(scenario, event.getTestClass()); deployment.set(scenario); }
public void generateDeployment(@Observes GenerateDeployment event) { final Collection<DeploymentScenarioGenerator> deploymentScenarioGenerators = serviceLoader.get().all(DeploymentScenarioGenerator.class); DeploymentScenario scenario = new DeploymentScenario(); for (DeploymentScenarioGenerator generator : deploymentScenarioGenerators) { for (DeploymentDescription deployment : generator.generate(event.getTestClass())) { scenario.addDeployment(deployment); } } validate(scenario); createTestableDeployments(scenario, event.getTestClass()); deployment.set(scenario); }