X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=integration_tests%2Ftest_a1.tavern.yaml;h=b4ccd6287d61b89f80d2e5fd7c0bbcb2e5a0f741;hb=8bcc51a6d44d40a1a338fb6a721b5ee8f992f323;hp=f2a454c76821ab325ffb2da9ffd0566703c401c4;hpb=148e2699cf55e5619d181c2e46e1f672456a4422;p=ric-plt%2Fa1.git diff --git a/integration_tests/test_a1.tavern.yaml b/integration_tests/test_a1.tavern.yaml index f2a454c..b4ccd62 100644 --- a/integration_tests/test_a1.tavern.yaml +++ b/integration_tests/test_a1.tavern.yaml @@ -22,6 +22,21 @@ stages: response: status_code: 404 + - name: type list empty + request: + url: http://localhost:10000/a1-p/policytypes + method: GET + response: + status_code: 200 + body: [] + + - name: instance list 404 + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies + method: GET + response: + status_code: 404 + - name: put the type request: url: http://localhost:10000/a1-p/policytypes/20000 @@ -60,6 +75,8 @@ stages: - trigger_threshold - window_length additionalProperties: false + response: + status_code: 201 - name: type there now request: @@ -68,6 +85,22 @@ stages: response: status_code: 200 + - name: now in type list + request: + url: http://localhost:10000/a1-p/policytypes + method: GET + response: + status_code: 200 + body: [20000] + + - name: instance list 200 but empty + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies + method: GET + response: + status_code: 200 + body: [] + - name: test the admission control policy get not there yet request: url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy @@ -82,7 +115,27 @@ stages: response: status_code: 404 - - name: put the admission control policy + - name: bad body for admission control policy + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy + method: PUT + json: + not: "expected" + headers: + content-type: application/json + response: + status_code: 400 + + - name: not a json + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy + method: PUT + data: "asdf" + response: + status_code: 415 + + # put it properly + - name: put the admission control policy instance request: url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy method: PUT @@ -94,7 +147,15 @@ stages: headers: content-type: application/json response: - status_code: 201 + status_code: 202 + + - name: cant delete type with instances + delay_before: 3 # wait for the type acks to come back first + request: + url: http://localhost:10000/a1-p/policytypes/20000 + method: DELETE + response: + status_code: 400 - name: test the admission control policy get request: @@ -113,11 +174,79 @@ stages: request: url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy/status method: GET + response: + status_code: 200 + # tavern doesn't yet let you check string statuses!!! + + - name: instance list 200 and contains the instance + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies + method: GET response: status_code: 200 body: - - handler_id: test_receiver - status: OK + - admission_control_policy + + # DELETE the instance and make sure subsequent GETs return properly + - name: delete the instance + delay_after: 3 # give it a few seconds for rmr + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy + method: DELETE + response: + status_code: 202 + + - name: instance list 200 but no instance + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies + method: GET + response: + status_code: 200 + body: [] + + - name: cant get instance status + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy/status + method: GET + response: + status_code: 404 + + - name: cant get instance + request: + url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy + method: GET + response: + status_code: 404 + + - name: delete ac type + request: + url: http://localhost:10000/a1-p/policytypes/20000 + method: DELETE + response: + status_code: 204 + + - name: cant delete again + request: + url: http://localhost:10000/a1-p/policytypes/20000 + method: DELETE + response: + status_code: 404 + + - name: cant get + request: + url: http://localhost:10000/a1-p/policytypes/20000 + method: DELETE + response: + status_code: 404 + + - name: empty type list + request: + url: http://localhost:10000/a1-p/policytypes + method: GET + response: + status_code: 200 + body: [] + --- @@ -132,6 +261,21 @@ stages: response: status_code: 404 + - name: not yet in type list + request: + url: http://localhost:10000/a1-p/policytypes + method: GET + response: + status_code: 200 + body: [] + + - name: instance list 404 + request: + url: http://localhost:10000/a1-p/policytypes/20001/policies + method: GET + response: + status_code: 404 + - name: put the type request: url: http://localhost:10000/a1-p/policytypes/20001 @@ -149,6 +293,8 @@ stages: required: - test additionalProperties: false + response: + status_code: 201 - name: type there now request: @@ -170,6 +316,23 @@ stages: - test additionalProperties: false + - name: now in type list + request: + url: http://localhost:10000/a1-p/policytypes + method: GET + response: + status_code: 200 + body: + - 20001 + + - name: instance list 200 but empty + request: + url: http://localhost:10000/a1-p/policytypes/20001/policies + method: GET + response: + status_code: 200 + body: [] + - name: test the delay policy instance get not there yet request: url: http://localhost:10000/a1-p/policytypes/20001/policies/delaytest @@ -184,6 +347,15 @@ stages: response: status_code: 404 + - name: bad body for delaytest + request: + url: http://localhost:10000/a1-p/policytypes/20001/policies/delaytest + method: PUT + json: + not: "welcome" + response: + status_code: 400 + - name: create delay policy instance request: url: http://localhost:10000/a1-p/policytypes/20001/policies/delaytest @@ -193,7 +365,7 @@ stages: headers: content-type: application/json response: - status_code: 201 + status_code: 202 - name: test the delay policy get request: @@ -204,17 +376,24 @@ stages: body: test: foo - - name: test the admission control policy status get + - name: test the delay status get max_retries: 3 - delay_before: 5 # give it a few seconds for rmr ; delay reciever sleeps for 5 seconds by default + delay_before: 6 # give it a few seconds for rmr ; delay reciever sleeps for 5 seconds by default request: url: http://localhost:10000/a1-p/policytypes/20001/policies/delaytest/status method: GET + response: + status_code: 200 + # tavern doesn't let you check non json yet! + + - name: instance list 200 and there + request: + url: http://localhost:10000/a1-p/policytypes/20001/policies + method: GET response: status_code: 200 body: - - handler_id: delay_receiver - status: OK + - delaytest --- @@ -249,10 +428,9 @@ stages: headers: content-type: application/json response: - status_code: 201 + status_code: 202 - name: should be no status - delay_before: 5 # give it a few seconds for rmr ; delay reciever sleeps for 5 seconds by default request: url: http://localhost:10000/a1-p/policytypes/20002/policies/brokentest/status method: GET @@ -260,6 +438,7 @@ stages: status_code: 200 body: [] + # this one cant currently be deleted, see the comment in a1/data.py --- @@ -274,10 +453,9 @@ stages: response: status_code: 404 - - - name: bad instance get + - name: bad instance get bad type request: - url: http://localhost:10000/a1-p/policytypes/20000/policies/darkness + url: http://localhost:10000/a1-p/policytypes/20666/policies/nonono method: GET response: status_code: 404 @@ -311,32 +489,3 @@ stages: status_code: 400 - - - - name: bad body for admission control policy - request: - url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy - method: PUT - json: - not: "expected" - headers: - content-type: application/json - response: - status_code: 400 - - - name: not a json - request: - url: http://localhost:10000/a1-p/policytypes/20000/policies/admission_control_policy - method: PUT - data: "asdf" - response: - status_code: 415 - - - name: bad body for delaytest - request: - url: http://localhost:10000/a1-p/policytypes/20001/policies/delaytest - method: PUT - json: - not: "welcome" - response: - status_code: 400