@Test
public void propertiesWithGapsAreBoundToSourcesConfigurer() {

    CamelContext context = new DefaultCamelContext();
    context.getPropertiesComponent().setInitialProperties(asProperties(
        "camel.k.sources[0].name", "MyRoutesWithBeans",
        "camel.k.sources[0].location", "classpath:MyRoutesWithBeans.java",
        "camel.k.sources[2].name", "MyRoutesConfig",
        "camel.k.sources[2].location", "classpath:MyRoutesConfig.java"
    ));
    SourcesConfigurer configuration = new SourcesConfigurer();
    PropertiesSupport.bindProperties(
        context,
        configuration,
        k -> k.startsWith(SourcesConfigurer.CAMEL_K_SOURCES_PREFIX),
        SourcesConfigurer.CAMEL_K_PREFIX);
    assertThat(configuration.getSources())
        .hasSize(3)
        .filteredOn(Objects::nonNull)
        .hasSize(2)
        .anyMatch(byNameAndLocation("MyRoutesWithBeans", "classpath:MyRoutesWithBeans.java"))
        .anyMatch(byNameAndLocation("MyRoutesConfig", "classpath:MyRoutesConfig.java"));
}