Pruebas Automaticas para Output document, input document, triggers, assignee, assignee adhoc y process supervisor

This commit is contained in:
Wendy Nestor
2014-01-21 01:10:33 -04:00
parent c295187c3a
commit 4b6f3f554a
18 changed files with 860 additions and 722 deletions

View File

@@ -1,214 +0,0 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Input Documents Resources
Background:
Given that I have a valid access_token
#GET /api/1.0/{workspace}/project/{prj_uid}/input-documents
# Get a List Input Documents of a Project
Scenario: Get a List Input Documents of a Project
And I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 0 records
#POST /api/1.0/{workspace}/project/{prj_uid}/input-document
#Create a new Input Document for a Project
Scenario Outline: Create a new Inputs Documents for a Project
Given POST this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And I request "project/<project>/input-document"
Then the response status code should be 201
And the content type is "application/json"
And the response charset is "UTF-8"
And the type is "object"
And store "inp_doc_uid" in session array as variable "inp_doc_uid_<inp_doc_number>"
Examples:
| project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags |
| 14414793652a5d718b65590036026581 | 1 | My InputDocument1 | My InputDocument1 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 2 | My InputDocument2 | My InputDocument2 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 3 | My InputDocument3 | My InputDocument3 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 4 | My InputDocument4 | My InputDocument4 DESCRIPTION | VREAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 5 | My InputDocument5 | My InputDocument5 DESCRIPTION | VIRTUAL | COPY | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 6 | My InputDocument6 | My InputDocument6 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 0 | | INPUT |
| 14414793652a5d718b65590036026581 | 7 | My InputDocument7 | My InputDocument7 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | /my/path | INPUT |
| 14414793652a5d718b65590036026581 | 8 | My InputDocument8 | My InputDocument8 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 9 | My InputDocument9 | My InputDocument9 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 10 | My InputDocument10 !@#$%^&*€¤½¼‘¾¡²¤³ | My InputDocument10 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 11 | My InputDocument11 | My InputDocument11 !@#$%^&*€¤½¼‘¾¡²¤³| REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 12 | My InputDocument12 | My InputDocument12 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | /my#@$#%/path324@$@@ | INPUT |
| 14414793652a5d718b65590036026581 | 13 | My InputDocument13 | My InputDocument13 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 1 | | INPU455 @##$$³¤¤ |
#GET /api/1.0/{workspace}/project/{prj_uid}/input-documents
# Get a List Input Documents of a Project
Scenario: Get a List Input Documents of a Project
And I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 13 records
#PUT /api/1.0/{workspace}/project/{prj_uid}/input-document/{inp_doc_uid}
# Update an Input Document for a Project
Scenario Outline: Update an Input Document for a Project
Given PUT this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And that I want to update a resource with the key "inp_doc_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags |
| 14414793652a5d718b65590036026581 | 1 | My InputDocument1 'UPDATE' | My InputDocument1 DESCRIPTION-update| VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 2 | My InputDocument2 'UPDATE' | My InputDocument2 DESCRIPTION-update| VREAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | 3 | My InputDocument3 'UPDATE' | My InputDocument3 DESCRIPTION-update| REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
Scenario Outline: Get a input Document
Given that I want to get a resource with the key "inp_doc_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
And that "inp_doc_title" is set to "<inp_doc_title>"
And that "inp_doc_description" is set to "<inp_doc_description>"
And that "inp_doc_form_needed" is set to "<inp_doc_form_needed>"
Examples:
| project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed |
| 14414793652a5d718b65590036026581 | 1 | My InputDocument1 'UPDATE' | My InputDocument1 DESCRIPTION-update| VIRTUAL |
| 14414793652a5d718b65590036026581 | 2 | My InputDocument2 'UPDATE' | My InputDocument2 DESCRIPTION-update| VREAL |
| 14414793652a5d718b65590036026581 | 3 | My InputDocument3 'UPDATE' | My InputDocument3 DESCRIPTION-update| REAL |
#GET /api/1.0/{workspace}/project/{prj_uid}/input-document/{inp_doc_uid}
# Get a single Input Document of a Project
Scenario: Get a single Input Document of a Project
Given that I want to get a resource with the key "inp_doc_uid_1" stored in session array
And I request "project/14414793652a5d718b65590036026581/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
And that "inp_doc_title" is set to "My InputDocument1 Modified"
And that "inp_doc_description" is set to "My InputDocument1 DESCRIPTION Modified"
#DELETE /api/1.0/{workspace}/project/{prj_uid}/input-document/{inp_doc_uid}
# Delete an Input Document of a Project
Scenario Outline: Delete a previously created Input Document
Given that I want to delete a resource with the key "inp_out_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | inp_doc_number |
| 14414793652a5d718b65590036026581 | 1 |
| 14414793652a5d718b65590036026581 | 2 |
| 14414793652a5d718b65590036026581 | 3 |
| 14414793652a5d718b65590036026581 | 4 |
| 14414793652a5d718b65590036026581 | 5 |
| 14414793652a5d718b65590036026581 | 6 |
| 14414793652a5d718b65590036026581 | 7 |
| 14414793652a5d718b65590036026581 | 8 |
| 14414793652a5d718b65590036026581 | 9 |
| 14414793652a5d718b65590036026581 | 10 |
| 14414793652a5d718b65590036026581 | 11 |
| 14414793652a5d718b65590036026581 | 12 |
| 14414793652a5d718b65590036026581 | 13 |
#GET /api/1.0/{workspace}/project/{prj_uid}/input-documents
# Get a List Input Documents of a Project
Scenario: Get a List Input Documents of a Project
And I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 0 records
#POST /api/1.0/{workspace}/project/{prj_uid}/input-document
#Create a new Input Document for a Project
Scenario Outline: Create a new Inputs Documents for a Project
Given POST this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And I request "project/<project>/input-document"
Then the response status code should be 400
Examples:
| project | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags |
| 14414793652a5d718b65590036 | My InputDocument1 | My InputDocument1 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument4 | My InputDocument4 DESCRIPTION | VRESAMPLE12334$%#@ | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument5 | My InputDocument5 DESCRIPTION | VIRTUAL | COORIGI 123@#$%$% | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument6 | My InputDocument6 DESCRIPTION | VIRTUAL | ORIGINAL | PRIV123234@##$$%% | 0 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument7 | My InputDocument7 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 87 | | INPUT |
| | My InputDocument10 | My InputDocument10 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument11 | My InputDocument11 DESCRIPTION | | ORIGINAL | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument12 | My InputDocument12 DESCRIPTION | REAL | | PRIVATE | 1 | | INPUT |
| 14414793652a5d718b65590036026581 | My InputDocument13 | My InputDocument13 DESCRIPTION | VREAL | ORIGINAL | | 1 | | INPUT |

View File

@@ -0,0 +1,159 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Input Documents Main Tests
Requirements:
a workspace with the process 14414793652a5d718b65590036026581 already loaded
the process name is "Sample Project #1"
there are zero input documents in the process
Background:
Given that I have a valid access_token
Scenario: Get the Input Documents List when there are exactly zero input documents
Given I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 0 records
Scenario Outline: Create 13 new Input Documents
Given POST this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And I request "project/<project>/input-document"
Then the response status code should be 201
And the content type is "application/json"
And the response charset is "UTF-8"
And the type is "object"
And store "inp_doc_uid" in session array as variable "inp_doc_uid_<inp_doc_number>"
Examples:
| test_description | project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags |
| Create with virtual with versioning | 14414793652a5d718b65590036026581 | 1 | My InputDocument1 | My InputDocument2 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Create with virtual without versioning | 14414793652a5d718b65590036026581 | 2 | My InputDocument2 | My InputDocument2 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 0 | | INPUT |
| Create with real with versioning | 14414793652a5d718b65590036026581 | 3 | My InputDocument3 | My InputDocument3 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Create with vreal with versioning | 14414793652a5d718b65590036026581 | 4 | My InputDocument4 | My InputDocument4 DESCRIPTION | VREAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Create with virtual, copy and versioning | 14414793652a5d718b65590036026581 | 5 | My InputDocument5 | My InputDocument5 DESCRIPTION | VIRTUAL | COPY | PRIVATE | 1 | | INPUT |
| Create with virtual, original and without versioning | 14414793652a5d718b65590036026581 | 6 | My InputDocument6 | My InputDocument6 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 0 | | INPUT |
| Create with virtual, versioning and destination path | 14414793652a5d718b65590036026581 | 7 | My InputDocument7 | My InputDocument7 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | /my/path | INPUT |
| Create with virtual, without versioning and destination path | 14414793652a5d718b65590036026581 | 8 | My InputDocument8 | My InputDocument8 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 0 | /my/path | INPUT |
| Create with real, without versioning and destination path | 14414793652a5d718b65590036026581 | 9 | My InputDocument9 | My InputDocument9 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 0 | /my/path | INPUT |
| Create with special characters in inp doc title | 14414793652a5d718b65590036026581 | 10 | My InputDocument10 !@#$%^&*€¤½¼‘¾¡²¤³| My InputDocument10 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Create with special characters in inp doc description | 14414793652a5d718b65590036026581 | 11 | My InputDocument11 | My InputDocument11 !@#$%^&*€¤½¼‘¾¡²¤³| REAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Create with special characters in inp doc destination path | 14414793652a5d718b65590036026581 | 12 | My InputDocument12 | My InputDocument12 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | /my#@$#%/path324@$@@ | INPUT |
| Create with special characters in inp doc tags | 14414793652a5d718b65590036026581 | 13 | My InputDocument13 | My InputDocument13 DESCRIPTION | REAL | ORIGINAL | PRIVATE | 1 | | INPU455 @##$$³¤¤ |
Scenario: Get the Input Documents list when there are 13 records
Given I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 13 records
Scenario Outline: Update the Input Documents and then check if the values had changed
Given PUT this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And that I want to update a resource with the key "inp_doc_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| test_description | project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags |
| Update inp doc title and inp doc description | 14414793652a5d718b65590036026581 | 1 | My InputDocument1 'UPDATE' | My InputDocument1 DESCRIPTION-update| VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Update inp doc title, inp doc description and inp doc form needed | 14414793652a5d718b65590036026581 | 2 | My InputDocument2 'UPDATE' | My InputDocument2 DESCRIPTION-update| VREAL | ORIGINAL | PRIVATE | 1 | | INPUT |
| Update inp doc title, inp doc description and inp doc versioning | 14414793652a5d718b65590036026581 | 3 | My InputDocument3 'UPDATE' | My InputDocument3 DESCRIPTION-update| REAL | ORIGINAL | PRIVATE | 0 | | INPUT |
Scenario Outline: Get a single Input Document to verify that the were updated correctly in previous step
Given that I want to get a resource with the key "inp_doc_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
And that "inp_doc_title" is set to "<inp_doc_title>"
And that "inp_doc_description" is set to "<inp_doc_description>"
And that "inp_doc_form_needed" is set to "<inp_doc_form_needed>"
And that "inp_doc_versioning" is set to "<inp_doc_versioning>"
Examples:
| project | inp_doc_number | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_versioning |
| 14414793652a5d718b65590036026581 | 1 | My InputDocument1 'UPDATE' | My InputDocument1 DESCRIPTION-update| VIRTUAL | 1 |
| 14414793652a5d718b65590036026581 | 2 | My InputDocument2 'UPDATE' | My InputDocument2 DESCRIPTION-update| VREAL | 1 |
| 14414793652a5d718b65590036026581 | 3 | My InputDocument3 'UPDATE' | My InputDocument3 DESCRIPTION-update| REAL | 0 |
Scenario Outline: Delete all Input documents created previously in this script
Given that I want to delete a resource with the key "inp_out_uid" stored in session array as variable "inp_doc_uid_<inp_doc_number>"
And I request "project/<project>/input-document"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | inp_doc_number |
| 14414793652a5d718b65590036026581 | 1 |
| 14414793652a5d718b65590036026581 | 2 |
| 14414793652a5d718b65590036026581 | 3 |
| 14414793652a5d718b65590036026581 | 4 |
| 14414793652a5d718b65590036026581 | 5 |
| 14414793652a5d718b65590036026581 | 6 |
| 14414793652a5d718b65590036026581 | 7 |
| 14414793652a5d718b65590036026581 | 8 |
| 14414793652a5d718b65590036026581 | 9 |
| 14414793652a5d718b65590036026581 | 10 |
| 14414793652a5d718b65590036026581 | 11 |
| 14414793652a5d718b65590036026581 | 12 |
| 14414793652a5d718b65590036026581 | 13 |
Scenario: Get the Input Documents List when there are exactly zero input documents after of delete all Input documents
Given I request "project/14414793652a5d718b65590036026581/input-documents"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "array"
And the response has 0 records

