Package io.cloudstub.junit
Class FaultInjectionExtension
java.lang.Object
io.cloudstub.junit.FaultInjectionExtension
- All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterTestExecutionCallback,org.junit.jupiter.api.extension.BeforeTestExecutionCallback,org.junit.jupiter.api.extension.Extension
public final class FaultInjectionExtension
extends Object
implements org.junit.jupiter.api.extension.BeforeTestExecutionCallback, org.junit.jupiter.api.extension.AfterTestExecutionCallback
Standalone JUnit 6 extension that applies fault injection annotations to test methods.
Use this extension when you manage the CloudStub lifecycle yourself (e.g. via
@BeforeAll / @AfterAll) rather than through CloudStubExtension.
static CloudStub cloudMock = new CloudStub();
@BeforeAll
static void start() { cloudMock.start(); }
@AfterAll
static void stop() { cloudMock.stop(); }
@RegisterExtension
FaultInjectionExtension faults = new FaultInjectionExtension(cloudMock);
@SimulateThrottle(service = "sqs")
@Test
void throttleTest() { ... }
Fault state is always cleaned up after each test method, even if the test throws. If you use
CloudStubExtension, fault annotation support is built in — you do not need this extension
as well.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidafterTestExecution(@NonNull org.junit.jupiter.api.extension.ExtensionContext context) voidbeforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext context)
-
Constructor Details
-
FaultInjectionExtension
-
-
Method Details
-
beforeTestExecution
public void beforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext context) - Specified by:
beforeTestExecutionin interfaceorg.junit.jupiter.api.extension.BeforeTestExecutionCallback
-
afterTestExecution
public void afterTestExecution(@NonNull org.junit.jupiter.api.extension.ExtensionContext context) - Specified by:
afterTestExecutionin interfaceorg.junit.jupiter.api.extension.AfterTestExecutionCallback
-