diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/swagger.json | 488 | ||||
-rw-r--r-- | docs/swagger.yaml | 332 |
2 files changed, 819 insertions, 1 deletions
diff --git a/docs/swagger.json b/docs/swagger.json index 04a227b..e91b326 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -22,6 +22,12 @@ "description": "Find out more", "url": "http://wiki.onap.org" } + }, + { + "name": "VTP Scenario" + }, + { + "name": "VTP Execution" } ], "schemes": [ @@ -243,6 +249,352 @@ } } } + }, + "/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://<filename>.", + "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": { @@ -334,6 +686,142 @@ "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": { 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://<filename>.' + 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 |