Arreglos en los features file manager y process permissions

This commit is contained in:
Wendy Nestor
2014-06-26 10:18:17 -04:00
parent d34273d72b
commit f884c82c30
2 changed files with 218 additions and 207 deletions

View File

@@ -1,219 +1,227 @@
@ProcessMakerMichelangelo @RestAPI @ProcessMakerMichelangelo @RestAPI
Feature: Files Manager Resources Main Tests Feature: Files Manager Resources Main Tests
Requirements: Requirements:
a workspace with the process 1265557095225ff5c688f46031700471 ("Test Michelangelo") already loaded a workspace with the process 1265557095225ff5c688f46031700471 ("Test Michelangelo") already loaded
there are two output documents in the process there are two output documents in the process
Background: Background:
Given that I have a valid access_token Given that I have a valid access_token
Scenario: Get a list of main process files manager Scenario: Get a list of main process files manager
Given I request "project/1265557095225ff5c688f46031700471/file-manager" Given I request "project/1265557095225ff5c688f46031700471/file-manager"
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 "name" property in row 0 equals "templates" And the "name" property in row 0 equals "templates"
And the "name" property in row 1 equals "public" And the "name" property in row 1 equals "public"
Scenario: Get a list public folder of process files manager Scenario: Get a list public folder of process files manager
Given I request "project/1265557095225ff5c688f46031700471/file-manager?path=public" Given I request "project/1265557095225ff5c688f46031700471/file-manager?path=public"
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 0 records And the response has 0 records
Scenario: Get a list templates folder of process files manager Scenario: Get a list templates folder of process files manager
Given I request "project/1265557095225ff5c688f46031700471/file-manager?path=templates" Given I request "project/1265557095225ff5c688f46031700471/file-manager?path=templates"
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 2 records And the response has 2 records
Scenario Outline: Create files and subfolders Scenario Outline: Create files and subfolders
Given POST this data: Given POST this data:
""" """
{ {
"prf_filename": "<prf_filename>", "prf_filename": "<prf_filename>",
"prf_path": "<prf_path>", "prf_path": "<prf_path>",
"prf_content": "<prf_content>" "prf_content": "<prf_content>"
} }
""" """
And I request "project/1265557095225ff5c688f46031700471/file-manager" And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be <http_code> Then the response status code should be <http_code>
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 "<type>" And the type is "<type>"
And store "prf_uid" in session array as variable "prf_uid_<prf_number>" And store "prf_uid" in session array as variable "prf_uid_<prf_number>"
Examples:
| test_description | prf_filename | prf_path | prf_content | http_code | type | prf_number |
| into public folder | file_test_1.txt | public/ | only text | 200 | object | 0 |
| into mailtemplates folder | file_test_2.html | templates/ | <h1>Test</h1><p>html test</p> | 200 | object | 1 |
| into public subfolder | file_test_3 | public/public_subfolder | test | 200 | object | 2 |
| into mailtemplates subfolder | file_test_4 | templates/templates_subfolder | test | 200 | object | 3 |
Scenario: Create files and subfolders with same name in path public
Given POST this data:
"""
{
"prf_filename": "file_test_1.txt",
"prf_path": "public/",
"prf_content": "only text"
}
"""
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be 400
And the response status message should have the following text "already exists"
Scenario: Create files and subfolders with same name in path templates
Given POST this data:
"""
{
"prf_filename": "file_test_2.html",
"prf_path": "templates/",
"prf_content": "<h1>Test</h1><p>html test</p>"
}
"""
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be 400
And the response status message should have the following text "already exists"
Scenario Outline: Update files by updating the content
Given PUT this data:
"""
{
"prf_content": "<prf_content>"
}
"""
And that I want to update a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be <http_code>
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "<type>"
Examples:
| test_description | prf_filename | prf_content | http_code | type | prf_number |
| put into public folder | file_test_1.txt | only text - modified | 200 | object | 0 |
| put into mailtemplates folder | file_test_2.html | <h1>Test</h1><p>html test</p><i>modified</i> | 200 | object | 1 |
| put into public subfolder | file_test_3 | put test | 200 | object | 2 |
| put into mailtemplates subfolder | file_test_4 | put test | 200 | object | 3 |
Scenario Outline: Get a single Files Manager and check some properties
Given that I want to get a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
Given I request "project/1265557095225ff5c688f46031700471/file-manager"
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 that "prf_filename" is set to "<prf_filename>"
And that "prf_path" is set to "<prf_path>"
And that "prf_content" is set to "<prf_content>"
Examples:
| test_description | prf_filename | prf_content | http_code | type | prf_number | row | prf_path |
| put into public folder | file_test_1.txt | only text - modified | 200 | object | 0 | 1 | public/ |
| put into mailtemplates folder | file_test_2.html | <h1>Test</h1><p>html test</p><i>modified</i> | 200 | object | 1 | 1 | templates/ |
| put into public subfolder | file_test_3 | put test | 200 | object | 2 | 0 | public/public_subfolder |
| put into mailtemplates subfolder | file_test_4 | put test | 200 | object | 3 | 0 | templates/templates_subfolder |
Scenario Outline: Upload files to same folders
Given POST I want to upload the file "<file>" to path "<prf_path>". Url "project/1265557095225ff5c688f46031700471/file-manager"
And store "prf_uid" in session array as variable "prf_uid_<prf_number>"
Examples:
| file | prf_path | prf_number |
|/home/wendy/uploadfiles/test1.html | templates | 4 |
|/home/wendy/uploadfiles/test2.html | templates | 5 |
|/home/wendy/uploadfiles/test.txt | public | 6 |
|/home/wendy/uploadfiles/TestQA.html| templates | 7 |
Scenario Outline: Verify if TestQA was overwrited
Given that I want to get a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
Given I request "project/1265557095225ff5c688f46031700471/file-manager"
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 that "prf_filename" is set to "<prf_filename>"
And that "prf_content" is set to "<prf_content>"
Examples: Examples:
| prf_ filename | prf_content | prf_number | | test_description | prf_filename | prf_path | prf_content | http_code | type | prf_number |
| TestQA.html | Test QA - cuando se realiza la sobreescritura desde upload | 7 | | into public folder | file_test_1.txt | public/ | only text | 200 | object | 0 |
| into mailtemplates folder | file_test_2.html | templates/ | <h1>Test</h1><p>html test</p> | 200 | object | 1 |
| into public subfolder | file_test_3 | public/public_subfolder | test | 200 | object | 2 |
| into mailtemplates subfolder | file_test_4 | templates/templates_subfolder | test | 200 | object | 3 |
Scenario: Create files and subfolders with same name in path public
Given POST this data:
"""
{
"prf_filename": "file_test_1.txt",
"prf_path": "public/",
"prf_content": "only text"
}
"""
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be 400
And the response status message should have the following text "already exists"
Scenario: Create files and subfolders with same name in path templates
Given POST this data:
"""
{
"prf_filename": "file_test_2.html",
"prf_path": "templates/",
"prf_content": "<h1>Test</h1><p>html test</p>"
}
"""
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be 400
And the response status message should have the following text "already exists"
Scenario Outline: Update files by updating the content
Given PUT this data:
"""
{
"prf_content": "<prf_content>"
}
"""
And that I want to update a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
And I request "project/1265557095225ff5c688f46031700471/file-manager"
Then the response status code should be <http_code>
And the response charset is "UTF-8"
And the content type is "application/json"
And the type is "<type>"
Examples:
| test_description | prf_filename | prf_content | http_code | type | prf_number |
| put into public folder | file_test_1.txt | only text - modified | 200 | object | 0 |
| put into mailtemplates folder | file_test_2.html | <h1>Test</h1><p>html test</p><i>modified</i> | 200 | object | 1 |
| put into public subfolder | file_test_3 | put test | 200 | object | 2 |
| put into mailtemplates subfolder | file_test_4 | put test | 200 | object | 3 |
Scenario Outline: Get a single Files Manager and check some properties
Given that I want to get a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
Given I request "project/1265557095225ff5c688f46031700471/file-manager"
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 that "prf_filename" is set to "<prf_filename>"
And that "prf_path" is set to "<prf_path>"
And that "prf_content" is set to "<prf_content>"
Examples:
| test_description | prf_filename | prf_content | http_code | type | prf_number | row | prf_path |
| put into public folder | file_test_1.txt | only text - modified | 200 | object | 0 | 1 | public/ |
| put into mailtemplates folder | file_test_2.html | <h1>Test</h1><p>html test</p><i>modified</i> | 200 | object | 1 | 1 | templates/ |
| put into public subfolder | file_test_3 | put test | 200 | object | 2 | 0 | public/public_subfolder |
| put into mailtemplates subfolder | file_test_4 | put test | 200 | object | 3 | 0 | templates/templates_subfolder |
Scenario Outline: Upload files to same folders
Given POST I want to upload the file "<file>" to path "<prf_path>". Url "project/1265557095225ff5c688f46031700471/file-manager"
And store "prf_uid" in session array as variable "prf_uid_<prf_number>"
Examples:
| file | prf_path | prf_number |
|/home/wendy/uploadfiles/test1.html | templates | 4 |
|/home/wendy/uploadfiles/test2.html | templates | 5 |
|/home/wendy/uploadfiles/test.txt | public | 6 |
|/home/wendy/uploadfiles/TestQA.html| templates | 7 |
Scenario Outline: Verify if TestQA was overwrited
Given that I want to get a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
Given I request "project/1265557095225ff5c688f46031700471/file-manager"
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 that "prf_filename" is set to "<prf_filename>"
And that "prf_content" is set to "<prf_content>"
Examples:
| prf_ filename | prf_content | prf_number |
| TestQA.html | Test QA - cuando se realiza la sobreescritura desde upload | 7 |
Scenario Outline: Update the overwritten file to return to their original values Scenario Outline: Update the overwritten file to return to their original values
Given PUT this data: Given PUT this data:
""" """
{ {
"prf_content": "Test QA" "prf_content": "Test QA"
} }
""" """
And that I want to update a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>" And that I want to update a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
And I request "project/1265557095225ff5c688f46031700471/file-manager" And I request "project/1265557095225ff5c688f46031700471/file-manager"
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 that "prf_filename" is set to "TestQA.html" And that "prf_filename" is set to "TestQA.html"
And that "prf_content" is set to "Test QA" And that "prf_content" is set to "Test QA"
Examples: Examples:
| prf_ filename | prf_content | prf_number | | prf_ filename | prf_content | prf_number |
| TestQA.html | Test QA - cuando se realiza la sobreescritura desde upload | 7 | | TestQA.html | Test QA - cuando se realiza la sobreescritura desde upload | 7 |
Scenario Outline: Download files Scenario Outline: Download files
Given I request "project/1265557095225ff5c688f46031700471/file-manager/prf_uid/download" with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>" Given I request "project/1265557095225ff5c688f46031700471/file-manager/prf_uid/download" with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
Then the response status code should be 200 Then the response status code should be 200
Examples: Examples:
| test_description | prf_number | | test_description | prf_number |
| Download file | 0 | | Download file | 0 |
| Download file | 1 | | Download file | 1 |
| Download file | 2 | | Download file | 2 |
| Download file | 4 | | Download file | 4 |
Scenario Outline: Delete file Scenario Outline: Delete file
Given that I want to delete a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>" Given that I want to delete a resource with the key "prf_uid" stored in session array as variable "prf_uid_<prf_number>"
And I request "project/1265557095225ff5c688f46031700471/file-manager" And I request "project/1265557095225ff5c688f46031700471/file-manager"
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:
| test_description | prf_number | | test_description | prf_number |
| delete public folder | 0 | | delete public folder | 0 |
| delete mailtemplates folder | 1 | | delete mailtemplates folder | 1 |
| delete public subfolder | 2 | | delete public subfolder | 2 |
| delete mailtemplates subfolder | 3 | | delete mailtemplates subfolder | 3 |
| delete mailtemplates subfolder | 4 | | delete mailtemplates subfolder | 4 |
| delete mailtemplates subfolder | 5 | | delete mailtemplates subfolder | 5 |
| delete mailtemplates subfolder | 6 | | delete mailtemplates subfolder | 6 |
Scenario Outline: Delete folder Scenario Outline: Delete folder
Given that I want to delete the folder Given that I want to delete the folder
And I request "project/1265557095225ff5c688f46031700471/file-manager/folder?path=<prf_path>" And I request "project/1265557095225ff5c688f46031700471/file-manager/folder?path=<prf_path>"
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:
| test_description | prf_path | | test_description | prf_path |
| delete public sub folder | templates/templates_subfolder | | delete public sub folder | templates/templates_subfolder |
| delete templates sub folder | public/public_subfolder | | delete templates sub folder | public/public_subfolder |
#BUG 15207, The "Upload" accepts files with other extensions
#
#Scenario Outline: Upload files to same folders "Project - Process Complete BPMN"
# Given POST I want to upload the file "<file>" to path "<prf_path>". Url "project/1455892245368ebeb11c1a5001393784/file-manager"
# And store "prf_uid" in session array as variable "prf_uid_<prf_number>"
# And the response status message should have the following text "incorrect extension"
#
# Examples:
# | file | prf_path | prf_number |
# |/home/wendy/uploadfiles/SnagIt823.exe | templates | 1 |

