package org.springframework.roo.classpath.details; import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.springframework.roo.classpath.PhysicalTypeIdentifier; import org.springframework.roo.classpath.itd.ItdMetadataProvider; import org.springframework.roo.model.JavaType; import org.springframework.roo.project.LogicalPath; import org.springframework.roo.project.Path; /** * Unit test of {@link DefaultPhysicalTypeMetadata} * * @author Andrew Swan * @since 1.2.0 */ public class DefaultPhysicalTypeMetadataTest { private static final String CANONICAL_PATH = "/usr/bob/projects/foo/Foo.java"; private static final String METADATA_ID = PhysicalTypeIdentifier.createIdentifier(new JavaType( "com.example.Bar"), LogicalPath.getInstance(Path.SRC_MAIN_JAVA, "")); // Fixture private DefaultPhysicalTypeMetadata metadata; @Mock private ClassOrInterfaceTypeDetails mockClassOrInterfaceTypeDetails; @Before public void setUp() { MockitoAnnotations.initMocks(this); metadata = new DefaultPhysicalTypeMetadata(METADATA_ID, CANONICAL_PATH, mockClassOrInterfaceTypeDetails); } @Test public void testGetItdCanoncialPath() { // Set up final ItdMetadataProvider mockItdMetadataProvider = mock(ItdMetadataProvider.class); when(mockItdMetadataProvider.getItdUniquenessFilenameSuffix()).thenReturn("MySuffix"); // Invoke final String itdCanonicalPath = metadata.getItdCanoncialPath(mockItdMetadataProvider); // Check assertEquals("/usr/bob/projects/foo/Foo_Roo_MySuffix.aj", itdCanonicalPath); } @Test public void testGetItdCanonicalPath() { // Set up final ItdMetadataProvider mockItdMetadataProvider = mock(ItdMetadataProvider.class); when(mockItdMetadataProvider.getItdUniquenessFilenameSuffix()).thenReturn("MySuffix"); // Invoke final String itdCanonicalPath = metadata.getItdCanonicalPath(mockItdMetadataProvider); // Check assertEquals("/usr/bob/projects/foo/Foo_Roo_MySuffix.aj", itdCanonicalPath); } }