Added JSON modification request to CRUD suite
[integration/test.git] / csit / suites / netconf / CRUD / CRUD.robot
index ed14c3a6bc5b31d97bd765d0cd58acc977ebba97..1579bc62a2101fc4f4918d1768075c105069a68f 100644 (file)
@@ -32,6 +32,10 @@ ${DIRECTORY_WITH_TEMPLATE_FOLDERS}    ${CURDIR}/../../../variables/netconf/CRUD
 ${device_name}    netconf-test-device
 
 *** Test Cases ***
+Start_Testtool
+    [Documentation]    Deploy and start test tool, then wait for all its devices to become online.
+    NetconfKeywords.Install_And_Start_Testtool    device-count=1    schemas=${CURDIR}/../../../variables/netconf/CRUD/schemas
+
 Check_Device_Is_Not_Configured_At_Beginning
     [Documentation]    Sanity check making sure our device is not there. Fail if found.
     [Tags]    critical
@@ -63,7 +67,7 @@ Create_Device_Data
 
 Check_Device_Data_Is_Created
     [Documentation]    Get the device data and make sure it contains the created content.
-    Check_Config_Data    <data xmlns="${ODL_NETCONF_NAMESPACE}"><cont xmlns="urn:opendaylight:test:netconf:crud" xmlns:a="${ODL_NETCONF_NAMESPACE}" a:operation="replace"><l>Content</l></cont></data>
+    Check_Config_Data    <data xmlns="${ODL_NETCONF_NAMESPACE}"><cont xmlns="urn:opendaylight:test:netconf:crud"><l>Content</l></cont></data>
 
 Modify_Device_Data
     [Documentation]    Send a request to change the sample test data and check that the request went OK.
@@ -72,7 +76,16 @@ Modify_Device_Data
 
 Check_Device_Data_Is_Modified
     [Documentation]    Get the device data and make sure it contains the created content.
-    Check_Config_Data    <data xmlns="${ODL_NETCONF_NAMESPACE}"><cont xmlns="urn:opendaylight:test:netconf:crud" xmlns:a="${ODL_NETCONF_NAMESPACE}" a:operation="replace"><l>Modified Content</l></cont></data>
+    Check_Config_Data    <data xmlns="${ODL_NETCONF_NAMESPACE}"><cont xmlns="urn:opendaylight:test:netconf:crud"><l>Modified Content</l></cont></data>
+
+Modify_Device_Data_Via_JSON
+    [Documentation]    Send a JSON request to change the sample test data and check that the request went OK.
+    ${template_as_string}=    BuiltIn.Set_Variable    {'DEVICE_NAME': '${device_name}'}
+    NetconfViaRestconf.Put_Json_Template_Folder_Via_Restconf    ${DIRECTORY_WITH_TEMPLATE_FOLDERS}${/}datamodjson    ${template_as_string}
+
+Check_Device_Data_Is_Modified_Via_JSON
+    [Documentation]    Get the device data as XML and make sure it matches the content posted as JSON in the previous case.
+    Check_Config_Data    <data xmlns="${ODL_NETCONF_NAMESPACE}"><cont xmlns="urn:opendaylight:test:netconf:crud"><l>Content Modified via JSON</l></cont></data>
 
 Delete_Device_Data
     [Documentation]    Send a request to delete the sample test data on the device and check that the request went OK.
@@ -111,7 +124,6 @@ Setup_Everything
     # Connect to the Mininet machine
     SSHLibrary.Open_Connection    ${TOOLS_SYSTEM_IP}    prompt=${TOOLS_SYSTEM_PROMPT}
     Utils.Flexible_Mininet_Login
-    NetconfKeywords.Install_And_Start_Testtool    device-count=10    schemas=${CURDIR}/../../../variables/netconf/CRUD/schemas
 
 Teardown_Everything
     [Documentation]    Teardown the test infrastructure, perform cleanup and release all resources.