From 8ef1cdfadf5d8c112ea1cc6a99f61ed21fb986de Mon Sep 17 00:00:00 2001 From: "mark.j.leonard" Date: Tue, 7 Aug 2018 17:26:14 +0100 Subject: [PATCH] Add test CSAR file for missing Service metadata Change-Id: I4138d1d60fe234949264f3c2d2e2156681e9075c Issue-ID: AAI-1448 Signed-off-by: mark.j.leonard --- .../onap/aai/babel/service/CsarToXmlConverterTest.java | 13 ++++++++++++- .../service-MissingMetadataTest.csar | Bin 0 -> 38741 bytes 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 src/test/resources/compressedArtifacts/service-MissingMetadataTest.csar diff --git a/src/test/java/org/onap/aai/babel/service/CsarToXmlConverterTest.java b/src/test/java/org/onap/aai/babel/service/CsarToXmlConverterTest.java index 62e9265..9cfdf9b 100644 --- a/src/test/java/org/onap/aai/babel/service/CsarToXmlConverterTest.java +++ b/src/test/java/org/onap/aai/babel/service/CsarToXmlConverterTest.java @@ -18,6 +18,7 @@ * limitations under the License. * ============LICENSE_END========================================================= */ + package org.onap.aai.babel.service; import static org.junit.Assert.assertThat; @@ -43,7 +44,7 @@ import org.onap.aai.babel.util.ArtifactTestUtils; import org.onap.aai.babel.xml.generator.XmlArtifactGenerationException; /** - * Tests {@link CsarToXmlConverter} + * Tests {@link CsarToXmlConverter}. */ public class CsarToXmlConverterTest { @@ -61,6 +62,9 @@ public class CsarToXmlConverterTest { VALID_CSAR_FILE( "service-SdWanServiceTest-csar.csar" ), + MISSING_METADATA_CSAR( + "service-MissingMetadataTest.csar" + ), NO_YAML_FILES( "noYmlFilesArchive.zip" ), @@ -139,6 +143,13 @@ public class CsarToXmlConverterTest { SERVICE_VERSION); } + @Test + public void testServiceMetadataMissing() + throws IOException, XmlArtifactGenerationException, CsarConverterException { + converter.generateXmlFromCsar(CsarTest.MISSING_METADATA_CSAR.getContent(), + CsarTest.MISSING_METADATA_CSAR.getName(), SERVICE_VERSION); + } + @Test public void generateXmlFromCsar() throws CsarConverterException, IOException, XmlArtifactGenerationException { Map expectedXmlFiles = createExpectedXmlFiles(); diff --git a/src/test/resources/compressedArtifacts/service-MissingMetadataTest.csar b/src/test/resources/compressedArtifacts/service-MissingMetadataTest.csar new file mode 100644 index 0000000000000000000000000000000000000000..fbb2fa1a45bb76ce2e612cefc5a2033cc27d584a GIT binary patch literal 38741 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