Testing ConfigurationProperty class - Neethahiremath/Wiki GitHub Wiki
refer https://www.baeldung.com/spring-boot-testing-configurationproperties
suppose you have a class
@Configuration
@ConfigurationProperties("kafka")
@Getter
@Setter
public class KafkaConfig {
private String autoOffsetReset;
private int sessionTimeoutMs;
private Boolean enableAutoCommit;
}
and want to test this class
- first place the yml file under test/resource/application.yml similar to src/main/resource/application.yml having the configuration
example:
kafka:
auto-offset-reset: earliest
enable-auto-commit: true
session-timeout-ms: 60000
- add the test case and run (refer sample example)
@ExtendWith(SpringExtension.class)
@ContextConfiguration(initializers = ConfigFileApplicationContextInitializer.class)
@ActiveProfiles("test")
@EnableConfigurationProperties(value = KafkaConfig.class)
public class KafkaBaseConfigTest {
@Autowired private KafkaConfig kafkaConfig;
@Test
void whenUsingSpringDefaultSizeConversion_thenDataSizeObjectIsSet() {
assertEquals(60000, kafkaConfig.getSessionTimeoutMs());
}
}