Releases: maciejwalkowiak/wiremock-spring-boot
v2.1.2
What's Changed
- Output WireMock logs through Slf4j by @maciejwalkowiak in #27
Full Changelog: v2.1.1...v2.1.2
v2.1.1
What's Changed
- Avoid potential ClassCastException when handling context closed event. by @maciejwalkowiak in #24
Full Changelog: v2.1.0...v2.1.1
v2.1.0
What's Changed
- Favor
@Value
to retrieve property value in README example by @scordio in #17 - Add option to customize configuration on
@ConfigureWireMock
annotation by @maciejwalkowiak in #18 - Upgrade to Spring Boot 3.2.1 and Wiremock Standalone. by @maciejwalkowiak in #23
New Contributors
Full Changelog: v2.0.0...v2.1.0
v2.0.0
v1.0.2
What's Changed
- Add support for nested tests annotated with JUnit 5's
@Nested
by @maciejwalkowiak in #11 - Upgrade to Spring Boot 3.1.5 by @maciejwalkowiak in #12
- Upgrade Wiremock to 2.35.1 by @maciejwalkowiak in #13
- Manage JUnit version with Spring Boot BOM. by @maciejwalkowiak in #14
Full Changelog: v1.0.1...v1.0.2
1.0.1
What's Changed
- Introduce
InjectWireMock
annotation to avoidWireMock
naming collision by @maciejwalkowiak in #9
Full Changelog: v1.0.0...v1.0.1
1.0.0
No changes since 0.1.0. v1.0.0 is the same code base but released to Maven Central.
WireMock Spring Boot library drastically simplifies WireMock configuration in a Spring Boot and JUnit 5 application.
🤩 Highlights
- fully declarative WireMock setup
- support for multiple WireMockServer instances - one per HTTP client as recommended in the WireMock documentation
- automatically sets Spring environment properties
- does not pollute Spring application context with extra beans
- configuring WireMock extensions via
@ConfigureWireMock(extensions = ...
) - configuring stub locations via
@ConfigureWireMock(stubLocations = ...
)
✨ How to use
Use @EnableWireMock
with @ConfigureWireMock
with tests annotated that use SpringExtension
, like @SpringBootTest
:
@SpringBootTest
@EnableWireMock({
@ConfigureWireMock(name = "user-service", property = "user-client.url")
})
class TodoControllerTests {
@WireMock("user-service")
private WireMockServer wiremock;
@Autowired
private Environment env;
@Test
void aTest() {
env.getProperty("user-client.url"); // returns a URL to WireMockServer instance
wiremock.stubFor(...);
}
}
@EnableWireMock
adds test context customizer and enablesWireMockSpringExtension
@ConfigureWireMock
creates aWireMockServer
and passes theWireMockServer#baseUrl
to a Spring environment property with a name given byproperty
.@WireMock
injectsWireMockServer
instance to a test
📢 Feedback is much appreciated!
If you find this library useful, consider ❤️ Sponsoring the project! Thank you!
0.1.0
WireMock Spring Boot library drastically simplifies WireMock configuration in a Spring Boot and JUnit 5 application.
🤩 Highlights
- fully declarative WireMock setup
- support for multiple WireMockServer instances - one per HTTP client as recommended in the WireMock documentation
- automatically sets Spring environment properties
- does not pollute Spring application context with extra beans
- configuring WireMock extensions via
@ConfigureWireMock(extensions = ...
) - configuring stub locations via
@ConfigureWireMock(stubLocations = ...
)
✨ How to use
Use @EnableWireMock
with @ConfigureWireMock
with tests annotated that use SpringExtension
, like @SpringBootTest
:
@SpringBootTest
@EnableWireMock({
@ConfigureWireMock(name = "user-service", property = "user-client.url")
})
class TodoControllerTests {
@WireMock("user-service")
private WireMockServer wiremock;
@Autowired
private Environment env;
@Test
void aTest() {
env.getProperty("user-client.url"); // returns a URL to WireMockServer instance
wiremock.stubFor(...);
}
}
@EnableWireMock
adds test context customizer and enablesWireMockSpringExtension
@ConfigureWireMock
creates aWireMockServer
and passes theWireMockServer#baseUrl
to a Spring environment property with a name given byproperty
.@WireMock
injectsWireMockServer
instance to a test
📢 Feedback is much appreciated!
If you find this library useful, consider ❤️ Sponsoring the project! Thank you!