diff options
-rw-r--r-- | csit/data/bookstoreAddEntry.json | 19 | ||||
-rw-r--r-- | csit/data/bookstoreCreateExample.json | 34 | ||||
-rw-r--r-- | csit/data/bookstoreUpdateExample.json | 8 | ||||
-rw-r--r-- | csit/tests/ncmp-passthrough/ncmp-passthrough.robot | 43 |
4 files changed, 80 insertions, 24 deletions
diff --git a/csit/data/bookstoreAddEntry.json b/csit/data/bookstoreAddEntry.json deleted file mode 100644 index 86e9a5b3d6..0000000000 --- a/csit/data/bookstoreAddEntry.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "stores:categories": [ - { - "stores:code": "ISBN200123", - "stores:name": "library", - "stores:books": [ - { - "stores:title": "A good book", - "stores:lang": "English", - "stores:authors": [ - "Joe & Rahul" - ], - "stores:pub_year": "2001", - "stores:price": "1000" - } - ] - } - ] -}
\ No newline at end of file diff --git a/csit/data/bookstoreCreateExample.json b/csit/data/bookstoreCreateExample.json new file mode 100644 index 0000000000..ff8e202e30 --- /dev/null +++ b/csit/data/bookstoreCreateExample.json @@ -0,0 +1,34 @@ +{ + "categories": [ + { + "code": "01", + "name": "Sci-Fi", + "books": [ + { + "title": "A Sci-Fi book", + "lang": "English", + "authors": [ + "Joe & Rahul" + ], + "pub_year": "2001", + "price": "1000" + } + ] + }, + { + "code": "02", + "name": "Horror", + "books": [ + { + "title": "A Horror book", + "lang": "English", + "authors": [ + "Joe & Rahul" + ], + "pub_year": "2003", + "price": "2000" + } + ] + } + ] +}
\ No newline at end of file diff --git a/csit/data/bookstoreUpdateExample.json b/csit/data/bookstoreUpdateExample.json new file mode 100644 index 0000000000..2614b59222 --- /dev/null +++ b/csit/data/bookstoreUpdateExample.json @@ -0,0 +1,8 @@ +{ + "categories": [ + { + "code": "01", + "name": "Updated Sci-Fi Category Name" + } + ] +}
\ No newline at end of file diff --git a/csit/tests/ncmp-passthrough/ncmp-passthrough.robot b/csit/tests/ncmp-passthrough/ncmp-passthrough.robot index c23fa085b8..77d7f41037 100644 --- a/csit/tests/ncmp-passthrough/ncmp-passthrough.robot +++ b/csit/tests/ncmp-passthrough/ncmp-passthrough.robot @@ -45,21 +45,54 @@ Get for Passthough Operational (CF, RO) with fields Should Be True ${schemaCount} >0 Should Contain ${responseJson['ietf-netconf-monitoring:netconf-state']['schemas']['schema'][0]['location']} ${netconf} -Write to bookstore using passthrough-running +Create to bookstore using passthrough-running ${uri}= Set Variable ${ncmpBasePath}/v1/ch/PNFDemo/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore ${headers}= Create Dictionary Content-Type=application/json Authorization=${auth} - ${jsonData}= Get Binary File ${DATADIR}${/}bookstoreAddEntry.json + ${jsonData}= Get Binary File ${DATADIR}${/}bookstoreCreateExample.json ${response}= POST On Session CPS_URL ${uri} headers=${headers} data=${jsonData} Should Be Equal As Strings ${response.status_code} 201 -Verify write to bookstore using passthrough-running +Verify create to bookstore using passthrough-running ${uri}= Set Variable ${ncmpBasePath}/v1/ch/PNFDemo/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore ${headers}= Create Dictionary Authorization=${auth} ${response}= Get On Session CPS_URL ${uri} headers=${headers} ${responseJson}= Set Variable ${response.json()} Should Be Equal As Strings ${response.status_code} 200 FOR ${item} IN @{responseJson['stores:bookstore']['categories']} - IF "${item['code']}" == "ISBN200123" - Should Be Equal As Strings "${item['books']}[0][title]" "A good book" + IF "${item['code']}" == "01" + Should Be Equal As Strings "${item['name']}" "Sci-Fi" + Should Be Equal As Strings "${item['books']}[0][title]" "A Sci-Fi book" + END + IF "${item['code']}" == "02" + Should Be Equal As Strings "${item['name']}" "Horror" + Should Be Equal As Strings "${item['books']}[0][title]" "A Horror book" END END + +Update Bookstore using passthrough-running for Category 01 + ${uri}= Set Variable ${ncmpBasePath}/v1/ch/PNFDemo/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore/categories=01 + ${headers}= Create Dictionary Content-Type=application/json Authorization=${auth} + ${jsonData}= Get Binary File ${DATADIR}${/}bookstoreUpdateExample.json + ${response}= PUT On Session CPS_URL ${uri} headers=${headers} data=${jsonData} + Should Be Equal As Strings ${response.status_code} 200 + +Verify update to bookstore using passthrough-running updated category 01 + ${uri}= Set Variable ${ncmpBasePath}/v1/ch/PNFDemo/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore/categories=01 + ${headers}= Create Dictionary Authorization=${auth} + ${response}= Get On Session CPS_URL ${uri} headers=${headers} + ${responseJson}= Set Variable ${response.json()} + Should Be Equal As Strings ${response.status_code} 200 + FOR ${item} IN @{responseJson['stores:categories']} + IF "${item['code']}" == "01" + Should Be Equal As Strings "${item['name']}" "Updated Sci-Fi Category Name" + END + END + +Verify update to bookstore using passthrough-running did not remove category 02 + ${uri}= Set Variable ${ncmpBasePath}/v1/ch/PNFDemo/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=stores:bookstore + ${headers}= Create Dictionary Authorization=${auth} + ${response}= Get On Session CPS_URL ${uri} headers=${headers} + ${responseJson}= Set Variable ${response.json()} + Should Be Equal As Strings ${response.status_code} 200 + ${schemaCount}= Get length ${responseJson['stores:bookstore']['categories']} + Should Be Equal As Numbers ${schemaCount} 2
\ No newline at end of file |