use of com.epam.pipeline.entity.contextual.ContextualPreference in project cloud-pipeline by epam.
the class DefaultContextualPreferenceReducerTest method reduceShouldReturnEmptyOptionalIfThereIsNoReducerForTheGivenPreference.
@Test
public void reduceShouldReturnEmptyOptionalIfThereIsNoReducerForTheGivenPreference() {
final ContextualPreferenceExternalResource resource = new ContextualPreferenceExternalResource(LEVEL, RESOURCE_ID);
final ContextualPreference preference1 = new ContextualPreference(ANOTHER_PREFERENCE, VALUE_1, resource);
final ContextualPreference preference2 = new ContextualPreference(ANOTHER_PREFERENCE, VALUE_2, resource);
final List<ContextualPreference> preferences = Arrays.asList(preference1, preference2);
final Optional<ContextualPreference> reducedPreference = reducer.reduce(preferences);
assertFalse(reducedPreference.isPresent());
}
use of com.epam.pipeline.entity.contextual.ContextualPreference in project cloud-pipeline by epam.
the class DefaultContextualPreferenceReducerTest method reduceShouldReturnEmptyOptionalIfThereArePreferencesWithDifferentTypes.
@Test
public void reduceShouldReturnEmptyOptionalIfThereArePreferencesWithDifferentTypes() {
final ContextualPreferenceExternalResource resource = new ContextualPreferenceExternalResource(LEVEL, RESOURCE_ID);
final ContextualPreference preference1 = new ContextualPreference(PREFERENCE_1, VALUE_1, PreferenceType.INTEGER, resource);
final ContextualPreference preference2 = new ContextualPreference(PREFERENCE_1, VALUE_2, PreferenceType.STRING, resource);
final List<ContextualPreference> preferences = Arrays.asList(preference1, preference2);
final Optional<ContextualPreference> reducedPreference = reducer.reduce(preferences);
assertFalse(reducedPreference.isPresent());
}
use of com.epam.pipeline.entity.contextual.ContextualPreference in project cloud-pipeline by epam.
the class DefaultContextualPreferenceReducerTest method reduceShouldReturnThePreferenceIfSingletonListIsGiven.
@Test
public void reduceShouldReturnThePreferenceIfSingletonListIsGiven() {
final ContextualPreferenceExternalResource resource = new ContextualPreferenceExternalResource(LEVEL, RESOURCE_ID);
final ContextualPreference preference = new ContextualPreference(PREFERENCE_1, INSTANCE_TYPES, resource);
final List<ContextualPreference> preferences = Collections.singletonList(preference);
final Optional<ContextualPreference> reducedPreference = reducer.reduce(preferences);
assertTrue(reducedPreference.isPresent());
assertThat(reducedPreference.get(), is(preference));
}
use of com.epam.pipeline.entity.contextual.ContextualPreference in project cloud-pipeline by epam.
the class SystemPreferenceHandlerTest method searchShouldLoadPreferenceByAnotherNameIfThereIsNoPreferenceWithTheFirstName.
@Test
public void searchShouldLoadPreferenceByAnotherNameIfThereIsNoPreferenceWithTheFirstName() {
final ContextualPreference preference = new ContextualPreference(ANOTHER_NAME, VALUE);
when(preferenceManager.load(eq(NAME))).thenReturn(Optional.empty());
when(preferenceManager.load(eq(ANOTHER_NAME))).thenReturn(Optional.of(systemPreference(ANOTHER_NAME, VALUE)));
final Optional<ContextualPreference> searchedPreference = handler().search(SEVERAL_NAMES, Collections.emptyList());
assertTrue(searchedPreference.isPresent());
assertThat(searchedPreference.get(), is(preference));
verify(preferenceManager).load(eq(NAME));
verify(preferenceManager).load(eq(ANOTHER_NAME));
}
use of com.epam.pipeline.entity.contextual.ContextualPreference in project cloud-pipeline by epam.
the class SystemPreferenceHandlerTest method searchShouldDelegateExecutionToTheNextHandlerIfNoneOfThePreferencesExist.
@Test
public void searchShouldDelegateExecutionToTheNextHandlerIfNoneOfThePreferencesExist() {
final ContextualPreference preference = new ContextualPreference(NAME, VALUE, resource);
final List<ContextualPreferenceExternalResource> resources = Collections.emptyList();
when(preferenceManager.load(eq(NAME))).thenReturn(Optional.empty());
when(preferenceManager.load(eq(ANOTHER_NAME))).thenReturn(Optional.empty());
when(nextHandler.search(eq(SEVERAL_NAMES), eq(resources))).thenReturn(Optional.of(preference));
final Optional<ContextualPreference> searchedPreference = handler().search(SEVERAL_NAMES, resources);
assertTrue(searchedPreference.isPresent());
assertThat(searchedPreference.get(), is(preference));
verify(preferenceManager).load(eq(NAME));
verify(preferenceManager).load(eq(ANOTHER_NAME));
verify(nextHandler).search(eq(SEVERAL_NAMES), eq(resources));
}
Aggregations