View File

@@ -0,0 +1,39 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Output Documents Negative Tests
Background:
Given that I have a valid access_token
Scenario Outline: Create a new input document for a project with bad parameters (negative tests)
Given POST this data:
"""
{
"inp_doc_title": "<inp_doc_title>",
"inp_doc_description": "<inp_doc_description>",
"inp_doc_form_needed": "<inp_doc_form_needed>",
"inp_doc_original": "<inp_doc_original>",
"inp_doc_published": "<inp_doc_published>",
"inp_doc_versioning": "<inp_doc_versioning>",
"inp_doc_destination_path": "<inp_doc_destination_path>",
"inp_doc_tags": "<inp_doc_tags>"
}
"""
And I request "project/<project>/input-document"
Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples:
| test_description | project | inp_doc_title | inp_doc_description | inp_doc_form_needed | inp_doc_original | inp_doc_published | inp_doc_versioning | inp_doc_destination_path | inp_doc_tags | error_code | error_message |
| Create with project invalid | 14414793652a5d718b65590036 | My InputDocument1 | My InputDocument1 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT | 400 | project |
| Invalid inp doc from needed | 14414793652a5d718b65590036026581 | My InputDocument4 | My InputDocument4 DESCRIPTION | VRESAMPLE12334$%#@ | ORIGINAL | PRIVATE | 1 | | INPUT | 400 | inp_doc_form_needed |
| Invalid inp doc original | 14414793652a5d718b65590036026581 | My InputDocument5 | My InputDocument5 DESCRIPTION | VIRTUAL | COORIGI 123@#$%$% | PRIVATE | 1 | | INPUT | 400 | inp_doc_original |
| Invalid inp doc published | 14414793652a5d718b65590036026581 | My InputDocument6 | My InputDocument6 DESCRIPTION | VIRTUAL | ORIGINAL | PRIV123234@##$$%% | 0 | | INPUT | 400 | inp_doc_published |
| Invalid inp doc versioning | 14414793652a5d718b65590036026581 | My InputDocument7 | My InputDocument7 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 87 | | INPUT | 400 | inp_doc_versioning |
| Create without id of project | | My InputDocument10 | My InputDocument10 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT | 400 | project |
| Create without inp doc form needed | 14414793652a5d718b65590036026581 | My InputDocument11 | My InputDocument11 DESCRIPTION | | ORIGINAL | PRIVATE | 1 | | INPUT | 400 | inp_doc_form_needed |
| Create without inp doc original | 14414793652a5d718b65590036026581 | My InputDocument12 | My InputDocument12 DESCRIPTION | REAL | | PRIVATE | 1 | | INPUT | 400 | inp_doc_original |
| Create without inp doc published | 14414793652a5d718b65590036026581 | My InputDocument13 | My InputDocument13 DESCRIPTION | VREAL | ORIGINAL | | 1 | | INPUT | 400 | inp_doc_published |
| Create without inp doc title | 14414793652a5d718b65590036026581 | | My InputDocument1 DESCRIPTION | VIRTUAL | ORIGINAL | PRIVATE | 1 | | INPUT | 400 | inp_doc_title |

View File

@@ -70,24 +70,24 @@ Feature: Output Documents Main Tests
Examples: Examples:
| project | out_doc_number | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions | | test_description | project | out_doc_number | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions |
| 4224292655297723eb98691001100052 | 1 | Endpoint Old Version | Output Document old version - EndPoint | Output 1 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Create with old version and both | 4224292655297723eb98691001100052 | 1 | Endpoint Old Version | Output Document old version - EndPoint | Output 1 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 2 | Endpoint Old Version PDF SECURITY | Output Document old version PDF SECURITY | Output 2 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Craate with old version and pdf security | 4224292655297723eb98691001100052 | 2 | Endpoint Old Version PDF SECURITY | Output Document old version PDF SECURITY | Output 2 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms |
| 4224292655297723eb98691001100052 | 3 | Endpoint Old Version Doc | Output Document old version solo doc | Output 3 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | | | Create with old version only doc | 4224292655297723eb98691001100052 | 3 | Endpoint Old Version Doc | Output Document old version solo doc | Output 3 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 4 | Endpoint Old Version PDF | Output Document old version solo pdf | Output 4 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print | | Create with old version only pdf | 4224292655297723eb98691001100052 | 4 | Endpoint Old Version PDF | Output Document old version solo pdf | Output 4 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print |
| 4224292655297723eb98691001100052 | 5 | Endpoint New Version | Output Document new version - EndPoint | Output 5 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Create with new version and both | 4224292655297723eb98691001100052 | 5 | Endpoint New Version | Output Document new version - EndPoint | Output 5 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 6 | Endpoint New Version PDF SECURITY | Output Document new version PDF SECURITY | Output 6 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Create with new version and pdf security | 4224292655297723eb98691001100052 | 6 | Endpoint New Version PDF SECURITY | Output Document new version PDF SECURITY | Output 6 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms |
| 4224292655297723eb98691001100052 | 7 | Endpoint New Version Doc | Output Document new version solo doc | Output 7 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | | | Create with new version only doc | 4224292655297723eb98691001100052 | 7 | Endpoint New Version Doc | Output Document new version solo doc | Output 7 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 8 | Endpoint New Version PDF | Output Document new version solo pdf | Output 8 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print | | Create with new version only pdf | 4224292655297723eb98691001100052 | 8 | Endpoint New Version PDF | Output Document new version solo pdf | Output 8 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print |
| 4224292655297723eb98691001100052 | 9 | test !@#$%^&*€¤¾½²³€¼½¼ | Output Document old version - EndPoint | Output 9 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Create with special characters in out doc title | 4224292655297723eb98691001100052 | 9 | test !@#$%^&*€¤¾½²³€¼½¼ | Output Document old version - EndPoint | Output 9 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 10 | Endpoint Old1 | test %^&*¤¾½²³ | Output 10 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Create with special characters in out doc description | 4224292655297723eb98691001100052 | 10 | Endpoint Old1 | test %^&*¤¾½²³ | Output 10 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms |
| 4224292655297723eb98691001100052 | 11 | Endpoint Old Version Doc 2 | Output Document old version solo doc | Output @#$%^&*€¤ | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | | | Create with special characters in out doc filename | 4224292655297723eb98691001100052 | 11 | Endpoint Old Version Doc 2 | Output Document old version solo doc | Output @#$%^&*€¤ | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | | 1 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 12 | Endpoint Old Version PDF 3 | Output Document old version solo pdf | Output 11 | sample @#$%^&*€¤ | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print | | Create with special characters in out doc template | 4224292655297723eb98691001100052 | 12 | Endpoint Old Version PDF 3 | Output Document old version solo pdf | Output 11 | sample @#$%^&*€¤ | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print |
| 4224292655297723eb98691001100052 | 13 | Endpoint New Version Doc 14 | Output Document new version solo doc | Output 12 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | 324#$%%^^@@ | 1 | | | 0 | | | | | Create with special characters in out doc field mapping | 4224292655297723eb98691001100052 | 13 | Endpoint New Version Doc 14 | Output Document new version solo doc | Output 12 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | DOC | HTML | 0 | 324#$%%^^@@ | 1 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 14 | Endpoint New Version 16 | Output Document new version - EndPoint | Output 13 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | 23rg@#$% | | 0 | | | | | Create with special characters in out doc destination path | 4224292655297723eb98691001100052 | 14 | Endpoint New Version 16 | Output Document new version - EndPoint | Output 13 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | 23rg@#$% | | 0 | | | |
| 4224292655297723eb98691001100052 | 15 | Endpoint New Version PDF SECURI17 | Output Document new version PDF SECURITY | Output 14 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | vfv23@$@% | 1 | sample | sample | print\|modify\|copy\|forms | | Create with special characters in out doc tags | 4224292655297723eb98691001100052 | 15 | Endpoint New Version PDF SECURI17 | Output Document new version PDF SECURITY | Output 14 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | vfv23@$@% | 1 | sample | sample | print\|modify\|copy\|forms |
| 4224292655297723eb98691001100052 | 16 | Endpoint New Version PDF 19 | Output Document new version solo pdf | Output 15 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample432@$#@$¼€¼½ | sample | print | | Create with special characters in out doc pdf security open password | 4224292655297723eb98691001100052 | 16 | Endpoint New Version PDF 19 | Output Document new version solo pdf | Output 15 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample432@$#@$¼€¼½ | sample | print |
| 4224292655297723eb98691001100052 | 17 | Endpoint New Version 20 | Output Document new version - EndPoint | Output 16 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | sample432@$#@$¼€¼½ | | | Create with special characters in out doc pdf security owner password | 4224292655297723eb98691001100052 | 17 | Endpoint New Version 20 | Output Document new version - EndPoint | Output 16 | | TCPDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | sample432@$#@$¼€¼½ | |
Scenario: Get the Output Documents list when there are 19 records Scenario: Get the Output Documents list when there are 19 records
@@ -135,15 +135,14 @@ Feature: Output Documents Main Tests
Examples: Examples:
| project | out_doc_number | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions | | test_description | project | out_doc_number | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions |
| 4224292655297723eb98691001100052 | 1 | Endpoint Old Version UPDATE | Output Document old version - UPDATE | Output 1 | | HTML2PDF | 0 | Letter | 20 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Update out doc title and description | 4224292655297723eb98691001100052 | 1 | Endpoint Old Version UPDATE | Output Document old version - UPDATE | Output 1 | | HTML2PDF | 0 | Letter | 20 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 2 | Endpoint Old Version PDF SECURITY UPDATE | Output UPDATE old version PDF SECURITY | Output 2 | | HTML2PDF | 1 | Legal | 20 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy | | Update out doc title and out doc generate | 4224292655297723eb98691001100052 | 2 | Endpoint Old Version PDF SECURITY UPDATE | Output UPDATE old version PDF SECURITY | Output 2 | | TCPDF | 1 | Legal | 20 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy |
| 4224292655297723eb98691001100052 | 5 | Endpoint New Version UPDATE | Output UPDATE new version - EndPoint | Output 5 | | TCPDF | 0 | Letter | 30 | 20 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Update out doc title and description | 4224292655297723eb98691001100052 | 5 | Endpoint New Version UPDATE | Output UPDATE new version - EndPoint | Output 5 | | TCPDF | 0 | Letter | 30 | 20 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | |
| 4224292655297723eb98691001100052 | 6 | Endpoint New Version PDF SECURITY UPDATE | Output UPDATE new version PDF SECURITY | Output 6 | | TCPDF | 1 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy | | Update out doc title and out doc generate | 4224292655297723eb98691001100052 | 6 | Endpoint New Version PDF SECURITY UPDATE | Output UPDATE new version PDF SECURITY | Output 6 | | HTML2PDF | 1 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy |
Scenario Outline: Get a single Output Document and check some properties Scenario Outline: Get a single Output Document and check some properties
Given that I want to get a resource with the key "out_doc_uid" stored in session array as variable "out_doc_uid_<out_doc_number>" Given that I want to get a resource with the key "out_doc_uid" stored in session array as variable "out_doc_uid_<out_doc_number>"
And I request "project/<project>/output-document" And I request "project/<project>/output-document"
And the content type is "application/json" And the content type is "application/json"

