use of cn.taketoday.context.properties.bind.Binder in project today-infrastructure by TAKETODAY.
the class ConfigDataLocationBindHandlerTests method bindToValueObjectFromCommaStringPropertyIgnoresEmptyElements.
@Test
void bindToValueObjectFromCommaStringPropertyIgnoresEmptyElements() {
MapConfigurationPropertySource source = new MapConfigurationPropertySource();
source.put("test.locations", ",a,b,,c,");
Binder binder = new Binder(source);
ValueObject bound = binder.bind("test", VALUE_OBJECT, this.handler).get();
String expectedLocation = "\"test.locations\" from property source \"source\"";
assertThat(bound.getLocation(0)).hasToString("a");
assertThat(bound.getLocation(0).getOrigin()).hasToString(expectedLocation);
assertThat(bound.getLocation(1)).hasToString("b");
assertThat(bound.getLocation(1).getOrigin()).hasToString(expectedLocation);
assertThat(bound.getLocation(2)).hasToString("c");
assertThat(bound.getLocation(2).getOrigin()).hasToString(expectedLocation);
}
use of cn.taketoday.context.properties.bind.Binder in project today-infrastructure by TAKETODAY.
the class ProfilesTests method getAcceptedWithProfileGroups.
@Test
void getAcceptedWithProfileGroups() {
MockEnvironment environment = new MockEnvironment();
environment.setProperty("context.profiles.active", "a,b,c");
environment.setProperty("context.profiles.group.a", "e,f");
environment.setProperty("context.profiles.group.e", "x,y");
environment.setDefaultProfiles("g", "h", "i");
Binder binder = Binder.get(environment);
Profiles profiles = new Profiles(environment, binder, null);
assertThat(profiles.getAccepted()).containsExactly("a", "e", "x", "y", "f", "b", "c");
}
use of cn.taketoday.context.properties.bind.Binder in project today-infrastructure by TAKETODAY.
the class ProfilesTests method getDefaultWhenDefaultEnvironmentProfileAndBinderProperty.
@Test
void getDefaultWhenDefaultEnvironmentProfileAndBinderProperty() {
MockEnvironment environment = new MockEnvironment();
environment.setProperty("context.profiles.default", "default");
List<ConfigurationPropertySource> sources = new ArrayList<>();
ConfigurationPropertySources.get(environment).forEach(sources::add);
sources.add(new MapConfigurationPropertySource(Collections.singletonMap("context.profiles.default", "a,b,c")));
Binder binder = new Binder(sources);
Profiles profiles = new Profiles(environment, binder, null);
assertThat(profiles.getDefault()).containsExactly("default");
}
use of cn.taketoday.context.properties.bind.Binder in project today-infrastructure by TAKETODAY.
the class ProfilesTests method isActiveWhenNoActiveAndDefaultDoesNotContainProfileReturnsFalse.
@Test
void isActiveWhenNoActiveAndDefaultDoesNotContainProfileReturnsFalse() {
MockEnvironment environment = new MockEnvironment();
environment.setDefaultProfiles("d", "e", "f");
Binder binder = Binder.get(environment);
Profiles profiles1 = new Profiles(environment, binder, null);
Profiles profiles = profiles1;
assertThat(profiles.isAccepted("x")).isFalse();
}
use of cn.taketoday.context.properties.bind.Binder in project today-infrastructure by TAKETODAY.
the class ProfilesTests method getActiveWhenNoEnvironmentProfilesAndNoPropertyReturnsEmptyArray.
@Test
void getActiveWhenNoEnvironmentProfilesAndNoPropertyReturnsEmptyArray() {
Environment environment = new MockEnvironment();
Binder binder = Binder.get(environment);
Profiles profiles = new Profiles(environment, binder, null);
assertThat(profiles.getActive()).isEmpty();
}
Aggregations