- java.lang.Object
-
- net.morimekta.testing.console.ConsoleManager
-
- net.morimekta.testing.junit5.ConsoleExtension
-
- All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterEachCallback
,org.junit.jupiter.api.extension.BeforeEachCallback
,org.junit.jupiter.api.extension.Extension
,org.junit.jupiter.api.extension.ParameterResolver
,org.junit.jupiter.api.extension.TestWatcher
public class ConsoleExtension extends net.morimekta.testing.console.ConsoleManager implements org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.TestWatcher, org.junit.jupiter.api.extension.ParameterResolver
Extension for adding a fully virtual TTY and I/O for testing. This will forcefully replace standard in, out and err while the test is running, falling back to default (system streams) when completed. This means any test that uses normal system I/O to print ongoing status will not work with this extension.{@literal@}ExtendWith(ConsoleExtension.class) public class MyTest { {@literal@}Test public void testMyThing(Console console) { // use the console I/O or TTY or both. } }
-
-
Constructor Summary
Constructors Constructor Description ConsoleExtension()
Instantiate the extension.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterEach(org.junit.jupiter.api.extension.ExtensionContext context)
void
beforeEach(org.junit.jupiter.api.extension.ExtensionContext context)
Object
resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext)
boolean
supportsParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext)
void
testFailed(org.junit.jupiter.api.extension.ExtensionContext context, Throwable cause)
-
Methods inherited from class net.morimekta.testing.console.ConsoleManager
doAfterEach, doBeforeEach, getConsole, getTTY, onTestFailed, setDumpErrorOnFailure, setDumpOutputOnFailure, setForkError, setForkOutput, setInteractive, setTerminalSize
-
-
-
-
Method Detail
-
beforeEach
public void beforeEach(org.junit.jupiter.api.extension.ExtensionContext context)
- Specified by:
beforeEach
in interfaceorg.junit.jupiter.api.extension.BeforeEachCallback
-
testFailed
public void testFailed(org.junit.jupiter.api.extension.ExtensionContext context, Throwable cause)
- Specified by:
testFailed
in interfaceorg.junit.jupiter.api.extension.TestWatcher
-
afterEach
public void afterEach(org.junit.jupiter.api.extension.ExtensionContext context)
- Specified by:
afterEach
in interfaceorg.junit.jupiter.api.extension.AfterEachCallback
-
supportsParameter
public boolean supportsParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) throws org.junit.jupiter.api.extension.ParameterResolutionException
- Specified by:
supportsParameter
in interfaceorg.junit.jupiter.api.extension.ParameterResolver
- Throws:
org.junit.jupiter.api.extension.ParameterResolutionException
-
resolveParameter
public Object resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) throws org.junit.jupiter.api.extension.ParameterResolutionException
- Specified by:
resolveParameter
in interfaceorg.junit.jupiter.api.extension.ParameterResolver
- Throws:
org.junit.jupiter.api.extension.ParameterResolutionException
-
-