View File

@@ -1,7 +1,11 @@
@ProcessMakerMichelangelo @RestAPI @ProcessMakerMichelangelo @RestAPI
Feature: Output Documents Negative Tests Feature: Output Documents Negative Tests
Scenario Outline: Create a new output document for a project
Background:
Given that I have a valid access_token
Scenario Outline: Create a new output document for a project with bad parameters (negative tests)
Given POST this data: Given POST this data:
""" """
{ {
@@ -30,25 +34,27 @@ Feature: Output Documents Negative Tests
} }
""" """
And I request "project/<project>/output-document" And I request "project/<project>/output-document"
Then the response status code should be 400 Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples: Examples:
| project | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions | | test_description | project | out_doc_title | out_doc_description |out_doc_filename | out_doc_template | out_doc_report_generator | out_doc_landscape | out_doc_media | out_doc_left_margin | out_doc_right_margin | out_doc_top_margin | out_doc_bottom_margin | out_doc_generate | out_doc_type | out_doc_current_revision | out_doc_field_mapping | out_doc_versioning | out_doc_destination_path | out_doc_tags | out_doc_pdf_security_enabled | out_doc_pdf_security_open_password | out_doc_pdf_security_owner_password | out_doc_pdf_security_permissions | error_code | error_message |
| 4224292655297723eb98691001100052 | Endpoint New Version 4 | Output Document new version - EndPoint | Output 5 | | @#$%¼¤¾½ | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Invalid PDF Generator | 4224292655297723eb98691001100052 | Endpoint New Version 4 | Output Document new version - EndPoint | Output 5 | | @#$%¼¤¾½ | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | 400 | out_doc_report_generator |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURIT5 | Output Document new version PDF SECURITY | Output 6 | | TCPDF | 34 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Invalid landscape | 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURIT5 | Output Document new version PDF SECURITY | Output 6 | | TCPDF | 34 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | 400 | out_doc_landscape |
| 4224292655297723eb98691001100052 | Endpoint New Version Doc6 | Output Document new version solo doc | Output 7 | | TCPDF | 0 | Legal!@#$$$%^&| 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 0 | | | | | Invalid media type | 4224292655297723eb98691001100052 | Endpoint New Version Doc6 | Output Document new version solo doc | Output 7 | | TCPDF | 0 | Legal!@#$$$%^&| 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 0 | | | | 400 | out_doc_media |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF7 | Output Document new version solo pdf | Output 8 | | TCPDF | 0 | Legal | 25,56.98 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print | | Invalid document type | 4224292655297723eb98691001100052 | Endpoint New Version PDF7 | Output Document new version solo pdf | Output 8 | | TCPDF | 0 | Legal | 25,56.98 | 25 | 25 | 25 | PDF | HTML | 0 | | 1 | | | 1 | sample | sample | print | 400 | out_doc_left_margin |
| 4224292655297723eb98691001100052 | Endpoint New Version8 | Output Document new version - EndPoint | Output 9 | | TCPDF | 1 | Letter | 30 | 30,7.98 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Invalid left margin | 4224292655297723eb98691001100052 | Endpoint New Version8 | Output Document new version - EndPoint | Output 9 | | TCPDF | 1 | Letter | 30 | 30,7.98 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | 400 | out_doc_right_margin |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURIT9 | Output Document new version PDF SECURITY | Output 10 | | TCPDF | 0 | Legal | 25 | 25 | 25,54.98 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Invalid right margin | 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURIT9 | Output Document new version PDF SECURITY | Output 10 | | TCPDF | 0 | Legal | 25 | 25 | 25,54.98 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | 400 | out_doc_top_margin |
| 4224292655297723eb98691001100052 | Endpoint New Version Doc10 | Output Document new version solo doc | Output 11 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25,34.09 | WORD | HTML | 0 | | 1 | | | 0 | | | | | Invalid top margin | 4224292655297723eb98691001100052 | Endpoint New Version Doc10 | Output Document new version solo doc | Output 11 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25,34.09 | WORD | HTML | 0 | | 1 | | | 0 | | | | 400 | out_doc_bottom_margin |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF 11 | Output Document new version solo pdf | Output 12 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDtest@#$$ | HTML | 0 | | 1 | | | 1 | sample | sample | print | | Invalid bottom margin | 4224292655297723eb98691001100052 | Endpoint New Version PDF 11 | Output Document new version solo pdf | Output 12 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDtest@#$$ | HTML | 0 | | 1 | | | 1 | sample | sample | print | 400 | out_doc_generate |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURI13 | Output Document new version PDF SECURITY | Output 14 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 45,988.566 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | | Invalid current revision | 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURI13 | Output Document new version PDF SECURITY | Output 14 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 45,988.566 | | 1 | | | 1 | sample | sample | print\|modify\|copy\|forms | 400 | out_doc_current_revision |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF 15 | Output Document new version solo pdf | Output 16 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1,99.98 | | | 1 | sample | sample | print | | Invalid doc versioning | 4224292655297723eb98691001100052 | Endpoint New Version PDF 15 | Output Document new version solo pdf | Output 16 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | PDF | HTML | 0 | | 1,99.98 | | | 1 | sample | sample | print | 400 | out_doc_versioning |
| 4224292655297723eb98691001100052 | Endpoint New Version Doc 18 | Output Document new version solo doc | Output 18 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 23454 | | | | | Invalid doc pdf security enabled | 4224292655297723eb98691001100052 | Endpoint New Version Doc 18 | Output Document new version solo doc | Output 18 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 23454 | | | | 400 | out_doc_generate |
| 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURI22 | Output Document new version PDF SECURITY | Output 21 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modfy\|cop\|for\|aaa | | Invalid doc pdf security permissions | 4224292655297723eb98691001100052 | Endpoint New Version PDF SECURI22 | Output Document new version PDF SECURITY | Output 21 | | TCPDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 1 | sample | sample | print\|modfy\|cop\|for\|aaa | 400 | out_doc_pdf_security_permissions |
| 4224292655297723eb98691001100052 | | Output Document old version - EndPoint | Output 22 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | | Field requered out doc title | 4224292655297723eb98691001100052 | | Output Document old version - EndPoint | Output 22 | | HTML2PDF | 1 | Letter | 30 | 30 | 30 | 30 | BOTH | HTML | 0 | | 0 | | | 0 | | | | 400 | out_doc_title |
| 4224292655297723eb98691001100052 | Endpoint Old Version Doc | Output Document old version solo doc | | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 0 | | | | | Field required out doc filename | 4224292655297723eb98691001100052 | Endpoint Old Version Doc | Output Document old version solo doc | | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | WORD | HTML | 0 | | 1 | | | 0 | | | | 400 | out_doc_generate |
| Output created with same name | 4224292655297723eb98691001100052 | Endpoint Old Version (base) | Output Document old version solo doc | Output 23 | | HTML2PDF | 0 | Legal | 25 | 25 | 25 | 25 | BOTH | HTML | 0 | | 1 | | | 0 | | | | 400 | Output Document with the same name in this process |
Feature: Output Documents Resources

