package com.processpuzzle.artifact_type.domain; import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.notNullValue; import static org.hamcrest.core.IsEqual.equalTo; import static org.junit.Assert.assertThat; import org.junit.Test; import com.processpuzzle.litest.template.DomainObjectTestTemplate; import com.processpuzzle.sharedfixtures.domaintier.DomainTierTestConfiguration; public class ArtifactTypeTest extends DomainObjectTestTemplate<ArtifactType, ArtifactTypeTestFixture>{ //Constructor public ArtifactTypeTest() { super( DomainTierTestConfiguration.FIXTURE_CONTAINER_DEFINITION_PATH ); } //Test cases @Test public final void instantiation_requiresNameAndTypeGroupAndArtifactClassName() { assertThat( sut.getName(), equalTo( ArtifactTypeTestFixture.ARTIFACT_TYPE_NAME )); assertThat( sut.getGroup(), notNullValue() ); assertThat( sut.getGroup().getName(), equalTo( ArtifactTypeTestFixture.TYPE_GROUP_NAME )); assertThat( sut.getArtifactClassName(), equalTo( ArtifactTypeTestFixture.ARTIFACT_CLASS )); } @Test public final void addViewType_maintainsCollectionOfViewTypes() { assertThat( sut.getViewType( ArtifactTypeTestFixture.PROPERTY_VIEW_TYPE_NAME ), instanceOf( ArtifactPropertyViewType.class )); assertThat( sut.getViewType( ArtifactTypeTestFixture.PRINT_VIEW_TYPE_NAME ), instanceOf( ArtifactPrintViewType.class )); assertThat( sut.getViewType( ArtifactTypeTestFixture.ACCESSRIGHTS_VIEW_TYPE_NAME ), instanceOf( ArtifactAccessRightsViewType.class )); assertThat( sut.getViewType( ArtifactTypeTestFixture.MODIFICATIONS_VIEW_TYPE_NAME ), instanceOf( ArtifactModificationsViewType.class )); assertThat( sut.getViewType( ArtifactTypeTestFixture.COMMENTS_VIEW_TYPE_NAME ), instanceOf( ArtifactCommentsViewType.class )); } }