Queue<Instance<?>> getInstances(TestContext testContext) { //add instances ConcurrentLinkedDeque<Instance<?>> instances = new ConcurrentLinkedDeque<>(); ServiceLocatorUtil.INSTANCE.findAllWithFilter(InstanceProvider.class) .stream() .map(p -> p.get(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); ServiceLocatorUtil.INSTANCE.findAllWithFilter(ProxyInstanceController.class) .stream() .map(p -> p.create(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); return instances; }
private void addInstances(InjectionManager injectionManager, TestContext testContext) { ConcurrentLinkedDeque<Instance<?>> instances = new ConcurrentLinkedDeque<>(); ServiceLocatorUtil.INSTANCE.findAllWithFilter(InstanceProvider.class) .stream() .map(p -> p.get(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); ServiceLocatorUtil.INSTANCE.findAllWithFilter(ProxyInstanceController.class) .stream() .map(p -> p.create(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); removeInstances(injectionManager, instances); Binder binder = JerseyAbstractBinder.of(instances); injectionManager.register(binder); }
private void addInstances(ServiceLocator serviceLocator, TestContext testContext) { ConcurrentLinkedDeque<Instance<?>> instances = new ConcurrentLinkedDeque<>(); ServiceLocatorUtil.INSTANCE.findAllWithFilter(InstanceProvider.class) .stream() .map(p -> p.get(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); ServiceLocatorUtil.INSTANCE.findAllWithFilter(ProxyInstanceController.class) .stream() .map(p -> p.create(testContext)) .flatMap(p -> p.stream()) .forEach(p -> instances.addLast(p)); removeInstances(serviceLocator, instances); Binder instanceModule = HK2AbstractBinder.of(instances); DynamicConfigurationService dcs = serviceLocator.getService(DynamicConfigurationService.class); DynamicConfiguration config = dcs.createDynamicConfiguration(); instanceModule.bind(config); config.commit(); }
@Override public void stop(TestContext testContext) { Object testInstance = testContext.getTestInstance(); TestDescriptor testDescriptor = testContext.getTestDescriptor(); Collection<Class<? extends Annotation>> guidelines = testDescriptor.getGuidelines(); serviceLocatorUtil .findAllWithFilter(PostVerifier.class, guidelines, UnitCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify(); //invoke destroy method on fields annotated with Fixture testDescriptor.getFieldDescriptors() .forEach(p -> p.destroy(testInstance)); //invoke destroy method on sut field annotated with Fixture testContext.getSutDescriptor() .ifPresent(p -> p.destroy(testInstance)); testContext.<ServiceInstance>findProperty(SERVICE_INSTANCE) .ifPresent(ServiceInstance::destroy); resourceController.stop(testContext); }
ServiceLocatorUtil.INSTANCE.findAllWithFilter(InstanceProvider.class, IntegrationCategory.class) .stream() .forEach(p -> instances.addLast(p)); ServiceLocatorUtil.INSTANCE.findAllWithFilter(ProxyInstanceController.class) .stream() .map(p -> p.create(testContext))
.findAllWithFilter(PreVerifier.class, guidelines, UnitCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify(); serviceLocatorUtil.findAllWithFilter(SutReifier.class, UnitCategory.class) .forEach(p -> p.reify(testContext)); serviceLocatorUtil.findAllWithFilter(InitialReifier.class, UnitCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(CollaboratorReifier.class, UnitCategory.class) .forEach(p -> p.reify(testContext)); serviceLocatorUtil.findAllWithFilter(FinalReifier.class, UnitCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(Verifier.class, guidelines, UnitCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify();
serviceLocatorUtil.findAllWithFilter( CollaboratorReifier.class, SystemCategory.class).forEach(p -> p.reify(testContext)); .findAllWithFilter(PreVerifier.class, guidelines, SystemCategory.class) .forEach(p -> p.verify(testContext)); .findAllWithFilter(FinalReifier.class, SystemCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(Verifier.class, guidelines, SystemCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify();
@Override public void stop(TestContext testContext) { Object testInstance = testContext.getTestInstance(); TestDescriptor testDescriptor = testContext.getTestDescriptor(); Collection<Class<? extends Annotation>> guidelines = testDescriptor.getGuidelines(); serviceLocatorUtil .findAllWithFilter(PostVerifier.class, guidelines, IntegrationCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify(); //invoke destroy method on fields annotated with Fixture testDescriptor.getFieldDescriptors() .forEach(p -> p.destroy(testInstance)); //invoke destroy method on sut field annotated with Fixture testContext.getSutDescriptor() .ifPresent(p -> p.destroy(testInstance)); if (resourceController != null) { resourceController.stop(testContext); } testContext.<ServiceInstance>findProperty(SERVICE_INSTANCE) .ifPresent(ServiceInstance::destroy); }
Collection<Class<? extends Annotation>> guidelines = testDescriptor.getGuidelines(); serviceLocatorUtil.findAllWithFilter( PostVerifier.class, guidelines,
resourceController.start(testContext); serviceLocatorUtil.findAllWithFilter(CollaboratorReifier.class, IntegrationCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(PreVerifier.class, guidelines, IntegrationCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify(); serviceLocatorUtil.findAllWithFilter(InitialReifier.class, IntegrationCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(FinalReifier.class, IntegrationCategory.class) .forEach(p -> p.reify(testContext)); .findAllWithFilter(Verifier.class, guidelines, IntegrationCategory.class) .forEach(p -> p.verify(testContext)); testContext.verify();