package org.jtwig.property.selection;
import org.jtwig.property.resolver.PropertyResolver;
import org.jtwig.property.resolver.request.PropertyResolveRequestFactory;
import org.jtwig.value.Undefined;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
import static org.mockito.Mockito.mock;
public class SelectionPropertyResolveServiceTest {
private final PropertyResolveRequestFactory requestFactory = mock(PropertyResolveRequestFactory.class);
private SelectionPropertyResolveService underTest = new SelectionPropertyResolveService(requestFactory);
@Test
public void nullLeftValue() throws Exception {
PropertyResolver propertyResolver = mock(PropertyResolver.class);
SelectionRequest selectionRequest = mock(SelectionRequest.class);
SelectionResult result = underTest.resolve(propertyResolver, selectionRequest, null);
assertThat(result.getResolvedValue().isPresent(), is(false));
assertThat(result.getPropertyResolver().isPresent(), is(false));
}
@Test
public void undefinedLeftValue() throws Exception {
PropertyResolver propertyResolver = mock(PropertyResolver.class);
SelectionRequest selectionRequest = mock(SelectionRequest.class);
SelectionResult result = underTest.resolve(propertyResolver, selectionRequest, Undefined.UNDEFINED);
assertThat(result.getResolvedValue().isPresent(), is(false));
assertThat(result.getPropertyResolver().isPresent(), is(false));
}
}