Search in sources :

Example 6 with MutableExtensionRegistry

use of org.junit.jupiter.engine.extension.MutableExtensionRegistry in project junit5 by junit-team.

the class JupiterEngineExecutionContextTests method extendWithAllAttributes.

@Test
void extendWithAllAttributes() {
    ExtensionContext extensionContext = mock(ExtensionContext.class);
    MutableExtensionRegistry extensionRegistry = MutableExtensionRegistry.createRegistryWithDefaultExtensions(configuration);
    TestInstancesProvider testInstancesProvider = mock(TestInstancesProvider.class);
    JupiterEngineExecutionContext newContext = // 
    originalContext.extend().withExtensionContext(// 
    extensionContext).withExtensionRegistry(// 
    extensionRegistry).withTestInstancesProvider(// 
    testInstancesProvider).build();
    assertSame(extensionContext, newContext.getExtensionContext());
    assertSame(extensionRegistry, newContext.getExtensionRegistry());
    assertSame(testInstancesProvider, newContext.getTestInstancesProvider());
}
Also used : MutableExtensionRegistry(org.junit.jupiter.engine.extension.MutableExtensionRegistry) ExtensionContext(org.junit.jupiter.api.extension.ExtensionContext) Test(org.junit.jupiter.api.Test)

Example 7 with MutableExtensionRegistry

use of org.junit.jupiter.engine.extension.MutableExtensionRegistry in project junit5 by junit-team.

the class JupiterEngineDescriptor method prepare.

@Override
public JupiterEngineExecutionContext prepare(JupiterEngineExecutionContext context) {
    MutableExtensionRegistry extensionRegistry = MutableExtensionRegistry.createRegistryWithDefaultExtensions(context.getConfiguration());
    EngineExecutionListener executionListener = context.getExecutionListener();
    ExecutableInvoker executableInvoker = new DefaultExecutableInvoker(context);
    ExtensionContext extensionContext = new JupiterEngineExtensionContext(executionListener, this, context.getConfiguration(), executableInvoker);
    // @formatter:off
    return context.extend().withExtensionRegistry(extensionRegistry).withExtensionContext(extensionContext).build();
// @formatter:on
}
Also used : MutableExtensionRegistry(org.junit.jupiter.engine.extension.MutableExtensionRegistry) EngineExecutionListener(org.junit.platform.engine.EngineExecutionListener) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker) ExecutableInvoker(org.junit.jupiter.api.extension.ExecutableInvoker) ExtensionContext(org.junit.jupiter.api.extension.ExtensionContext) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker)

Example 8 with MutableExtensionRegistry

use of org.junit.jupiter.engine.extension.MutableExtensionRegistry in project junit5 by junit-team.

the class TestMethodTestDescriptor method prepare.

// --- Node ----------------------------------------------------------------
@Override
public JupiterEngineExecutionContext prepare(JupiterEngineExecutionContext context) {
    MutableExtensionRegistry registry = populateNewExtensionRegistry(context);
    ThrowableCollector throwableCollector = createThrowableCollector();
    ExecutableInvoker executableInvoker = new DefaultExecutableInvoker(context);
    MethodExtensionContext extensionContext = new MethodExtensionContext(context.getExtensionContext(), context.getExecutionListener(), this, context.getConfiguration(), throwableCollector, executableInvoker);
    throwableCollector.execute(() -> {
        TestInstances testInstances = context.getTestInstancesProvider().getTestInstances(registry, throwableCollector);
        extensionContext.setTestInstances(testInstances);
    });
    // @formatter:off
    return context.extend().withExtensionRegistry(registry).withExtensionContext(extensionContext).withThrowableCollector(throwableCollector).build();
// @formatter:on
}
Also used : MutableExtensionRegistry(org.junit.jupiter.engine.extension.MutableExtensionRegistry) ExecutableInvoker(org.junit.jupiter.api.extension.ExecutableInvoker) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker) InterceptingExecutableInvoker(org.junit.jupiter.engine.execution.InterceptingExecutableInvoker) TestInstances(org.junit.jupiter.api.extension.TestInstances) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker) ThrowableCollector(org.junit.platform.engine.support.hierarchical.ThrowableCollector) JupiterThrowableCollectorFactory.createThrowableCollector(org.junit.jupiter.engine.support.JupiterThrowableCollectorFactory.createThrowableCollector)

Example 9 with MutableExtensionRegistry

use of org.junit.jupiter.engine.extension.MutableExtensionRegistry in project junit5 by junit-team.

the class TestTemplateTestDescriptor method prepare.

// --- Node ----------------------------------------------------------------
@Override
public JupiterEngineExecutionContext prepare(JupiterEngineExecutionContext context) throws Exception {
    MutableExtensionRegistry registry = populateNewExtensionRegistryFromExtendWithAnnotation(context.getExtensionRegistry(), getTestMethod());
    // The test instance should be properly maintained by the enclosing class's ExtensionContext.
    TestInstances testInstances = context.getExtensionContext().getTestInstances().orElse(null);
    ExecutableInvoker executableInvoker = new DefaultExecutableInvoker(context);
    ExtensionContext extensionContext = new TestTemplateExtensionContext(context.getExtensionContext(), context.getExecutionListener(), this, context.getConfiguration(), testInstances, executableInvoker);
    // @formatter:off
    return context.extend().withExtensionRegistry(registry).withExtensionContext(extensionContext).build();
// @formatter:on
}
Also used : MutableExtensionRegistry(org.junit.jupiter.engine.extension.MutableExtensionRegistry) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker) ExecutableInvoker(org.junit.jupiter.api.extension.ExecutableInvoker) ExtensionContext(org.junit.jupiter.api.extension.ExtensionContext) TestInstances(org.junit.jupiter.api.extension.TestInstances) DefaultExecutableInvoker(org.junit.jupiter.engine.execution.DefaultExecutableInvoker)

Aggregations

MutableExtensionRegistry (org.junit.jupiter.engine.extension.MutableExtensionRegistry)9 ExtensionContext (org.junit.jupiter.api.extension.ExtensionContext)5 ExecutableInvoker (org.junit.jupiter.api.extension.ExecutableInvoker)4 DefaultExecutableInvoker (org.junit.jupiter.engine.execution.DefaultExecutableInvoker)4 Test (org.junit.jupiter.api.Test)2 TestInstances (org.junit.jupiter.api.extension.TestInstances)2 InterceptingExecutableInvoker (org.junit.jupiter.engine.execution.InterceptingExecutableInvoker)2 JupiterThrowableCollectorFactory.createThrowableCollector (org.junit.jupiter.engine.support.JupiterThrowableCollectorFactory.createThrowableCollector)2 EngineExecutionListener (org.junit.platform.engine.EngineExecutionListener)2 ThrowableCollector (org.junit.platform.engine.support.hierarchical.ThrowableCollector)2