Search in sources :

Example 61 with ContextualPreference

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());
}
Also used : ContextualPreferenceExternalResource(com.epam.pipeline.entity.contextual.ContextualPreferenceExternalResource) ContextualPreference(com.epam.pipeline.entity.contextual.ContextualPreference) Test(org.junit.Test)

Example 62 with ContextualPreference

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());
}
Also used : ContextualPreferenceExternalResource(com.epam.pipeline.entity.contextual.ContextualPreferenceExternalResource) ContextualPreference(com.epam.pipeline.entity.contextual.ContextualPreference) Test(org.junit.Test)

Example 63 with ContextualPreference

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));
}
Also used : ContextualPreferenceExternalResource(com.epam.pipeline.entity.contextual.ContextualPreferenceExternalResource) ContextualPreference(com.epam.pipeline.entity.contextual.ContextualPreference) Test(org.junit.Test)

Example 64 with ContextualPreference

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));
}
Also used : ContextualPreference(com.epam.pipeline.entity.contextual.ContextualPreference) Test(org.junit.Test)

Example 65 with ContextualPreference

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));
}
Also used : ContextualPreference(com.epam.pipeline.entity.contextual.ContextualPreference) ContextualPreferenceExternalResource(com.epam.pipeline.entity.contextual.ContextualPreferenceExternalResource) Test(org.junit.Test)

Aggregations

ContextualPreference (com.epam.pipeline.entity.contextual.ContextualPreference)72 Test (org.junit.Test)67 ContextualPreferenceExternalResource (com.epam.pipeline.entity.contextual.ContextualPreferenceExternalResource)35 AbstractSpringTest (com.epam.pipeline.AbstractSpringTest)10 ContextualPreferenceVO (com.epam.pipeline.controller.vo.ContextualPreferenceVO)4 AllowedInstanceAndPriceTypes (com.epam.pipeline.entity.cluster.AllowedInstanceAndPriceTypes)2 InstanceType (com.epam.pipeline.entity.cluster.InstanceType)2 Transactional (org.springframework.transaction.annotation.Transactional)2 MessageConstants (com.epam.pipeline.common.MessageConstants)1 MessageHelper (com.epam.pipeline.common.MessageHelper)1 Tool (com.epam.pipeline.entity.pipeline.Tool)1 PipelineUser (com.epam.pipeline.entity.user.PipelineUser)1 Role (com.epam.pipeline.entity.user.Role)1 List (java.util.List)1 Map (java.util.Map)1 Optional (java.util.Optional)1 Collectors (java.util.stream.Collectors)1 RequiredArgsConstructor (lombok.RequiredArgsConstructor)1 Slf4j (lombok.extern.slf4j.Slf4j)1