From c9f4e87e86c166ca5ba641dbb99d8a6a5f759e3a Mon Sep 17 00:00:00 2001 From: Kanagaraj Manickam k00365106 Date: Thu, 28 Feb 2019 12:12:46 +0530 Subject: HTTP: Add multipart support with multiple files Issue-ID: CLI-129 Change-Id: I65a4d48bb7ce2922043739b83fdc13de7d2f584d Signed-off-by: Kanagaraj Manickam k00365106 --- .../cli/fw/http/schema/ValidateSchemaTest.java | 50 ---------------- .../sample-multipart-schema-http.yaml | 68 ++++++++++++++++++++++ 2 files changed, 68 insertions(+), 50 deletions(-) delete mode 100644 profiles/http/src/test/java/org/onap/cli/fw/http/schema/ValidateSchemaTest.java create mode 100644 profiles/http/src/test/resources/open-cli-schema/sample-multipart-schema-http.yaml (limited to 'profiles/http/src/test') diff --git a/profiles/http/src/test/java/org/onap/cli/fw/http/schema/ValidateSchemaTest.java b/profiles/http/src/test/java/org/onap/cli/fw/http/schema/ValidateSchemaTest.java deleted file mode 100644 index 0bf073e7..00000000 --- a/profiles/http/src/test/java/org/onap/cli/fw/http/schema/ValidateSchemaTest.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2017 Huawei Technologies Co., Ltd. - * - * 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.onap.cli.fw.http.schema; - -import static org.junit.Assert.assertTrue; - -import java.util.List; - -import org.junit.Test; -import org.onap.cli.fw.cmd.OnapCommand; -import org.onap.cli.fw.error.OnapCommandException; -import org.onap.cli.fw.registrar.OnapCommandRegistrar; -import org.onap.cli.fw.schema.OnapCommandSchemaLoader; -import org.onap.cli.main.OnapCli; - -public class ValidateSchemaTest { - @Test - public void validateTest() throws OnapCommandException { - - OnapCommand cmd1 = new OnapCommand() { - @Override - protected void run() throws OnapCommandException {} - }; - List errorList1 = OnapCommandSchemaLoader.loadSchema(cmd1, "schema-validate-http.yaml", true, true); - assertTrue(errorList1.size() > 0); - } - - @Test - public void testVerify() throws OnapCommandException { - OnapCommandRegistrar.getRegistrar().setEnabledProductVersion("open-cli"); - OnapCli onapCli = new OnapCli(new String[]{"sample-test-verify", "--verify"}); - onapCli.handle(); - - //mrkanag though it pass, when ran alone, It fails during mvn test phase, check it - } -} diff --git a/profiles/http/src/test/resources/open-cli-schema/sample-multipart-schema-http.yaml b/profiles/http/src/test/resources/open-cli-schema/sample-multipart-schema-http.yaml new file mode 100644 index 00000000..baf49aea --- /dev/null +++ b/profiles/http/src/test/resources/open-cli-schema/sample-multipart-schema-http.yaml @@ -0,0 +1,68 @@ +# Copyright 2019 Huawei Technologies Co., Ltd. +# +# 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. + +open_cli_schema_version: 1.0 +name: sample-test-multipart +description: Multipart sample test command + +info: + product: open-cli + service: test + type: cmd + author: Kanagaraj Manickam kanagaraj.manickam@huawei.com + +parameters: + - name: file1 + type: binary + description: file1 + short_option: b + long_option: file1 + is_optional: false + - name: file2 + type: binary + description: file 2 + short_option: x + long_option: file2 + is_optional: false + - name: entity1 + type: string + description: entity1 + long_option: entity1 + short_option: c + is_optional: false + - name: entity2 + type: string + description: entity2 + long_option: entity2 + short_option: y + is_optional: false +http: + request: + uri: / + method: POST + body: + multipart: + - name: file + content: ${file1} + type: file + - name: file + content: ${file2} + type: file + - name: executions + content: '{"id":"${entity1}"}' + - name: entity2 + content: '{"id":"${entity2}"}' + success_codes: + - 201 + - 200 -- cgit 1.2.3-korg