View File

@@ -0,0 +1,63 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Process Supervisor Negative tests
Background:
Given that I have a valid access_token
Scenario Outline: Assign a user and a group to a process supervisor for a project with bad parameters (negative tests)
Given POST this data:
"""
{
"pu_type": "<pu_type>",
"usr_uid": "<usr_uid>"
}
"""
And I request "project/<project>/process-supervisor"
Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples:
| test_description | project | pu_type | usr_uid | error_code | error_message |
| Invalid pu_type | 85794888452ceeef3675164057928956 | GROUP_USER_DEPARTAMENT | 46138556052cda43a051110007756836 | 400 | pu_type |
| Invalid usr_uid | 85794888452ceeef3675164057928956 | SUPERVISOR | 0000000000000gtr@#$0000000000001 | 400 | usr_uid |
| Field requered project | | SUPERVISOR | 00000000000000000000000000000001 | 400 | project |
| Field requered pu_type | 85794888452ceeef3675164057928956 | | 00000000000000000000000000000001 | 400 | pu_type |
| Field requered urs_uid | 85794888452ceeef3675164057928956 | SUPERVISOR | | 400 | usr_uid |
Scenario Outline: Assign a dynaform to a process supervisor for a project with bad parameters (negative tests)
Given POST this data:
"""
{
"dyn_uid": "<dyn_uid>"
}
"""
And I request "project/<project>/process-supervisor/dynaform"
Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples:
| test_description | project | dyn_uid | error_code | error_message |
| Invalid dyn_uid | 85794888452ceeef3675164057928956 | 2ceeef36751640grgrtgrg#$%#%# | 400 | dyn_uid |
| Field requered project | | 78212661352ceef2dc4e987081647602 | 400 | project |
| Field requered dyn_uid | 85794888452ceeef3675164057928956 | 78212661352ceef2dc4e987081647602 | 400 | dyn_uid |
Scenario Outline: Assign a Input Document to a process supervisor for a project with bad parameters (negative tests)
Given POST this data:
"""
{
"dyn_uid": "<inp_doc_uid>"
}
"""
And I request "project/<project>/process-supervisor/input-document"
Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples:
| test_description | project | inp_doc_uid | error_code | error_message |
| Invalid inp_doc_uid | 85794888452ceeef3675164057928956 | 25205290452ceef5@#$41c3067266323 | 400 | inp_doc_uid |
| Field requered project | | 25205290452ceef570741c3067266323 | 400 | project |
| Field requered inp_doc_uid | 85794888452ceeef3675164057928956 | | 400 | inp_doc_uid |

View File

@@ -2,133 +2,155 @@
Feature: Process supervisor Resources Feature: Process supervisor Resources
Background: Background:
Given that I have a valid access_token Given that I have a valid access_token
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisors Scenario Outline: Get a List of current process supervisors of a project
@1: TEST FOR GET PROCESS SUPERVISOR /-------------------------------------------------------------------- Given I request "project/<project>/process-supervisors"
Scenario: Get a List of process supervisor of a project Then the response status code should be 200
Given I request "project/85794888452ceeef3675164057928956/process-supervisors" And the response charset is "UTF-8"
Then the response status code should be 200 And the content type is "application/json"
And the response charset is "UTF-8" And the type is "array"
And the content type is "application/json" And the response has <records> records
And the type is "array"
And the response has 1 records Examples:
| test_description | project | records |
| List current unique process supervisor | 85794888452ceeef3675164057928956 | 0 |
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/{pu_uid} Scenario Outline: Get a specific process supervisor details of a project
@2: TEST FOR GET A SPECIFIC PROCESS SUPERVISOR /-------------------------------------------------------------------- Given I request "project/<project>/process-supervisor/<pu_uid>"
Scenario: Get a specific process supervisor of a project Then the response status code should be 200
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/70662784652cef0878516f7085532841" And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "object"
Examples:
| test_description | project | pu_uid |
| Get the supervisor details | 85794888452ceeef3675164057928956 | 70662784652cef0878516f7085532841 |
Scenario Outline: Get a List of available process supervisor of a project
Given I request "project/<project>/available-process-supervisors"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has <records> records
Examples:
| test_description | project | records |
| List users and groups available to be supervisors | 85794888452ceeef3675164057928956 | 24 |
Scenario Outline: Get a List of available groups process supervisor of a project
Given I request "project/<project>/available-process-supervisors?obj_type=group"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has <records> records
Examples:
| test_description | project | records |
| List the 23 groups available to be supervisors | 85794888452ceeef3675164057928956 | 23 |
Scenario Outline: Get a List of available users elegible as process supervisor
Given I request "project/<project>/available-process-supervisors?obj_type=user"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has <records> records
Examples:
| test_description | project | records |
| List the unique admin user available to be supervisor | 85794888452ceeef3675164057928956 | 1 |
Scenario Outline: Get a List of dynaforms assigned to a process supervisor
Given I request "project/<project>/process-supervisor/dynaforms"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has <records> records
Examples:
| test_description | project | records |
| List the 2 pre-assigned dynaforms | 85794888452ceeef3675164057928956 | 2 |
Scenario Outline: Get a specific dynaform detail assigned to a process supervisor
Given I request "project/<project>/process-supervisor/dynaform/<pud_uid>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
Examples:
| test_description | project | pud_uid |
| Get details of the first assigend dynaform | 85794888452ceeef3675164057928956 | 78069721352ceef1fd61878075214306 |
#GET /api/1.0/{workspace}/project/{prj_uid}/available-process-supervisors
@3: TEST FOR GET USERS AND GROUP SUPERVISOR /--------------------------------------------------------------------
Scenario: Get a List of available process supervisor of a project Scenario Outline: Get a List of available dynaforms to be assigned to a process supervisor
Given I request "project/85794888452ceeef3675164057928956/available-process-supervisors" Given I request "project/<project>/process-supervisor/available-dynaforms"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has 86 records And the response has <records> records
Examples:
| test_description | project | records |
| Get a list of available dynaforms to be assigned | 85794888452ceeef3675164057928956 | 1 |
#GET /api/1.0/{workspace}/project/{prj_uid}/available-process-supervisors Scenario Outline: Get a List of assigend input-documents to a process supervisor
@4: TEST FOR GET GROUP SUPERVISOR /-------------------------------------------------------------------- Given I request "project/<project>/process-supervisor/input-documents"
Scenario: Get a List of available groups process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/available-process-supervisors?obj_type=group"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has 23 records And the response has <records> records
Examples:
| test_description | project | records |
| Get a list of pre-assigned input doucments | 85794888452ceeef3675164057928956 | 2 |
#GET /api/1.0/{workspace}/project/{prj_uid}/available-process-supervisors Scenario Outline: Get a List of available input-documents to be assigned to a process supervisor
@5: TEST FOR GET USERS SUPERVISOR /-------------------------------------------------------------------- Given I request "project/<project>/process-supervisor/available-input-documents"
Scenario: Get a List of available users process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/available-process-supervisors?obj_type=user"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has 63 records And the response has <records> records
Examples:
| test_description | project | records |
| Get a list of 1 record of available input documents | 85794888452ceeef3675164057928956 | 1 |
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/dynaforms Scenario Outline: Get a specific input document assigned to a process supervisor
@6: TEST FOR DYNAFORM PROCESS SUPERVISOR /-------------------------------------------------------------------- Given I request "project/<project>/process-supervisor/input-document/<pui_uid>"
Scenario: Get a List of dynaforms process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/dynaforms"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 3 records
@7: TEST FOR GET A SPECIFIC PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Get a specific process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/dynaform/78069721352ceef1fd61878075214306"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
Examples:
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/available-dynaforms | test_description | project | pui_uid |
@8: TEST FOR GET AVAILABLE DYNAFORM PROCESS SUPERVISOR /-------------------------------------------------------------------- | Get details of assigend input document | 85794888452ceeef3675164057928956 | 37709187452ceef4f601dd3045365506 |
Scenario: Get a List of available dynaforms process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/available-dynaforms"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 2 records
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/input-documents Scenario Outline: Assign a user and a group as process supervisors
@9: TEST FOR GET INPUT DOCUMENT PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Get a List of input-documents process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/input-documents"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 1 records
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/available-input-documents
@10: TEST FOR GET LIST INPUT DOCUMENTS - PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Get a List of input-documents process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/available-input-documents"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 2 records
#GET /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/input-document/{pu_uid}
@11: TEST FOR GET PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Get a specific process supervisor of a project
Given I request "project/85794888452ceeef3675164057928956/process-supervisor/input-document/37709187452ceef4f601dd3045365506"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "object"
#POST /api/1.0/{workspace}/project/{prj_uid}/process-supervisor
@12: TEST FOR POST PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario Outline: Assign a user and group process supervisor of a project
Given POST this data: Given POST this data:
""" """
{ {
"pu_type": "pu_type", "pu_type": "<pu_type>",
"usr_uid": "usr_uid" "usr_uid": "<usr_uid>"
} }
""" """
And I request "project/<project>/process-supervisor" And I request "project/<project>/process-supervisor"
@@ -136,102 +158,78 @@ Feature: Process supervisor Resources
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
And store "pu_uid" in session array as variable "pug_uid_<ps_number>" And store "pu_uid" in session array as variable "pu_uid_<pu_number>"
Examples: Examples:
| project | ps_number | pu_type | usr_uid | | test_description | project | pu_number | pu_type | usr_uid |
| 85794888452ceeef3675164057928956 | 1 | GROUP_SUPERVISOR | 46138556052cda43a051110007756836 | | Assign a group as Supervisor | 85794888452ceeef3675164057928956 | 1 | GROUP_SUPERVISOR | 54731929352d56741de9d42002704749 |
| 85794888452ceeef3675164057928956 | 2 | SUPERVISOR | 00000000000000000000000000000001 | | Assign a user as Supervisor | 85794888452ceeef3675164057928956 | 2 | SUPERVISOR | 00000000000000000000000000000001 |
#POST /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/dynaform Scenario Outline: Assign a dynaform to a process supervisor
@13: TEST FOR POST DYNAFORM PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario Outline: Assign a dynaform process supervisor of a project
Given POST this data: Given POST this data:
""" """
{ {
"dyn_uid": "78212661352ceef2dc4e987081647602" "dyn_uid": "<dyn_uid>"
} }
""" """
And I request "project/85794888452ceeef3675164057928956/process-supervisor/dynaform" And I request "project/<project>/process-supervisor/dynaform"
Then the response status code should be 201 Then the response status code should be 201
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
And store "pud_uid" in session array as variable "pud_uid_<dps_number>" And store "pud_uid" in session array as variable "pud_uid_<pud_number>"
Examples: Examples:
| project | dps_number | dyn_uid | | test_description | project | pud_number | dyn_uid |
| 85794888452ceeef3675164057928956 | 1 | 78212661352ceef2dc4e987081647602 | | Assign a dynaform for Supervisor | 85794888452ceeef3675164057928956 | 1 | 27801990352a715de093b64036715425 |
| 85794888452ceeef3675164057928956 | 1 | |
#POST /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/input-document Scenario Outline: Assign an input document to a process supervisor
@14: TEST FOR POST INPUT DOCUMENT - PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario Outline: Assign a dynaform process supervisor of a project
Given POST this data: Given POST this data:
""" """
{ {
"inp_doc_uid": "<inp_doc_uid>" "inp_doc_uid": "<inp_doc_uid>"
} }
""" """
And I request "project/85794888452ceeef3675164057928956/process-supervisor/input-document" And I request "project/<project>/process-supervisor/input-document"
Then the response status code should be 201 Then the response status code should be 201
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
And store "pui_uid" in session array as variable "pui_inpdoc_uid_<>" And store "pui_uid" in session array as variable "pui_inpdoc_uid_<dps_number>"
Examples: Examples:
| project | dps_number | inp_doc_uid | | test_description | project | dps_number | inp_doc_uid |
| 85794888452ceeef3675164057928956 | 1 | 25205290452ceef570741c3067266323 | | Assign an Input document for Supervisor | 85794888452ceeef3675164057928956 | 1 | 30053187052ddfa4e1fdca4001721051 |
#DELETE /api/1.0/{workspace}/project/{prj_uid}/process-supervisor Scenario Outline: Delete a process supervisor
@15: TEST FOR DELETE PROCESS SUPERVISOR /-------------------------------------------------------------------- Given that I want to delete a resource with the key "pu_uid" stored in session array as variable "pu_uid_<pu_number>"
Scenario Outline: Delete a user process supervisor of a project And I request "project/<project>/process-supervisor"
Given that I want to delete a resource with the key "pug_uid" stored in session array
And I request "project/85794888452ceeef3675164057928956/process-supervisor"
And the content type is "application/json" And the content type is "application/json"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
Examples: Examples:
| project | ps_number | | test_description | project | pu_number |
| 85794888452ceeef3675164057928956 | 1 | | Remove first assigned supervisor | 85794888452ceeef3675164057928956 | 1 |
| 85794888452ceeef3675164057928956 | 2 | | Remove second assigned supervisor | 85794888452ceeef3675164057928956 | 2 |
#DELETE /api/1.0/{workspace}/project/{prj_uid}/process-supervisor Scenario Outline: Delete a input-document process supervisor of a project
@3: TEST FOR GET PROCESS SUPERVISOR /-------------------------------------------------------------------- Given that I want to delete a resource with the key "pui_uid" stored in session array as variable "pui_inpdoc_uid_<dps_number>"
Scenario: Delete a user process supervisor of a project
Given that I want to delete a resource with the key "puu_uid" stored in session array
And I request "project/85794888452ceeef3675164057928956/process-supervisor"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
#DELETE /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/dynaform
@3: TEST FOR GET PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Delete a dynaform process supervisor of a project
Given that I want to delete a resource with the key "pud_uid" stored in session array
And I request "project/85794888452ceeef3675164057928956/process-supervisor/dynaform"
And the content type is "application/json"
Then the response status code should be 200
And the response charset is "UTF-8"
#DELETE /api/1.0/{workspace}/project/{prj_uid}/process-supervisor/input-document
@3: TEST FOR GET PROCESS SUPERVISOR /--------------------------------------------------------------------
Scenario: Delete a input-document process supervisor of a project
Given that I want to delete a resource with the key "pui_uid" stored in session array
And I request "project/85794888452ceeef3675164057928956/process-supervisor/input-document" And I request "project/85794888452ceeef3675164057928956/process-supervisor/input-document"
And the content type is "application/json" And the content type is "application/json"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
Examples:
| test_description | project | dps_number |
| Assign an Input document for Supervisor | 85794888452ceeef3675164057928956 | 1 |

