aboutsummaryrefslogtreecommitdiffstats
path: root/test/csit/tests/vfc/nfvo-wfengine/workflow.robot
blob: 71197304bc2e6f1a2a6bcf1b172aecf51fa1ea0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
*** Settings ***
Resource          ../../common.robot
Library           Collections
Library           json
Library           OperatingSystem
Library           RequestsLibrary
Library           HttpLibrary.HTTP

*** Variables ***
${MSB_IP}         127.0.0.1
${MSB_PORT}       10550
${ACTIVITI_IP}    127.0.0.1
${ACTIVITI_PORT}    8804
${MGRSERVICE_IP}    127.0.0.1
${MGRSERVICE_PORT}    8805
${processId}      demo
${deployid}       0
${bmpfilepath}    ${SCRIPTS}/nfvo-wfengine/demo.bpmn20.xml

*** Test Cases ***
Deploy BPMN File Test On Activiti
    [Documentation]    Check if the test bpmn file can be deployed in activiti engine
    ${auth}=    Create List    kermit    kermit
    ${headers}=    Create Dictionary    Accept=application/json
    Create Session    web_session    http://${ACTIVITI_IP}:${ACTIVITI_PORT}    headers=${headers}    auth=${auth}
    ${files}=    evaluate    {"file":open('${bmpfilepath}','rb')}
    ${resp}=    Post Request    web_session    /activiti-rest/service/repository/deployments    files=${files}
    Should Be Equal    ${resp.status_code}    ${201}
    Log    ${resp.json()}
    ${deployedId}=    Set Variable    ${resp.json()["id"]}
    Set Global Variable    ${deployedId}

Exectue BPMN File Testt On Activiti
    [Documentation]    Check if the test bpmn file can be exectued in activiti engine
    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json    Authorization=Basic a2VybWl0Omtlcm1pdA==
    Create Session    web_session    http://${ACTIVITI_IP}:${ACTIVITI_PORT}    headers=${headers}
    ${body}    Create Dictionary    processDefinitionKey=${processId}
    ${body}    dumps    ${body}
    ${resp}=    Post Request    web_session    /activiti-rest/service/runtime/process-instances    ${body}
    Should Be Equal    ${resp.status_code}    ${201}

UnDeploy BPMN File Testt On Activiti
    [Documentation]    Check if the test bpmn file can be undeployed in activiti engine
    log    ${deployedId}
    ${auth}=    Create List    kermit    kermit
    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
    Create Session    web_session    http://${ACTIVITI_IP}:${ACTIVITI_PORT}    headers=${headers}    auth=${auth}
    ${resp}=    Delete Request    web_session    /activiti-rest/service/repository/deployments/${deployedId}?cascade=true
    Should Be Equal    ${resp.status_code}    ${204}

Deploy BPMN File Test On MgrService
    [Documentation]    Check if the test bpmn file can be deployed in Management Service
    ${auth}=    Create List    kermit    kermit
    ${headers}=    Create Dictionary    Accept=application/json
    Create Session    web_session    http://${MGRSERVICE_IP}:${MGRSERVICE_PORT}    headers=${headers}    auth=${auth}
    ${files}=    evaluate    {"file":open('${bmpfilepath}','rb')}
    ${resp}=    Post Request    web_session    api/workflow/v1/package    files=${files}
    Should Be Equal    ${resp.status_code}    ${200}
    Log    ${resp.json()}
    ${deployedId}=    Set Variable    ${resp.json()["deployedId"]}
    Set Global Variable    ${deployedId}

Exectue BPMN File Testt On MgrService
    [Documentation]    Check if the test bpmn file can be exectued in Management Service
    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json    Authorization=Basic a2VybWl0Omtlcm1pdA==
    Create Session    web_session    http://${MGRSERVICE_IP}:${MGRSERVICE_PORT}    headers=${headers}
    ${body}    Create Dictionary    processDefinitionKey=${processId}
    ${body}    dumps    ${body}
    ${resp}=    Post Request    web_session    api/workflow/v1/process/instance    ${body}
    Should Be Equal    ${resp.status_code}    ${200}
    Log    ${resp.json()}
    Should Be Equal    ${resp.json()["processDefinitionKey"]}    ${processId}

UnDeploy BPMN File Testt On MgrService
    [Documentation]    Check if the test bpmn file can be undeployed in Management Service
    log    ${deployedId}
    ${auth}=    Create List    kermit    kermit
    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
    Create Session    web_session    http://${MGRSERVICE_IP}:${MGRSERVICE_PORT}    headers=${headers}    auth=${auth}
    ${resp}=    Delete Request    web_session    /api/workflow/v1/package/${deployedId}
    Should Be Equal    ${resp.status_code}    ${200}

Deploy BPMN File Test On MSB
    [Documentation]    Check if the test bpmn file can be deployed in activiti engine
    ${auth}=    Create List    kermit    kermit
    ${headers}=    Create Dictionary    Accept=application/json
    Create Session    web_session    http://${MSB_IP}:${MSB_PORT}    headers=${headers}    auth=${auth}
    ${files}=    evaluate    {"file":open('${bmpfilepath}','rb')}
    ${resp}=    Post Request    web_session    api/workflow/v1/package    files=${files}
    Should Be Equal    ${resp.status_code}    ${200}
    Log    ${resp.json()}
    ${deployedId}=    Set Variable    ${resp.json()["deployedId"]}
    Set Global Variable    ${deployedId}

# Exectue BPMN File Testt On MSB
#     [Documentation]    Check if the test bpmn file can be exectued in MSB
#     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json    Authorization=Basic a2VybWl0Omtlcm1pdA==
#     Create Session    web_session    http://${MSB_IP}:${MSB_PORT}    headers=${headers}
#     ${body}    Create Dictionary    processDefinitionKey=${processId}
#     ${body}    dumps    ${body}
#     ${resp}=    Post Request    web_session    api/workflow/v1/process/instance    ${body}
#     Should Be Equal    ${resp.status_code}    ${200}
#     Log    ${resp.json()}
#     Should Be Equal    ${resp.json()["processDefinitionKey"]}    ${processId}

# UnDeploy BPMN File Testt On MSB
#     [Documentation]    Check if the test bpmn file can be undeployed in MSB
#     log    ${deployedId}
#     ${auth}=    Create List    kermit    kermit
#     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
#     Create Session    web_session    http://${MSB_IP}:${MSB_PORT}    headers=${headers}    auth=${auth}
#     ${resp}=    Delete Request    web_session    /api/workflow/v1/package/${deployedId}
#     Should Be Equal    ${resp.status_code}    ${200}