本文整理了Java中org.testifyproject.TestContext.getTestDescriptor()
方法的一些代码示例,展示了TestContext.getTestDescriptor()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TestContext.getTestDescriptor()
方法的具体详情如下:
包路径:org.testifyproject.TestContext
类名称:TestContext
方法名:getTestDescriptor
[英]Get the test class descriptor.
[中]获取测试类描述符。
代码示例来源:origin: org.testifyproject.junit4/spring-system-test
@RuntimeType
public Class<?>[] getServletConfigClasses(@SuperCall Callable<Class<?>[]> zuper,
@This Object object) throws Exception {
Class<?>[] result = zuper.call();
return TestContextHolder.INSTANCE.query(testContext -> {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Collection<Module> modules = testDescriptor.getModules();
Stream<Class<?>> testModules = modules.stream().map(Module::value);
Stream<Class<?>> productionModules = Stream.empty();
if (result != null) {
productionModules = Stream.of(result);
}
return Stream.concat(testModules, productionModules).toArray(Class[]::new);
});
}
代码示例来源:origin: org.testifyproject.junit4/spring-boot-system-test
@Override
public SpringApplicationBuilder configure(TestContext testContext) {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
ClassLoader classLoader = testDescriptor.getTestClassLoader();
Optional<Application> foundApplication = testDescriptor.getApplication();
SpringApplicationBuilder applicationBuilder = new SpringApplicationBuilder();
foundApplication.ifPresent(application -> {
applicationBuilder.sources(application.value())
.resourceLoader(new DefaultResourceLoader(classLoader))
.bannerMode(Banner.Mode.OFF);
});
return applicationBuilder;
}
代码示例来源:origin: org.testifyproject.junit4/jersey2-system-test
@Override
@SuppressWarnings("UseSpecificCatch")
public ResourceConfig configure(TestContext testContext) {
TestContextHolder.INSTANCE.set(testContext);
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Optional<Application> foundApplication = testDescriptor.getApplication();
ResourceConfig resourceConfig = null;
if (foundApplication.isPresent()) {
Application application = foundApplication.get();
resourceConfig = ReflectionUtil.INSTANCE.newInstance(application.value());
resourceConfig.setApplicationName(testContext.getName());
}
return resourceConfig;
}
代码示例来源:origin: org.testifyproject.level/unit
@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);
}
代码示例来源:origin: org.testifyproject.level/integration
@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);
}
代码示例来源:origin: org.testifyproject.level/system
@Override
public void stop(TestContext testContext) {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Object testInstance = testContext.getTestInstance();
Optional<SutDescriptor> sutDescriptor = testContext.getSutDescriptor();
代码示例来源:origin: org.testifyproject.di/di-spring
@Override
public Object postProcessBeforeInstantiation(Class<?> beanClass, String beanName) {
return testContext.getSutDescriptor().map(sutDescriptor -> {
MockProvider mockProvider = testContext.getMockProvider();
for (FieldDescriptor fieldDescriptor : testContext.getTestDescriptor()
.getFieldDescriptors()) {
if (!fieldDescriptor.getFake().isPresent()) {
continue;
}
Type fieldType = fieldDescriptor.getGenericType();
TypeToken fieldTypeToken = TypeToken.of(fieldType);
TypeToken rawTypeToken = getRawTypeToken(fieldType);
if (fieldTypeToken.isSupertypeOf(beanClass)) {
Optional<Object> foundValue = fieldDescriptor.getValue(testContext
.getTestInstance());
if (foundValue.isPresent()) {
return foundValue.get();
}
} else if (rawTypeToken.isSupertypeOf(beanClass)) {
return mockProvider.createFake(beanClass);
}
}
return null;
}).orElse(null);
}
代码示例来源:origin: org.testifyproject.junit4/spring-system-test
@Override
public ApplicationInstance start(TestContext testContext) {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Optional<Application> foundApplication = testDescriptor.getApplication();
ApplicationInstance applicationInstance = null;
if (foundApplication.isPresent()) {
Application application = foundApplication.get();
SpringApplicationInterceptor interceptor = new SpringApplicationInterceptor();
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
Class<?> dynamicApp = InstrumentUtil.INSTANCE.createSubclass(
application.value(), classLoader, interceptor
);
SpringServletContainerInitializer initializer =
new SpringServletContainerInitializer();
ServletInstance servletInstance = ServletInstance.builder()
.handler(dynamicApp)
.initializer(initializer)
.build();
applicationInstance = DefaultApplicationInstance.of(testContext, application);
applicationInstance.addProperty(ServletProperties.SERVLET_INSTANCE, servletInstance);
}
return applicationInstance;
}
}
代码示例来源:origin: org.testifyproject.di/di-guice
throws Exception {
Injector result = TestContextHolder.INSTANCE.query(testContext -> {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Queue<Module> prodModules = new ConcurrentLinkedQueue<>();
Queue<Module> testModules = new ConcurrentLinkedQueue<>();
代码示例来源:origin: org.testifyproject.di/di-hk2
@Override
public Object resolve(Injectee injectee, ServiceHandle root) {
return testContext.getSutDescriptor().map(sutDescriptor -> {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
MockProvider mockProvider = testContext.getMockProvider();
Object testInstance = testContext.getTestInstance();
Type requiredType = injectee.getRequiredType();
for (FieldDescriptor fieldDescriptor : testDescriptor.getFieldDescriptors()) {
if (fieldDescriptor.getFake().isPresent()) {
Type fieldType = fieldDescriptor.getGenericType();
Optional<Object> foundValue = fieldDescriptor.getValue(testInstance);
if (TypeToken.of(fieldType).isSupertypeOf(requiredType) && foundValue
.isPresent()) {
return foundValue.get();
} else if (getRawTypeToken(fieldType).isSupertypeOf(requiredType)) {
return mockProvider.createFake(TypeToken.of(requiredType)
.getRawType());
}
}
}
return null;
}).orElseGet(() -> findThreeThirtyService(injectee, root));
}
代码示例来源:origin: org.testifyproject.di/di-jersey
@Override
public Object resolve(Injectee injectee, ServiceHandle root) {
return testContext.getSutDescriptor().map(sutDescriptor -> {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
MockProvider mockProvider = testContext.getMockProvider();
Object testInstance = testContext.getTestInstance();
Type requiredType = injectee.getRequiredType();
for (FieldDescriptor fieldDescriptor : testDescriptor.getFieldDescriptors()) {
if (fieldDescriptor.getFake().isPresent()) {
Type fieldType = fieldDescriptor.getGenericType();
Optional<Object> foundValue = fieldDescriptor.getValue(testInstance);
if (TypeToken.of(fieldType).isSupertypeOf(requiredType) && foundValue
.isPresent()) {
return foundValue.get();
} else if (getRawTypeToken(fieldType).isSupertypeOf(requiredType)) {
return mockProvider.createFake(TypeToken.of(requiredType)
.getRawType());
}
}
}
return null;
}).orElseGet(() -> findThreeThirtyService(injectee, root));
}
代码示例来源:origin: org.testifyproject.di/di-guice
@Override
public List<Instance> get(TestContext testContext) {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
MockProvider mockProvider = testContext.getMockProvider();
Object testInstance = testContext.getTestInstance();
代码示例来源:origin: org.testifyproject.server/undertow
TestDescriptor testDescriptor = testContext.getTestDescriptor();
代码示例来源:origin: org.testifyproject.level/system
@Override
public void start(TestContext testContext) {
TestConfigurer testConfigurer = testContext.getTestConfigurer();
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Optional<SutDescriptor> foundSutDescriptor = testContext.getSutDescriptor();
Object testInstance = testContext.getTestInstance();
代码示例来源:origin: org.testifyproject.level/unit
Object testInstance = testContext.getTestInstance();
TestConfigurer testConfigurer = testContext.getTestConfigurer();
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Collection<Class<? extends Annotation>> guidelines = testDescriptor.getGuidelines();
代码示例来源:origin: org.testifyproject.di/di-jersey
@Override
public ServiceInstance configure(TestContext testContext, InjectionManager injectionManager) {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
ClassLoader classLoader = testDescriptor.getTestClassLoader();
JerseyInjectionResolver hK2InjectionResolver =
new JerseyInjectionResolver(testContext, injectionManager);
InstanceBinding<JerseyInjectionResolver> resolverBinding = Bindings
.service(hK2InjectionResolver)
.to(InjectionResolver.class)
.in(Singleton.class);
injectionManager.register(resolverBinding);
addModules(injectionManager, testDescriptor);
addScans(injectionManager, testDescriptor, classLoader);
addInstances(injectionManager, testContext);
return new JerseyServiceInstance(testContext, injectionManager);
}
代码示例来源:origin: org.testifyproject.level/integration
TestConfigurer testConfigurer = testContext.getTestConfigurer();
Optional<SutDescriptor> foundSutDescriptor = testContext.getSutDescriptor();
TestDescriptor testDescriptor = testContext.getTestDescriptor();
Collection<Class<? extends Annotation>> guidelines = testDescriptor.getGuidelines();
代码示例来源:origin: org.testifyproject.di/di-spring
testConfigurer.configure(testContext, applicationContext);
TestDescriptor testDescriptor = testContext.getTestDescriptor();
DefaultListableBeanFactory beanFactory =
(DefaultListableBeanFactory) applicationContext.getBeanFactory();
代码示例来源:origin: org.testifyproject.di/di-hk2
if (testContext.getName().equals(locatorName)) {
testContext.computeIfAbsent(SERVICE_INSTANCE, key -> {
TestDescriptor testDescriptor = testContext.getTestDescriptor();
ClassLoader classLoader = testDescriptor.getTestClassLoader();
代码示例来源:origin: org.testifyproject.junit4/spring-system-test
testConfigurer.configure(testContext, configuredContext);
TestDescriptor testDescriptor = testContext.getTestDescriptor();
内容来源于网络,如有侵权,请联系作者删除!