Fix bgpcep-1node-throughpcep
[integration/test.git] / csit / libraries / IoTDM / IoTDMResources.robot
1 *** Settings ***
2 Documentation     Keywords for sanity test suites testing basic functionality
3 ...               using multiple communication protocols
4 Library           Collections
5 Resource          ../../variables/Variables.robot
6 Resource          IoTDMKeywords.robot
7 Library           iotdm_comm.py
8 Library           OperatingSystem
9 Variables         client_libs/onem2m_primitive.py
10
11 *** Variables ***
12 ${defCseBaseName}    InCSE1
13 ${defAeId}        robotTestAe
14 # when AeId and resourceName of the AE are equal
15 ${defAeUri}       ${defCseBaseName}/${defAeId}
16 ${defTestApp}     testApp
17 ${defSubscriptionName}    TestSubscription
18
19 *** Keywords ***
20 Log Primitive
21     [Arguments]    ${primitive}
22     [Documentation]    Logs primitive parameters, content and protocol specific parameters
23     ${primitive_params} =    Get Primitive Parameters    ${primitive}
24     ${content} =    Get Primitive Content    ${primitive}
25     ${proto_specific_params} =    Get Primitive Protocol Specific Parameters    ${primitive}
26     ${debug} =    Catenate    Parameters:    ${primitive_params}    Content:    ${content}    ProtocolParams: ${proto_specific_params}
27     Log    ${debug}
28
29 Create Resource
30     [Arguments]    ${resourceContent}    ${parentResourceUri}    ${resourceType}
31     [Documentation]    Create resource, verify response and return the response
32     ${primitive} =    New Create Request Primitive    ${parentResourceUri}    ${resourceContent}    ${resourceType}
33     Log Primitive    ${primitive}
34     ${rsp_primitive} =    Send Primitive    ${primitive}
35     Log Primitive    ${rsp_primitive}
36     Verify Exchange    ${primitive}    ${rsp_primitive}
37     [Return]    ${rsp_primitive}
38
39 Update Resource
40     [Arguments]    ${update_content}    ${resourceUri}
41     [Documentation]    Update resource, verify response and return the response
42     ${primitive} =    New Update Request Primitive    ${resourceUri}    ${update_content}
43     Log Primitive    ${primitive}
44     ${rsp_primitive} =    Send Primitive    ${primitive}
45     Log Primitive    ${rsp_primitive}
46     Verify Exchange    ${primitive}    ${rsp_primitive}
47     [Return]    ${rsp_primitive}
48
49 Retrieve Resource
50     [Arguments]    ${resourceUri}
51     [Documentation]    Retrieve resource, verify response and return the response
52     ${primitive} =    New Retrieve Request Primitive    ${resourceUri}
53     Log Primitive    ${primitive}
54     ${rsp_primitive} =    Send Primitive    ${primitive}
55     Log Primitive    ${rsp_primitive}
56     Verify Exchange    ${primitive}    ${rsp_primitive}
57     [Return]    ${rsp_primitive}
58
59 Delete Resource
60     [Arguments]    ${resourceUri}
61     [Documentation]    Delete resource, verify response and return the response
62     ${primitive} =    New Delete Request Primitive    ${resourceUri}
63     Log Primitive    ${primitive}
64     ${rsp_primitive} =    Send Primitive    ${primitive}
65     Log Primitive    ${rsp_primitive}
66     Verify Exchange    ${primitive}    ${rsp_primitive}
67     [Return]    ${rsp_primitive}
68
69 Create Resource AE
70     [Arguments]    ${cseBaseName}=${defCseBaseName}    ${aeId}=${defAeId}    ${appId}=${defTestApp}
71     [Documentation]    Create AE resource and verify response
72     ${attr} =    Set Variable    {"m2m:ae": {"api":"${appId}", "rr":true, "rn":"${aeId}"}}
73     Run Keyword And Return    Create Resource    resourceContent=${attr}    parentResourceUri=${cseBaseName}    resourceType=${OneM2M.resource_type_application_entity}
74
75 Create Resource Container
76     [Arguments]    ${parentResourceUri}    ${resourceName}
77     [Documentation]    Create Container resource and verify response
78     ${content}    Set Variable    {"m2m:cnt": {"rn": "${resourceName}"}}
79     Run Keyword And Return    Create Resource    resourceContent=${content}    parentResourceUri=${parentResourceUri}    resourceType=${OneM2M.resource_type_container}
80
81 Create Resource ContentInstance
82     [Arguments]    ${parentResourceUri}    ${contentValue}    ${resourceName}=${EMPTY}
83     [Documentation]    Create ContentInstance resource and verify response
84     ${resourceName} =    Set Variable If    """${resourceName}""" != """${EMPTY}"""    """, "rn":"${resourceName}"""    ${EMPTY}
85     ${content}    Set Variable    {"m2m:cin":{"con":"${contentValue}"${resourceName}}}
86     Run Keyword And Return    Create Resource    resourceContent=${content}    parentResourceUri=${parentResourceUri}    resourceType=${OneM2M.resource_type_content_instance}
87
88 Create Resource Subscription
89     [Arguments]    ${parentResourceUri}    ${notificationUri}    ${resourceName}=${defSubscriptionName}    ${notifEventType}=${OneM2M.net_update_of_resource}    ${notifContentType}=${OneM2M.nct_all_attributes}
90     [Documentation]    Create Suscription resource and verify response
91     ${attr}    Set Variable    {"m2m:sub":{"nu":["${notificationUri}"],"nct": ${notifContentType},"rn":"${resourceName}", "enc":{"net":[${notifEventType}]}}}
92     Create Resource    ${attr}    ${parentResourceUri}    ${OneM2M.resource_type_subscription}