package io.katharsis.request.path;
import org.junit.Test;
import java.util.Arrays;
import java.util.Collections;
import static org.assertj.core.api.Assertions.assertThat;
public class ResourcePathTest {
@Test
public void onParentWithNoIdsShouldReturnInformationAboutResource() throws Exception {
// GIVEN
String resourceName = "resource";
JsonPath sut = new ResourcePath(resourceName);
// WHEN
boolean isCollection = sut.isCollection();
String testResourceName = sut.getResourceName();
// THEN
assertThat(isCollection).isTrue();
assertThat(testResourceName).isEqualTo(resourceName);
}
@Test
public void onParentWithOneIdShouldReturnInformationAboutResource() throws Exception {
// GIVEN
String resourceName = "resource";
JsonPath sut = new ResourcePath(resourceName, new PathIds(Collections.singletonList("1")));
// WHEN
boolean isCollection = sut.isCollection();
String testResourceName = sut.getResourceName();
// THEN
assertThat(isCollection).isFalse();
assertThat(testResourceName).isEqualTo(resourceName);
}
@Test
public void onParentWithManyIdsShouldReturnInformationAboutResource() throws Exception {
// GIVEN
String resourceName = "resource";
JsonPath sut = new ResourcePath(resourceName, new PathIds(Arrays.asList("1", "2")));
// WHEN
boolean isCollection = sut.isCollection();
String testResourceName = sut.getResourceName();
// THEN
assertThat(isCollection).isTrue();
assertThat(testResourceName).isEqualTo(resourceName);
}
}