import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.nullValue;
-import static org.junit.Assert.assertThat;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import java.io.IOException;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
import org.onap.aai.babel.util.ArtifactTestUtils;
/**
public class TestModel {
/**
- * Load the Widget Configuration, including the type mappings and the UUID mappings.
+ * Load the Widget mapping configuration.
*
* @throws IOException
* if the mappings configuration cannot be loaded
*/
- @BeforeClass
+ @BeforeAll
public static void setup() throws IOException {
- ArtifactTestUtils util = new ArtifactTestUtils();
- util.loadWidgetToUuidMappings();
- util.loadWidgetMappings();
+ new ArtifactTestUtils().loadWidgetMappings();
}
@Test
assertMapping("org.openecomp.resource.vfc", "an.unknown.type", WidgetType.valueOf("VSERVER"));
}
+ /**
+ * Test that there is no exception if processing a Model that has no metadata properties.
+ */
+ @Test
+ public void testNullIdentProperties() {
+ assertDoesNotThrow(() -> {
+ createTestModel().populateModelIdentificationInformation(null);
+ });
+ }
+
+ /**
+ * Test that an exception occurs if calling code passes an unsupported Widget Type value to the base implementation
+ * of the hasWidgetType() method.
+ */
+ @Test
+ public void testUnknownWidgetType() {
+ assertThrows(IllegalArgumentException.class, () -> {
+ createTestModel().hasWidgetType(null);
+ });
+ }
+
+ /**
+ * Create any Model with a valid WidgetType, for method testing.
+ *
+ * @return a valid Model for testing purposes
+ */
+ private Model createTestModel() {
+ return new Resource(WidgetType.valueOf("VSERVER"), false);
+ }
+
/**
* Assert that the TOSCA type String is mapped to the expected Widget Type.
- *
+ *
* @param toscaType
* the TOSCA type or prefix
* @param widgetType
/**
* Assert that the TOSCA metadata type is mapped to the expected Widget Type.
- *
+ *
* @param toscaType
* the name (or name prefix) of the TOSCA type
* @param metadataType