From 776c60cca71b079af9da9eaf46baac9540ed91c4 Mon Sep 17 00:00:00 2001 From: kanagaraj Manickam k00365106 Date: Mon, 6 May 2019 14:25:19 +0530 Subject: Add VTP API def in swagger.json Issue-ID: VNFSDK-352 Change-Id: I57e7d647ba17e627db61854d469c7ceda84e6c45 Signed-off-by: kanagaraj Manickam k00365106 --- docs/swagger.yaml | 332 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 331 insertions(+), 1 deletion(-) (limited to 'docs/swagger.yaml') diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 79edd40..83780c1 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -16,6 +16,8 @@ tags: externalDocs: description: "Find out more" url: "http://wiki.onap.org" +- name: VTP Scenario +- name: VTP Execution schemes: - "http" paths: @@ -166,7 +168,242 @@ paths: description: "Invalid ID supplied" 404: description: "VNF not found" - + '/vtp/scenarios/{scenario}/testsuites': + get: + tags: + - VTP Scenario + summary: ' List available test suties in given scenario' + description: '' + operationId: listTestSuties + produces: + - application/json + parameters: + - name: scenario + in: path + description: Test scenario name + required: true + type: string + responses: + '200': + description: successful operation + schema: + type: array + items: + $ref: '#/definitions/VTPTestSuite' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + + '/vtp/scenarios/{scenario}/testcases': + get: + tags: + - VTP Scenario + summary: ' List available test cases' + description: '' + operationId: listTestcases + produces: + - application/json + parameters: + - name: scenario + in: path + description: Test scenario name + required: true + type: string + - name: testSuiteName + in: query + description: Test suite name + required: false + type: string + responses: + '200': + description: successful operation + schema: + type: array + items: + $ref: '#/definitions/VTPTestCase' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + '/vtp/scenarios/{scenario}/testsuites/{testSuiteName}/testcases/{testCaseName}': + get: + tags: + - VTP Scenario + summary: Retrieve test cases details like inputs outputs and test suite name + description: '' + operationId: getTestcase + produces: + - application/json + parameters: + - name: scenario + in: path + description: Test scenario name + required: true + type: string + - name: testSuiteName + in: path + description: Test case name + required: true + type: string + - name: testCaseName + in: path + description: Test case name + required: true + type: string + responses: + '200': + description: successful operation + schema: + $ref: '#/definitions/VTPTestCase' + '404': + description: Test case does not exist + schema: + $ref: '#/definitions/VTPError' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + '/vtp/executions/{executionId}': + get: + tags: + - VTP Execution + summary: ' Retrieve test execution complete details' + description: '' + operationId: getTestExecution + produces: + - application/json + parameters: + - name: executionId + in: path + description: Test execution Id + required: true + type: string + responses: + '200': + description: successful operation + schema: + $ref: '#/definitions/VTPTestExecution' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + /vtp/scenarios: + get: + tags: + - VTP Scenario + summary: ' List available test scenarios' + description: '' + operationId: listTestScenarios + produces: + - application/json + parameters: [] + responses: + '200': + description: successful operation + schema: + type: array + items: + $ref: '#/definitions/VTPTestScenario' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + /vtp/executions: + get: + tags: + - VTP Execution + summary: ' List test executions' + description: '' + operationId: listTestExecutions + produces: + - application/json + parameters: + - name: requestId + in: query + description: Test request Id + required: false + type: string + - name: scenario + in: query + description: Test scenario name + required: false + type: string + - name: testsuiteName + in: query + description: Test suite name + required: false + type: string + - name: testcaseName + in: query + description: Test case name + required: false + type: string + - name: profileName + in: query + description: Test profile name + required: false + type: string + - name: startTime + in: query + description: Test execution start time + required: false + type: string + - name: endTime + in: query + description: Test execution end time + required: false + type: string + responses: + '200': + description: successful operation + schema: + type: array + items: + $ref: '#/definitions/VTPTestExecution' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' + post: + tags: + - VTP Execution + summary: 'Execute the test case with given inputs in ''executions'' form-data as key-value pair of parameter''s name vs parameter''s value. If parameter is binary type thenmulti-part form-data ''file'' should be used to feed the binary file content and it can be more than once. To use the given file as input parameter, prefix the value with file://.' + description: '' + operationId: executeTestcases1 + consumes: + - multipart/form-data + produces: + - application/json + parameters: + - name: requestId + in: query + description: Request Id + required: false + type: string + - name: file + in: formData + description: Testcase File arguments + required: false + type: array + items: + $ref: '#/definitions/FormDataBodyPart' + collectionFormat: multi + - name: executions + in: formData + required: false + type: string + responses: + '200': + description: successful operation + schema: + type: array + items: + $ref: '#/definitions/VTPTestExecution' + '500': + description: Failed to perform the operation + schema: + $ref: '#/definitions/VTPError' definitions: Csars: type: "object" @@ -230,6 +467,99 @@ definitions: type: "string" message: type: "string" + VTPTestSuite: + type: object + properties: + name: + type: string + VTPError: + type: object + properties: + code: + type: string + message: + type: string + httpStatus: + type: integer + format: int32 + VTPTestCase: + type: object + properties: + scenario: + type: string + testCaseName: + type: string + testSuiteName: + type: string + descripton: + type: string + author: + type: string + inputs: + type: array + items: + $ref: '#/definitions/VTPTestCaseInput' + outputs: + type: array + items: + $ref: '#/definitions/VTPTestCaseOutput' + VTPTestCaseInput: + type: object + properties: + name: + type: string + description: + type: string + type: + type: string + defaultValue: + type: string + isOptional: + type: boolean + metadata: + type:object + VTPTestCaseOutput: + type: object + properties: + name: + type: string + description: + type: string + type: + type: string + + VTPTestExecution: + type: object + properties: + scenario: + type: string + testCaseName: + type: string + testSuiteName: + type: string + executionId: + type: string + requestId: + type: string + profile: + type: string + parameters: + $ref: '#/definitions/JsonNode' + results: + $ref: '#/definitions/JsonNode' + status: + type: string + startTime: + type: string + endTime: + type: string + VTPTestScenario: + type: object + properties: + name: + type: string + + externalDocs: description: "Find out more about VNFSDK" url: "https://onap.readthedocs.io/en/latest/submodules/vnfsdk/model.git/docs/index.html" \ No newline at end of file -- cgit 1.2.3-korg