View File

@@ -1,12 +1,17 @@
@ProcessMakerMichelangelo @RestAPI @ProcessMakerMichelangelo @RestAPI
Feature: Activity Resources Feature: Activity Resources Main Tests
Requirements:
a workspace with the process 4224292655297723eb98691001100052 already loaded
the process name is "Test Users-Step-Properties End Point"
there are three Activity Resources in the process and one subprocess
Background: Background:
Given that I have a valid access_token Given that I have a valid access_token
@1: TEST FOR GET PROPERTIES & DEFINITION OF A ACTIVITY /-----------------------------------------------------------------------
Scenario Outline: Get an activity Scenario Outline: Get the Properties and Definition of a Activity are exactly three activity
Given I request "project/<project>/activity/<activity>" Given I request "project/<project>/activity/<activity>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the type is "object" And the type is "object"
@@ -17,12 +22,13 @@ Feature: Activity Resources
Examples: Examples:
| project | activity | tas_title | | project | activity | tas_title |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | Task 1 | | 251815090529619a99a2bf4013294414 | 63843886052a5cc066e4c04056414372 | Task 1 |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | Task 2 |
| 251815090529619a99a2bf4013294414 | 95655319552a5c790b69a04054667879 | Task 3 |
@2: TEST FOR GET PROPERTIES ACTIVITY /--------------------------------------------------------- Scenario Outline: Get the Properties of a Activity are exactly three activity
Scenario Outline: Get properties of activity Given I request "project/<project>/activity/<activity>?filter=properties"
Given I request "project/<project>/activity/<activity>?filter=properties"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the type is "object" And the type is "object"
@@ -30,14 +36,15 @@ Feature: Activity Resources
Examples: Examples:
| project | activity | | project | activity | tas_title |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | | 251815090529619a99a2bf4013294414 | 63843886052a5cc066e4c04056414372 | Task 1 |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | Task 2 |
| 251815090529619a99a2bf4013294414 | 95655319552a5c790b69a04054667879 | Task 3 |
@3: TEST FOR GET DEFINITION ACTIVITY /--------------------------------------------------------- Scenario Outline: Get the Definition of a Activity are exactly three activity
Scenario Outline: Get definition of activity Given I request "project/<project>/activity/<activity>?filter=definition"
Given I request "project/<project>/activity/<activity>?filter=definition"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the type is "object" And the type is "object"
@@ -45,47 +52,47 @@ Feature: Activity Resources
Examples: Examples:
| project | activity | | project | activity | tas_title |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | | 251815090529619a99a2bf4013294414 | 63843886052a5cc066e4c04056414372 | Task 1 |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | Task 2 |
| 251815090529619a99a2bf4013294414 | 95655319552a5c790b69a04054667879 | Task 3 |
@4: TEST FOR PUT DEFINITION ACTIVITY /--------------------------------------------------------- Scenario Outline: Update the Definition of a Activity and the check if the values had changed
Scenario Outline: Put property of activity Given PUT this data:
Given PUT this data:
""" """
{
"definition": {},
"properties":
{ {
"tas_title": "<tas_title>",
"definition": {}, "tas_description": "<tas_description>",
"properties": "tas_priority_variable": "<tas_priority_variable>",
{ "tas_derivation_screen_tpl": "<tas_derivation_screen_tpl>",
"tas_title": "<tas_title>", "tas_start": <tas_start>,
"tas_description": "<tas_description>", "tas_assign_type" : "<tas_assign_type>",
"tas_priority_variable": "@@VAR_PRIORITY", "tas_assign_variable": "<tas_assign_variable>",
"tas_derivation_screen_tpl": "template.html", "tas_group_variable": "<tas_group_variable>",
"tas_start": <tas_start>, "tas_selfservice_timeout": "<tas_selfservice_timeout>",
"tas_assign_type" : "<tas_assign_type>", "tas_selfservice_time": "<tas_selfservice_time>",
"tas_assign_variable": "@@USER_LOGGED", "tas_selfservice_time_unit" : "<tas_selfservice_time_unit>",
"tas_group_variable": "@@GROUP_UID", "tas_selfservice_trigger_uid" : "<tas_selfservice_trigger_uid>",
"tas_selfservice_timeout": "<tas_selfservice_timeout>", "tas_transfer_fly": <tas_transfer_fly>,
"tas_selfservice_time": "<tas_selfservice_time>", "tas_duration" : "<tas_duration>",
"tas_selfservice_time_unit" : "<tas_selfservice_time_unit>", "tas_timeunit" : "<tas_timeunit>",
"tas_selfservice_trigger_uid" : "3229227245298e1c5191f95009451434", "tas_type_day": "<tas_type_day>",
"tas_transfer_fly": <tas_transfer_fly>, "tas_calendar": "<tas_calendar>",
"tas_duration" : "<tas_duration>", "tas_type": "<tas_type>",
"tas_timeunit" : "<tas_timeunit>", "tas_def_title": "<tas_def_title>",
"tas_type_day": "<tas_type_day>", "tas_def_description": "<tas_def_description>",
"tas_calendar": "00000000000000000000000000000001", "tas_send_last_email": <tas_send_last_email>,
"tas_type": "<tas_type>", "tas_def_subject_message": "<tas_def_subject_message>",
"tas_def_title": "Case Title", "tas_def_message_type": "<tas_def_message_type>",
"tas_def_description": "Case Descripction", "tas_def_message": "<tas_def_message>",
"tas_send_last_email": <tas_send_last_email>, "tas_def_message_template": "<tas_def_message_template>"
"tas_def_subject_message": "<tas_def_subject_message>",
"tas_def_message_type": "template",
"tas_def_message": "<tas_def_message>",
"tas_def_message_template": "template.html"
}
} }
}
""" """
And I request "project/<project>/activity/<activity>" And I request "project/<project>/activity/<activity>"
Then the response status code should be 200 Then the response status code should be 200
@@ -96,8 +103,8 @@ Feature: Activity Resources
Examples: Examples:
| project | activity | tas_title | tas_description | tas_start | tas_assign_type | tas_selfservice_timeout | tas_selfservice_time | tas_selfservice_time_unit | tas_transfer_fly | tas_duration | tas_timeunit | tas_type_day | tas_type | tas_send_last_email | tas_def_subject_message | tas_def_message | | project | activity | tas_title | tas_description | tas_priority_variable | tas_derivation_screen_tpl | tas_start | tas_assign_type | tas_assign_variable| tas_group_variable | tas_selfservice_timeout | tas_selfservice_time | tas_selfservice_time_unit | tas_selfservice_trigger_uid | tas_transfer_fly | tas_duration | tas_timeunit | tas_type_day | tas_calendar | tas_type | tas_def_title | tas_def_description | tas_send_last_email | tas_def_subject_message | tas_def_message_type | tas_def_message | tas_def_message_template |
| 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | update activity | update description | true | BALANCED | 0 | 0 | DAYS | true | 4 | DAYS | 1 | NORMAL | true | Email desde tarea | Contenido del email | | 251815090529619a99a2bf4013294414 | 97192372152a5c78f04a794095806311 | update activity | update description | true | BALANCED | 0 | 0 | DAYS | true | 4 | DAYS | 1 | NORMAL | true | Email desde tarea | Contenido del email | | | | | | | | | | |
@5: TEST FOR GET ACTIVITY /----------------------------------------------------------------------- @5: TEST FOR GET ACTIVITY /-----------------------------------------------------------------------