View File

@@ -249,22 +249,22 @@ Feature: Process Permissions Resources Tests
And the response has 1 record And the response has 1 record
Scenario Outline: Create a new Process permission in proyect "Process Complete BPMN" Scenario Outline: Create a new Process permission in proyect "Process Complete BPMN"
Given POST this data: Given POST this data:
""" """
{ {
"op_case_status": "<op_case_status>", "op_case_status": "<op_case_status>",
"tas_uid": "<tas_uid>", "tas_uid": "<tas_uid>",
"op_user_relation": "<op_user_relation>", "op_user_relation": "<op_user_relation>",
"usr_uid": "<usr_uid>", "usr_uid": "<usr_uid>",
"op_task_source" : "<op_task_source>", "op_task_source" : "<op_task_source>",
"op_participate": "<op_participate>", "op_participate": "<op_participate>",
"op_obj_type": "<op_obj_type>", "op_obj_type": "<op_obj_type>",
"dynaforms" : "<dynaforms>", "dynaforms" : "<dynaforms>",
"inputs" : "<inputs>", "inputs" : "<inputs>",
"outputs" : "<outputs>", "outputs" : "<outputs>",
"op_action": "<op_action>" "op_action": "<op_action>"
} }
""" """
And I request "project/1455892245368ebeb11c1a5001393784/process-permission" And I request "project/1455892245368ebeb11c1a5001393784/process-permission"
Then the response status code should be 201 Then the response status code should be 201
And store "op_uid" in session array And store "op_uid" in session array
@@ -276,15 +276,17 @@ Scenario Outline: Create a new Process permission in proyect "Process Complete B
| op_number | op_case_status | tas_uid | op_user_relation| usr_uid | op_task_source | op_participate | op_obj_type | dynaforms | inputs | outputs | op_action | | op_number | op_case_status | tas_uid | op_user_relation| usr_uid | op_task_source | op_participate | op_obj_type | dynaforms | inputs | outputs | op_action |
| 1 | COMPLETED | | 1 | 00000000000000000000000000000001 | | 0 | MSGS_HISTORY | | | | RESEND | | 1 | COMPLETED | | 1 | 00000000000000000000000000000001 | | 0 | MSGS_HISTORY | | | | RESEND |
| 2 | COMPLETED | | 1 | 00000000000000000000000000000001 | | 0 | MSGS_HISTORY | | | | RESEND |
Scenario: Get a List of current Process Permissions of a project
Given I request "project/1455892245368ebeb11c1a5001393784/process-permissions" Scenario: Get a List of current Process Permissions of a project
Given I request "project/1455892245368ebeb11c1a5001393784/process-permissions"
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 response has 2 record And the response has 3 record
Scenario Outline: Delete all Process Supervisor created previously in this script Scenario Outline: Delete all Process Supervisor created previously in this script
Given that I want to delete a resource with the key "op_uid" stored in session array as variable "op_uid_<op_number>" Given that I want to delete a resource with the key "op_uid" stored in session array as variable "op_uid_<op_number>"
And I request "project/1455892245368ebeb11c1a5001393784/process-permission" And I request "project/1455892245368ebeb11c1a5001393784/process-permission"
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
@@ -293,11 +295,12 @@ Scenario Outline: Delete all Process Supervisor created previously in this scrip
Examples: Examples:
| op_number | | op_number |
| 1 | | 1 |
| 2 |
Scenario: Get a List of current Process Permissions of a project Scenario: Get a List of current Process Permissions of a project
Given I request "project/1455892245368ebeb11c1a5001393784/process-permissions" Given I request "project/1455892245368ebeb11c1a5001393784/process-permissions"
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 response has 1 record And the response has 1 record