diff options
author | kooper <sergey.sachkov@est.tech> | 2019-03-04 13:47:51 +0000 |
---|---|---|
committer | kooper <sergey.sachkov@est.tech> | 2019-03-04 13:47:51 +0000 |
commit | 11e9d33f2f50ad3990905fba184b7c10d255070a (patch) | |
tree | 32e1a0ba3d5da03a41202e9bf28c28f099601972 /openecomp-be/lib/openecomp-tosca-lib/src/test/java/org | |
parent | 7deb4e0e5f6cf06b7fbb27c6bda4e91f847f4075 (diff) |
Add manifest non mano set support
Issue-ID: SDC-2141
Change-Id: I056e8f7c1da8f17ce8583207660882f85a4d11a4
Signed-off-by: kooper <sergey.sachkov@est.tech>
Diffstat (limited to 'openecomp-be/lib/openecomp-tosca-lib/src/test/java/org')
-rw-r--r-- | openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/csar/ManifestParsingTest.java | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/csar/ManifestParsingTest.java b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/csar/ManifestParsingTest.java new file mode 100644 index 0000000000..c6008f03d7 --- /dev/null +++ b/openecomp-be/lib/openecomp-tosca-lib/src/test/java/org/openecomp/sdc/tosca/csar/ManifestParsingTest.java @@ -0,0 +1,114 @@ +/* + * Copyright © 2016-2018 European Support Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openecomp.sdc.tosca.csar; + +import org.junit.Test; +import org.openecomp.sdc.common.errors.Messages; + +import java.io.IOException; +import java.io.InputStream; + +import static junit.framework.TestCase.assertTrue; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; + + +public class ManifestParsingTest { + + @Test + public void testSuccessfulParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/ValidTosca.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertTrue(onboardingManifest.isValid()); + assertEquals(onboardingManifest.getMetadata().size(), 4); + assertEquals(onboardingManifest.getSources().size(), 5); + } + } + + @Test + public void testNoMetadataParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/InvalidTosca1.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + assertTrue(onboardingManifest.getErrors().stream().anyMatch(error -> error + .contains(Messages.MANIFEST_INVALID_LINE.getErrorMessage().substring(0, 10)))); + } + } + + @Test + public void testBrokenMDParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/InvalidTosca2.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + assertTrue(onboardingManifest.getErrors().stream().anyMatch(error -> error + .contains(Messages.MANIFEST_INVALID_LINE.getErrorMessage().substring(0, 10)))); + } + } + + @Test + public void testNoMetaParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/InvalidTosca4.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + assertTrue(onboardingManifest.getErrors().stream().anyMatch(error -> error + .contains(Messages.MANIFEST_NO_METADATA.getErrorMessage().substring(0, 10)))); + } + } + + @Test + public void testSuccessfulNonManoParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/ValidNonManoTosca.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertTrue(onboardingManifest.isValid()); + assertEquals(onboardingManifest.getMetadata().size(), 4); + assertEquals(onboardingManifest.getSources().size(), 5); + assertEquals(onboardingManifest.getNonManoSources().size(), 2); + } + } + + @Test + public void testFailfulNonManoParsing() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/InValidNonManoTosca.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + } + } + + @Test + public void testFailfulNonManoParsingWithGarbadge() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/InvalidTocsaNonManoGarbadgeAtEnd.mf")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + } + } + + @Test + public void testParseManifestWithNoFile() throws IOException { + try (InputStream is = getClass() + .getResourceAsStream("/vspmanager.csar/manifest/SOME_WRONG_FILE")) { + Manifest onboardingManifest = OnboardingManifest.parse(is); + assertFalse(onboardingManifest.isValid()); + } + } +} |