View File

@@ -11,46 +11,46 @@ Feature: Project Properties -Adhoc Assignee Resources
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has <records> records And the response has <records> records
And the "aas_uid" property in row 0 equals "<aas_uid>" And the "ada_uid" property in row 0 equals "<ada_uid>"
And the "aas_type" property in row 0 equals "<aas_type>" And the "ada_type" property in row 0 equals "<ada_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | | test_description | project | activity | records | ada_uid | ada_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 82 | 35762872152cda4323207c6035916735 | group | | check if the list of possible users and groups to be assigned is correct | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 84 | 54731929352d56741de9d42002704749 | group |
Scenario Outline: Get a list of available adhoc users and groups to be assigned to an activity with filter Scenario Outline: Get a list of available adhoc users and groups to be assigned to an activity with filter
Given I request "project/<project>/activity/<activity>/adhoc-available-assignee?filter=<filter>&start=<start>&limit=<limit>" Given I request "project/<project>/activity/<activity>/adhoc-available-assignee?filter=<filter>&start=<start>&limit=<limit>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has <records> records And the response has <records> records
And the "aas_uid" property in row 0 equals "<aas_uid>" And the "ada_uid" property in row 0 equals "<ada_uid>"
And the "aas_type" property in row 0 equals "<aas_type>" And the "ada_type" property in row 0 equals "<ada_type>"
Examples: Examples:
| project | activity | filter | start | limit | records | aas_uid | aas_type | | test_description | project | activity | filter | start | limit | records | ada_uid | ada_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | departa | 0 | 50 | 3 | 90268877852b7b4b9f134b1096735994 | group | | Using filter get available users that match with "fin" | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | fin | 0 | 50 | 2 | 66623507552d56742865613066097298 | group |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | departa | 0 | 1 | 1 | 90268877852b7b4b9f134b1096735994 | group | | Using filter get 1 available user that match with "fin" | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | fin | 0 | 1 | 1 | 66623507552d56742865613066097298 | group |
Scenario Outline: Assign a adhoc user or group to an activity Scenario Outline: Assign a adhoc user or group to an activity
Given POST this data: Given POST this data:
""" """
{ {
"aas_uid": "<aas_uid>", "ada_uid": "<ada_uid>",
"aas_type": "<aas_type>" "ada_type": "<ada_type>"
} }
""" """
And I request "project/<project>/activity/<activity>/adhoc-assignee" And I request "project/<project>/activity/<activity>/adhoc-assignee"
Then the response status code should be 201 Then the response status code should be 201
And the type is "object" And the type is "object"
Examples: Examples:
| project | activity | aas_uid | aas_type | | test_description | project | activity | ada_uid | ada_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 84643774552cda42dabb732033709262 | user | | assign a user to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 95888918452cda41a2b5d11013819411 | user | | assign a user to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 25286582752d56713231082039265791 | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 16698718252cda431814024050455569 | group | | assign a group to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 54731929352d56741de9d42002704749 | group |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 90706007452cda42ed1c326093152317 | group | | assign a group to the second task | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 36775342552d5674146d9c2078497230 | group |
@@ -61,13 +61,13 @@ Scenario Outline: Get a list of available adhoc users and groups to be assigned
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has <records> records And the response has <records> records
And the "aas_uid" property in row 0 equals "<aas_uid>" And the "ada_uid" property in row 0 equals "<ada_uid>"
And the "aas_type" property in row 0 equals "<aas_type>" And the "ada_type" property in row 0 equals "<ada_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | | test_description | project | activity | records | ada_uid | ada_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 7 | 10732248352cda434c43997043577116 | group | | Verify that the activity has expected quantity of asignees | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 5 | 54731929352d56741de9d42002704749 | group |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 5 | 90706007452cda42ed1c326093152317 | group | | Verify that the activity has expected quantity of asignees | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 1 | 36775342552d5674146d9c2078497230 | group |
Scenario Outline: After assignation - List adhoc assignees of an activity with filter Scenario Outline: After assignation - List adhoc assignees of an activity with filter
@@ -77,41 +77,41 @@ Scenario Outline: Get a list of available adhoc users and groups to be assigned
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has 1 record And the response has 1 record
And the "aas_uid" property in row 0 equals "<aas_uid>" And the "ada_uid" property in row 0 equals "<ada_uid>"
And the "aas_type" property in row 0 equals "<aas_type>" And the "ada_type" property in row 0 equals "<ada_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | filter | | test_description | project | activity | records | ada_uid | ada_type | filter |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 1 | 84643774552cda42dabb732033709262 | user | emi | | Filtered list should return 1 record | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 1 | 73005191052d56727901138030694610 | user | oli |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 1 | 90706007452cda42ed1c326093152317 | group | dep | | Filtered list should return 1 record | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 1 | 36775342552d5674146d9c2078497230 | group | emp |
Scenario Outline: Get a single adhoc user or group of an activity Scenario Outline: Get a single adhoc user or group of an activity
Given I request "project/<project>/activity/<activity>/adhoc-assignee/<aas_uid>" Given I request "project/<project>/activity/<activity>/adhoc-assignee/<ada_uid>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "object" And the type is "object"
And the "aas_uid" property equals "<aas_uid>" And the "ada_uid" property equals "<ada_uid>"
And the "aas_name" property equals "<aas_name>" And the "ada_name" property equals "<ada_name>"
And the "aas_lastname" property equals "<aas_lastname>" And the "ada_lastname" property equals "<ada_lastname>"
And the "aas_username" property equals "<aas_username>" And the "ada_username" property equals "<ada_username>"
And the "aas_type" property equals "user" And the "ada_type" property equals "user"
Examples: Examples:
| project | activity | aas_uid | aas_type | aas_name | aas_lastname | aas_username | | test_description | project | activity | ada_uid | ada_type | ada_name | ada_lastname | ada_username |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 95888918452cda41a2b5d11013819411 | user | Mike | Balisi | mike | | Obtain details of user assigend to an activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 | user | Olivia | Austin | olivia |
Scenario Outline: Remove adhoc assignee from an activity Scenario Outline: Remove adhoc assignee from an activity
Given that I want to delete a resource with the key "aas_uid" stored in session array Given that I want to delete a resource with the key "ada_uid" stored in session array
And I request "project/<project>/activity/<activity>/adhoc-assignee/<aas_uid>" And I request "project/<project>/activity/<activity>/adhoc-assignee/<ada_uid>"
Then the response status code should be 200 Then the response status code should be 200
Examples: Examples:
| project | activity | aas_uid | | test_description | project | activity | ada_uid |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 84643774552cda42dabb732033709262 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 95888918452cda41a2b5d11013819411 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 25286582752d56713231082039265791 |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 16698718252cda431814024050455569 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 54731929352d56741de9d42002704749 |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 90706007452cda42ed1c326093152317 | | Remove a user from activity | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 36775342552d5674146d9c2078497230 |
Scenario: List assignees of an activity Scenario: List assignees of an activity
Given I request "project/4224292655297723eb98691001100052/activity/65496814252977243d57684076211485/adhoc-assignee" Given I request "project/4224292655297723eb98691001100052/activity/65496814252977243d57684076211485/adhoc-assignee"
@@ -119,44 +119,8 @@ Scenario Outline: Get a list of available adhoc users and groups to be assigned
And the response charset is "UTF-8" And the response charset is "UTF-8"
And the content type is "application/json" And the content type is "application/json"
And the type is "array" And the type is "array"
And the response has 4 records And the response has 2 records
Scenario Outline: List assignees of an activity with bad parameters
Given I request "project/<project>/activity/<activity>/adhoc-assignee"
Then the response status code should be 400
Examples:
| project | activity |
| 4224292655297723eb98691001100052 | 1234556 |
| 122134324 | 65496814252977243d57684076211485 |
| 345345345 | 345345345 |
| | |
Scenario Outline: Assign a user or group to an activity (Field validation)
Given POST this data:
"""
{
"ass_uid": "<aas_uid>",
"ass_type": "<aas_type>"
}
"""
And I request "project/<project>/activity/<activity>/adhoc-assignee"
Then the response status code should be 400
And the type is "object"
# Asignando un user vacio
# Asignando un user inexistente
# Asignando un usuario como grupo
# Asignando un usuario con type inexistente
Examples:
| project | activity | aas_uid | aas_type |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | | |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | !@#$%^&*()_+=-[]{};:~, | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 15746307552d00a66624889076110382 | group |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | department |

View File

