|
|
@ -1,5 +1,5 @@
|
|
|
|
/*
|
|
|
|
/*
|
|
|
|
* Copyright 2012-2020 the original author or authors.
|
|
|
|
* Copyright 2012-2021 the original author or authors.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
* you may not use this file except in compliance with the License.
|
|
|
|
* you may not use this file except in compliance with the License.
|
|
|
@ -160,18 +160,39 @@ class ConfigDataPropertiesTests {
|
|
|
|
@Test
|
|
|
|
@Test
|
|
|
|
void isActiveAgainstBoundData() {
|
|
|
|
void isActiveAgainstBoundData() {
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|
source.put("spring.config.import", "one,two,three");
|
|
|
|
|
|
|
|
source.put("spring.config.activate.on-cloud-platform", "kubernetes");
|
|
|
|
source.put("spring.config.activate.on-cloud-platform", "kubernetes");
|
|
|
|
source.put("spring.config.activate.on-profile", "a | b");
|
|
|
|
source.put("spring.config.activate.on-profile", "a | b");
|
|
|
|
Binder binder = new Binder(source);
|
|
|
|
Binder binder = new Binder(source);
|
|
|
|
ConfigDataProperties properties = ConfigDataProperties.get(binder);
|
|
|
|
ConfigDataProperties properties = ConfigDataProperties.get(binder);
|
|
|
|
ConfigDataActivationContext context = new ConfigDataActivationContext(CloudPlatform.KUBERNETES,
|
|
|
|
ConfigDataActivationContext context = new ConfigDataActivationContext(CloudPlatform.KUBERNETES,
|
|
|
|
createTestProfiles());
|
|
|
|
createTestProfiles());
|
|
|
|
assertThat(properties.getImports()).containsExactly(ConfigDataLocation.of("one"), ConfigDataLocation.of("two"),
|
|
|
|
|
|
|
|
ConfigDataLocation.of("three"));
|
|
|
|
|
|
|
|
assertThat(properties.isActive(context)).isTrue();
|
|
|
|
assertThat(properties.isActive(context)).isTrue();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
|
|
|
void isActiveAgainstBoundDataWhenProfilesDontMatch() {
|
|
|
|
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|
|
|
|
|
source.put("spring.config.activate.on-cloud-platform", "kubernetes");
|
|
|
|
|
|
|
|
source.put("spring.config.activate.on-profile", "x | z");
|
|
|
|
|
|
|
|
Binder binder = new Binder(source);
|
|
|
|
|
|
|
|
ConfigDataProperties properties = ConfigDataProperties.get(binder);
|
|
|
|
|
|
|
|
ConfigDataActivationContext context = new ConfigDataActivationContext(CloudPlatform.KUBERNETES,
|
|
|
|
|
|
|
|
createTestProfiles());
|
|
|
|
|
|
|
|
assertThat(properties.isActive(context)).isFalse();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
|
|
|
void isActiveAgainstBoundDataWhenCloudPlatformDoesntMatch() {
|
|
|
|
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|
|
|
|
|
source.put("spring.config.activate.on-cloud-platform", "cloud-foundry");
|
|
|
|
|
|
|
|
source.put("spring.config.activate.on-profile", "a | b");
|
|
|
|
|
|
|
|
Binder binder = new Binder(source);
|
|
|
|
|
|
|
|
ConfigDataProperties properties = ConfigDataProperties.get(binder);
|
|
|
|
|
|
|
|
ConfigDataActivationContext context = new ConfigDataActivationContext(CloudPlatform.KUBERNETES,
|
|
|
|
|
|
|
|
createTestProfiles());
|
|
|
|
|
|
|
|
assertThat(properties.isActive(context)).isFalse();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
@Test
|
|
|
|
void isActiveWhenBindingToLegacyProperty() {
|
|
|
|
void isActiveWhenBindingToLegacyProperty() {
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
|
|
|
|