@@ -0,0 +1,39 @@
@ProcessMakerMichelangelo @RestAPI @adhoc-assignee @negative
Feature: Project Properties -Adhoc Assignee Resources - Negative tests
Background:
Given that I have a valid access_token
Scenario Outline: List assignees of an activity with bad parameters
Given I request "project/<project>/activity/<activity>/adhoc-assignee"
Then the response status code should be 400
Examples:
| test_description | project | activity |
| Use an invalid project ID and empty activity | 4224292655297723eb98691001100052 | 1234556 |
| Use an invalid project ID | 122134324 | 65496814252977243d57684076211485 |
| Use an invalid activity ID | 345345345 | 345345345 |
Scenario Outline: Assign a user or group to an activity (Field validation)
Given POST this data:
"""
{
"ass_uid": "<aas_uid>",
"ass_type": "<aas_type>"
}
"""
And I request "project/<project>/activity/<activity>/adhoc-assignee"
Then the response status code should be 400
And the type is "object"
Examples:
| test_description | project | activity | aas_uid | aas_type |
| Asignando un user inexistente | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | | |
| Asignando un usuario Con tipo inexistente | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | !@#$%^&*()_+=-[]{};:~, | user |
| Asignando un usuario como grupo | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 15746307552d00a66624889076110382 | group |
| Asignando un usuario con type inexistente | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | department |

View File

@@ -15,10 +15,10 @@ Feature: Project Properties - Assignee Resources
And the "aas_type" property in row 0 equals "<aas_type>" And the "aas_type" property in row 0 equals "<aas_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | | test_description | project | activity | records | aas_uid | aas_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 82 | 35762872152cda4323207c6035916735 | group | | check if the list of possible users and groups to be assigned is correct | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 82 | 54731929352d56741de9d42002704749 | group |
Scenario Outline: Get a list of available users and groups to be assigned to an activity with filter Scenario Outline: Get a list of available users and groups to be assigned to an activity using filter
Given I request "project/<project>/activity/<activity>/available-assignee?filter=<filter>&start=<start>&limit=<limit>" Given I request "project/<project>/activity/<activity>/available-assignee?filter=<filter>&start=<start>&limit=<limit>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
@@ -29,33 +29,33 @@ Scenario Outline: Get a list of available users and groups to be assigned to an
And the "aas_type" property in row 0 equals "<aas_type>" And the "aas_type" property in row 0 equals "<aas_type>"
Examples: Examples:
| project | activity | filter | start | limit | records | aas_uid | aas_type| | test_description | project | activity | filter | start | limit | records | aas_uid | aas_type|
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | departa | 0 | 50 | 3 | 90268877852b7b4b9f134b1096735994 | group | | Using filter get available users that match with "fin" | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | fin | 0 | 50 | 2 | 66623507552d56742865613066097298 | group |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | departa | 0 | 1 | 1 | 90268877852b7b4b9f134b1096735994 | group | | Using filter get 1 available user that match with "fin" | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | fin | 0 | 1 | 1 | 66623507552d56742865613066097298 | group |
Scenario Outline: Assign a user or group to an activity Scenario Outline: Assign 2 users and 2 group to an activity
Given POST this data: Given POST this data:
""" """
{ {
"aas_uid": "<aas_uid>", "aas_uid": "<aas_uid>",
"aas_type": "<aas_type>" "aas_type": "<aas_type>"
} }
""" """
And I request "project/<project>/activity/<activity>/assignee" And I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 201 Then the response status code should be 201
And the type is "object" And the type is "object"
Examples: Examples:
| project | activity | aas_uid | aas_type | | test_description | project | activity | aas_uid | aas_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 66386662252cda3f9a63226052377198 | user | | assign a user to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | user | | assign a user to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 25286582752d56713231082039265791 | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 35762872152cda4323207c6035916735 | group | | assign a group to the first task | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 54731929352d56741de9d42002704749 | group |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 90706007452cda42ed1c326093152317 | group | | assign a group to the second task | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 36775342552d5674146d9c2078497230 | group |
Scenario Outline: After assignation - List assignees of an activity Scenario Outline: After assignation - List assignees of each activity
Given I request "project/<project>/activity/<activity>/assignee" Given I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
@@ -66,12 +66,12 @@ Scenario Outline: Get a list of available users and groups to be assigned to an
And the "aas_type" property in row 0 equals "<aas_type>" And the "aas_type" property in row 0 equals "<aas_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | | test_description | project | activity | records | aas_uid | aas_type |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 7 | 135762872152cda4323207c6035916735 | group | | Verify that the activity has expected quantity of asignees | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 7 | 54731929352d56741de9d42002704749 | group |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 5 | 90706007452cda42ed1c326093152317 | group | | Verify that the activity has expected quantity of asignees | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 5 | 36775342552d5674146d9c2078497230 | group |
Scenario Outline: List assignees of an activity with filter Scenario Outline: List assignees of an activity using a filter
Given I request "project/<project>/activity/<activity>/assignee?filter=<filter>" Given I request "project/<project>/activity/<activity>/assignee?filter=<filter>"
Then the response status code should be 200 Then the response status code should be 200
And the response charset is "UTF-8" And the response charset is "UTF-8"
@@ -82,9 +82,9 @@ Scenario Outline: List assignees of an activity with filter
And the "aas_type" property in row 0 equals "<aas_type>" And the "aas_type" property in row 0 equals "<aas_type>"
Examples: Examples:
| project | activity | records | aas_uid | aas_type | filter | | test_description | project | activity | records | aas_uid | aas_type | filter |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 1 | 69191356252cda41acde328048794164 | user | oli | | Filtered list should return 1 record | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 1 | 73005191052d56727901138030694610 | user | oli |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 1 | 90706007452cda42ed1c326093152317 | group | dep | | Filtered list should return 1 record | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 1 | 36775342552d5674146d9c2078497230 | group | emp |
Scenario Outline: Get a single user or group of an activity Scenario Outline: Get a single user or group of an activity
Given I request "project/<project>/activity/<activity>/assignee/<aas_uid>" Given I request "project/<project>/activity/<activity>/assignee/<aas_uid>"
@@ -99,8 +99,8 @@ Scenario Outline: List assignees of an activity with filter
And the "aas_type" property equals "<aas_type>" And the "aas_type" property equals "<aas_type>"
Examples: Examples:
| project | activity | aas_uid | aas_type | aas_name | aas_lastname | aas_username | | test_description | project | activity | aas_uid | aas_type | aas_name | aas_lastname | aas_username |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | user | Olivia | Austin | olivia | | Obtain details of user assigend to an activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 | user | Olivia | Austin | olivia |
Scenario Outline: Remove assignee from an activity Scenario Outline: Remove assignee from an activity
Given that I want to delete a resource with the key "aas_uid" stored in session array Given that I want to delete a resource with the key "aas_uid" stored in session array
@@ -108,11 +108,11 @@ Scenario Outline: List assignees of an activity with filter
Then the response status code should be 200 Then the response status code should be 200
Examples: Examples:
| project | activity | aas_uid | | test_description | project | activity | aas_uid |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 66386662252cda3f9a63226052377198 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 73005191052d56727901138030694610 |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 25286582752d56713231082039265791 |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 35762872152cda4323207c6035916735 | | Remove a user from activity | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 54731929352d56741de9d42002704749 |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 90706007452cda42ed1c326093152317 | | Remove a user from activity | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | 36775342552d5674146d9c2078497230 |
@@ -124,39 +124,3 @@ Scenario Outline: List assignees of an activity with filter
And the type is "array" And the type is "array"
And the response has 4 records And the response has 4 records
Scenario Outline: List assignees of an activity with bad parameters
Given I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 400
Examples:
| project | activity |
| 4224292655297723eb98691001100052 | 1234556 |
| 122134324 | 65496814252977243d57684076211485 |
| 345345345 | 345345345 |
| | |
Scenario Outline: Assign a user or group to an activity (Field validation)
Given POST this data:
"""
{
"ass_uid": "<aas_uid>",
"ass_type": "<aas_type>"
}
"""
And I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 400
And the type is "object"
# Asignando un user inexistente
# Asignando un usuario como grupo
# Asignando un usuario con type inexistente
Examples:
| project | activity | aas_uid | aas_type |
| 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | | |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | !@#$%^&*()_+=-[]{};:~, | user |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | group |
| 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | department |

View File

@@ -0,0 +1,39 @@
@ProcessMakerMichelangelo @RestAPI @assignee @negative
Feature: Project Properties -Assignee Resources - Negative tests
Background:
Given that I have a valid access_token
Scenario Outline: List assignees of an activity with bad parameters
Given I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 400
Examples:
| test_description | project | activity |
| Use an invalid project ID and empty activity | 4224292655297723eb98691001100052 | 1234556 |
| Use an invalid project ID | 122134324 | 65496814252977243d57684076211485 |
| Use an invalid activity ID | 345345345 | 345345345 |
Scenario Outline: Assign a user or group to an activity (Field validation)
Given POST this data:
"""
{
"ass_uid": "<aas_uid>",
"ass_type": "<aas_type>"
}
"""
And I request "project/<project>/activity/<activity>/assignee"
Then the response status code should be 400
And the type is "object"
Examples:
| test_description | project | activity | aas_uid | aas_type |
| Asignando un user inexistente | 4224292655297723eb98691001100052 | 68911670852a22d93c22c06005808422 | | |
| Asignando un usuario Con tipo inexistente | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | !@#$%^&*()_+=-[]{};:~, | user |
| Asignando un usuario como grupo | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | group |
| Asignando un usuario con type inexistente | 4224292655297723eb98691001100052 | 65496814252977243d57684076211485 | 69191356252cda41acde328048794164 | department |

View File

@@ -0,0 +1,143 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Testing triggers Main Tests
Requirements:
a workspace with the process 251815090529619a99a2bf4013294414 already loaded
the process name is "Test - Triggers"
there are two triggers in the process
Background:
Given that I have a valid access_token
Scenario: Get the Triggers List when there are exactly two triggers
Given I request "project/251815090529619a99a2bf4013294414/triggers"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 2 records
And the "tri_title" property in row 0 equals "For event: change description"
And the "tri_title" property in row 1 equals "para eventos"
Scenario: Get a single trigger of a project
the trigger is previously created
Given I request "project/251815090529619a99a2bf4013294414/trigger/65317729852cf0ce339bfa4020392914"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "object"
And the "tri_title" property equals "For event: change description"
And the "tri_description" property equals "Autogenerated For event: change description"
Scenario Outline: Create 3 new triggers
Given POST this data:
"""
{
"tri_title": "<tri_title>",
"tri_description": "<tri_description>",
"tri_type": "<tri_type>",
"tri_webbot": "<tri_webbot>",
"tri_param": "<tri_param>"
}
"""
And I request "project/<project>/trigger"
Then the response status code should be 201
And store "tri_uid" in session array as variable "tri_uid_<tri_number>"
Examples:
| test_description | project | tri_number | tri_title | tri_description |tri_type | tri_webbot | tri_param |
| Create trigger with title alphabetic and with webbot | 251815090529619a99a2bf4013294414 | 1 | nuevo trigger 1 | descripcion del primer trigger 1 |SCRIPT | @@user1 = @@USER_LOGGED; \n $x = rand(); | PRIVATE |
| Create trigger with title alphanumeric and with webbot | 251815090529619a99a2bf4013294414 | 2 | otro trigger 2 | descripcion del segundo trigger 2 |SCRIPT | //Trigger with comments | PRIVATE |
| Create trigger without webbot | 251815090529619a99a2bf4013294414 | 3 | otro trigger 3 | descripcion del tercer trigger 3 |SCRIPT | | PRIVATE |
| Create trigger without tri type | 251815090529619a99a2bf4013294414 | 4 | otro trigger 4 | descripcion del tercer trigger 4 | | | PRIVATE |
| Create trigger without tri param | 251815090529619a99a2bf4013294414 | 5 | otro trigger 5 | descripcion del tercer trigger 5 | | | |
Scenario: Get the Triggers List when there are 7 records
Given I request "project/251815090529619a99a2bf4013294414/triggers"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 7 records
Scenario Outline: Update the Triggers and then check if the values had changed
Given PUT this data:
"""
{
"tri_title": "<tri_title>",
tri_description": "<tri_description>",
"tri_type": "<tri_type>",
"tri_webbot": "<tri_webbot>",
"tri_param": "<tri_param>"
}
"""
And that I want to update a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| test_description | project | tri_number | tri_title | tri_description |tri_type | tri_webbot | tri_param |
| Update title | 251815090529619a99a2bf4013294414 | 1 | Update nuevo trigger 1 @#$%^&*½²³€¼½ | descripcion del primer trigger 1 |SCRIPT | @@user1 = @@USER_LOGGED; \n $x = rand(); | PRIVATE |
| Update Description | 251815090529619a99a2bf4013294414 | 2 | otro trigger 2 | Update descripcion del segundo trigger 2 @#$%^&*½²³€¼½ |SCRIPT | //Trigger with comments | PRIVATE |
| Update webbot | 251815090529619a99a2bf4013294414 | 3 | otro trigger 3 | descripcion del tercer trigger 3 |SCRIPT | //Trigger with comments update | PRIVATE |
Scenario Outline: Get a single triggers and check some properties
Given that I want to get a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
And that "tri_title" is set to "<tri_title>"
And that "tri_description" is set to "<tri_description>"
And that "tri_webbot" is set to "<tri_webbot>"
Examples:
| project | tri_number | tri_title | tri_description | tri_webbot |
| 251815090529619a99a2bf4013294414 | 1 | Update nuevo trigger 1 @#$%^&*½²³€¼½ | descripcion del primer trigger 1 | @@user1 = @@USER_LOGGED; \n $x = rand(); |
| 251815090529619a99a2bf4013294414 | 2 | otro trigger 2 | Update descripcion del segundo trigger 2 @#$%^&*½²³€¼½ | //Trigger with comments |
| 251815090529619a99a2bf4013294414 | 3 | otro trigger 3 | descripcion del tercer trigger 3 | //Trigger with comments update |
Scenario Outline: Delete all Triggers created previously in this script
Given that I want to delete a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | tri_number |
| 251815090529619a99a2bf4013294414 | 1 |
| 251815090529619a99a2bf4013294414 | 2 |
| 251815090529619a99a2bf4013294414 | 3 |
| 251815090529619a99a2bf4013294414 | 4 |
| 251815090529619a99a2bf4013294414 | 5 |
Scenario: Get the Triggers List when there are exactly two triggers
Given I request "project/251815090529619a99a2bf4013294414/triggers"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has 2 records
And the "tri_title" property in row 0 equals "For event: change description"
And the "tri_title" property in row 1 equals "para eventos"

View File

@@ -0,0 +1,28 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Triggers Negative Tests
Background:
Given that I have a valid access_token
Scenario Outline: Create a new Triggers for a project with bad parameters (negative tests)
Given POST this data:
"""
{
"tri_title": "<tri_title>",
"tri_description": "<tri_description>",
"tri_type": "<tri_type>",
"tri_webbot": "<tri_webbot>",
"tri_param": "<tri_param>"
}
"""
And I request "project/<project>/trigger"
Then the response status code should be <error_code>
And the response status message should have the following text "<error_message>"
Examples:
| test_description | project | tri_title | tri_description |tri_type | error_code | error_message |
| Invalid tri type | 251815090529619a99a2bf4013294414 | Trigger 5 | Trigger valores invalidos |Value12@#$| 400 | tri_type |
| Field required tri title | 251815090529619a99a2bf4013294414 | | Trigger con nombre en blanco |SCRIPT | 400 | tri_title |

View File

@@ -1,126 +0,0 @@
@ProcessMakerMichelangelo @RestAPI
Feature: Testing triggers
Background:
Given that I have a valid access_token
@1: TEST FOR POST TRIGGER /--------------------------------------------------------------------
Scenario Outline: Get a list of triggers of a project
Given I request "project/<prj_uid>/triggers"
Then the response status code should be 200
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "array"
And the response has <records> records
Examples:
| project | records |
| 251815090529619a99a2bf4013294414 | 0 |
@2: TEST FOR POST TRIGGER /--------------------------------------------------------------------
Scenario Outline: Create a trigger
Given POST this data:
"""
{
"tri_title": "<tri_title>",
"tri_description": "<tri_description>",
"tri_type": "<tri_type>",
"tri_webbot": "<tri_webbot>",
"tri_param": "PRIVATE"
}
"""
And I request "project/<project>/trigger"
Then the response status code should be 201
And store "tri_uid" in session array as variable "tri_uid_<tri_number>"
Examples:
| project | tri_number | tri_title | tri_description |tri_type | tri_webbot |
| 251815090529619a99a2bf4013294414 | 1 | nuevo trigger 2 | descripcion |SCRIPT | @@user1 = @@USER_LOGGED; \n $x = rand();|
| 251815090529619a99a2bf4013294414 | 2 | otro trigger 2 | descripcion de otro trigger |SCRIPT | //Trigger with comments |
@3: TEST FOR PUT TRIGGER /-----------------------------------------------------------------------
Scenario Outline: Update a trigger
Given PUT this data:
"""
{
"tri_title": "<tri_title>",
"tri_description": "<tri_description>"
}
"""
And that I want to update a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | tri_number | tri_title | tri_description |
| 251815090529619a99a2bf4013294414 | 1 | trigger editado 2 | descripcion editada |
| 251815090529619a99a2bf4013294414 | 2 | otro trigger editado 2 | descripcion de otro trigger editado |
@4: TEST FOR GET TRIGGER /-----------------------------------------------------------------------
Scenario Outline: Get a trigger
Given that I want to get a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
And that "tri_title" is set to "<tri_title>"
And that "tri_description" is set to "<tri_description>"
Examples:
| project | tri_number | tri_title | tri_description |
| 251815090529619a99a2bf4013294414 | 1 | trigger editado 2 | descripcion editada |
| 251815090529619a99a2bf4013294414 | 2 | otro trigger editado 2 | descripcion de otro trigger editado |
@5: TEST FOR DELETE TRIGGER /-----------------------------------------------------------------------
Scenario Outline: Get a trigger
Given that I want to delete a resource with the key "tri_uid" stored in session array as variable "tri_uid_<tri_number>"
And I request "project/<project>/trigger"
Then the response status code should be 200
And the response charset is "UTF-8"
And the type is "object"
Examples:
| project | tri_number |
| 251815090529619a99a2bf4013294414 | 1 |
| 251815090529619a99a2bf4013294414 | 2 |
@6: TEST FOR POST TRIGGER /--------------------------------------------------------------------
Scenario Outline: Create a trigger
Given POST this data:
"""
{
"tri_title": "<tri_title>",
"tri_description": "<tri_description>"
"tri_type": "<tri_type>",
"tri_webbot": "",
"tri_param": "PRIVATE"
}
"""
And I request "project/<project>/trigger"
Then the response status code should be 400
Examples:
| project | tri_title | tri_description |tri_type |
| 251815090529619a99a2bf4013294414 | Especial !@#$%^&*(){[/½‘€¤@ | Trigger con caracteres especiales |SCRIPT |
| 251815090529619a99a2bf4013294414 | | Trigger con nombre en blanco |SCRIPT |
| 251815090529619a99a2bf4013294414 | Trigger 3 | Descripcion con caracteres especiales !@#$%^&*(){[/½‘€¤@ |SCRIPT |
| 251815090529619a99a2bf4013294414 | Trigger 4 | descripcion |SCRI123%@$|

View File

@@ -52,6 +52,7 @@ class FeatureContext extends BehatContext
} }
// //
// Place your definition and hook methods here: // Place your definition and hook methods here:
// //

View File

@@ -1179,6 +1179,35 @@ class RestContext extends BehatContext
$this->_restObjectMethod = 'delete'; $this->_restObjectMethod = 'delete';
} }
/**
* @Given /^the response status message should have the following text "([^"]*)"$/
*/
public function theResponseStatusMessageShouldHaveTheFollowingText($arg1)
{
$message="";
if($bodyResponse=json_decode($this->_response->getBody(true))){
if(isset($bodyResponse->error->message)){
$message = $bodyResponse->error->message;
if (strpos($message,$arg1) === false) {
throw new \Exception("Error message text does not have: '" . $arg1 ."'' (actual: '$message')\n\n");
}
}else{
throw new \Exception('This is not a valid error response');
}
}else{
throw new \Exception('This is not a valid response');
}
}
} }