Initial QSfera import
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
Feature: filter activity for user
|
||||
As a user
|
||||
I want to filter activity
|
||||
So that I can view activity of specific user
|
||||
|
||||
@smoke
|
||||
Scenario: filter synced activities
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Brian" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Brian" has created folder "brian-folder" in the server
|
||||
And the user has set up the following accounts with default settings:
|
||||
| users |
|
||||
| Alice |
|
||||
| Brian |
|
||||
When the user opens the activity tab
|
||||
And the user selects "Local Activity" tab in the activity
|
||||
And the user checks the activities of account "Alice Hansen@%local_server_hostname%"
|
||||
Then the following activities should be displayed in synced table
|
||||
| resource | action | account |
|
||||
| simple-folder | Downloaded | Alice Hansen@%local_server_hostname% |
|
||||
But the following activities should not be displayed in synced table
|
||||
| resource | action | account |
|
||||
| brian-folder | Downloaded | Brian Murphy@%local_server_hostname% |
|
||||
|
||||
@skipOnWindows
|
||||
Scenario: filter not synced activities (Linux only)
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has set up a client with default settings
|
||||
And user "Alice" has created a folder "Folder1" inside the sync folder
|
||||
When user "Alice" creates the following files inside the sync folder:
|
||||
| files |
|
||||
| /.htaccess |
|
||||
| /Folder1/a\\a.txt |
|
||||
And the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the file "Folder1/a\\a.txt" should be blacklisted
|
||||
And the file ".htaccess" should be excluded
|
||||
When the user unchecks the "Excluded" filter
|
||||
Then the following activities should be displayed in not synced table
|
||||
| resource | status | account |
|
||||
| Folder1/a\\a.txt | Blacklisted | Alice Hansen@%local_server_hostname% |
|
||||
|
||||
@skipOnLinux
|
||||
Scenario: filter not synced activities (Windows only)
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates the following files inside the sync folder:
|
||||
| files |
|
||||
| /.htaccess |
|
||||
And the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the file ".htaccess" should be excluded
|
||||
When the user unchecks the "Excluded" filter
|
||||
Then the following activities should not be displayed in not synced table
|
||||
| resource | status | account |
|
||||
| .htaccess | Excluded | Alice Hansen@%local_server_hostname% |
|
||||
@@ -0,0 +1,91 @@
|
||||
Feature: adding accounts
|
||||
As a user
|
||||
I want to be able join multiple QSfera servers to the client
|
||||
So that I can sync data with various organisations
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
|
||||
|
||||
Scenario: Check default options in advanced configuration
|
||||
Given the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user opens the advanced configuration
|
||||
Then the download everything option should be selected by default for Linux
|
||||
And the user should be able to choose the local download directory
|
||||
|
||||
@smoke
|
||||
Scenario: Adding normal Account
|
||||
Given the user has started the client
|
||||
When the user adds the following account:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
Then "Alice" account should be added
|
||||
|
||||
@smoke
|
||||
Scenario: Adding multiple accounts
|
||||
Given user "Brian" has been created in the server with default attributes
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user opens the add-account dialog
|
||||
And the user adds the following account:
|
||||
| server | %local_server% |
|
||||
| user | Brian |
|
||||
| password | AaBb2Cc3Dd4 |
|
||||
Then "Brian" account should be opened
|
||||
And "Alice" account should be added
|
||||
|
||||
|
||||
Scenario: Adding account with self signed certificate for the first time
|
||||
Given the user has started the client
|
||||
When the user adds the server "%local_server%"
|
||||
And the user accepts the certificate
|
||||
Then credentials wizard should be visible
|
||||
When the user adds the following account:
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
Then "Alice" account should be opened
|
||||
|
||||
@smoke
|
||||
Scenario: Add space manually from sync connection window
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user syncs the "Personal" space
|
||||
Then the folder "simple-folder" should exist on the file system
|
||||
|
||||
|
||||
Scenario: Check for suffix when sync path exists
|
||||
Given the user has created folder "QSfera" in the default home path
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
When the user adds the following user credentials:
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
And the user opens the advanced configuration
|
||||
Then the default local sync path should contain "%home%/QSfera (2)" in the configuration wizard
|
||||
When the user selects download everything option in advanced section
|
||||
Then the button to open sync connection wizard should be disabled
|
||||
|
||||
@smoke
|
||||
Scenario: Re-add an account
|
||||
Given user "Alice" has created folder "large-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "testFile.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
And the user has removed the connection for user "Alice"
|
||||
When the user opens the add-account dialog
|
||||
And the user adds the following account:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
Then "Alice" account should be added
|
||||
And the folder "large-folder" should exist on the file system
|
||||
And the file "testFile.txt" should exist on the file system
|
||||
@@ -0,0 +1,80 @@
|
||||
Feature: deleting files and folders
|
||||
As a user
|
||||
I want to delete files and folders
|
||||
So that I can keep my filing system clean and tidy
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
|
||||
@issue-9439 @smoke
|
||||
Scenario Outline: Delete a file
|
||||
Given user "Alice" has uploaded file with content "openCloud test text file 0" to "<fileName>" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user deletes the file "<fileName>"
|
||||
And the user waits for file "<fileName>" to be synced
|
||||
Then as "Alice" file "<fileName>" should not exist in the server
|
||||
Examples:
|
||||
| fileName |
|
||||
| textfile0.txt |
|
||||
| textfile0-with-name-more-than-20-characters |
|
||||
| ~`!@#$^&()-_=+{[}];',textfile.txt |
|
||||
|
||||
@issue-9439 @smoke
|
||||
Scenario Outline: Delete a folder
|
||||
Given user "Alice" has created folder "<folderName>" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user deletes the folder "<folderName>"
|
||||
And the user waits for folder "<folderName>" to be synced
|
||||
Then as "Alice" file "<folderName>" should not exist in the server
|
||||
Examples:
|
||||
| folderName |
|
||||
| simple-empty-folder |
|
||||
| simple-folder-with-name-more-than-20-characters |
|
||||
|
||||
@smoke
|
||||
Scenario: Delete a file and a folder
|
||||
Given user "Alice" has uploaded file with content "test file 1" to "textfile1.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test file 2" to "textfile2.txt" in the server
|
||||
And user "Alice" has created folder "test-folder1" in the server
|
||||
And user "Alice" has created folder "test-folder2" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user deletes the file "textfile1.txt"
|
||||
And the user deletes the folder "test-folder1"
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" file "textfile1.txt" should not exist in the server
|
||||
And as "Alice" folder "test-folder1" should not exist in the server
|
||||
And as "Alice" file "textfile2.txt" should exist in the server
|
||||
And as "Alice" folder "test-folder2" should exist in the server
|
||||
|
||||
|
||||
Scenario: Delete multiple files
|
||||
Given user "Alice" has uploaded the following files to the server
|
||||
| file | content |
|
||||
| textfile0.txt | openCloud test text file 0 |
|
||||
| textfile1.txt | openCloud test text file 1 |
|
||||
| textfile2.txt | openCloud test text file 2 |
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user deletes the following files
|
||||
| file |
|
||||
| textfile0.txt |
|
||||
| textfile1.txt |
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" following files should not exist in the server
|
||||
| file |
|
||||
| textfile0.txt |
|
||||
| textfile1.txt |
|
||||
And as "Alice" file "textfile2.txt" should exist in the server
|
||||
|
||||
|
||||
Scenario Outline: Create and delete a file with special characters
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "<fileName>" with the following content inside the sync folder
|
||||
"""
|
||||
special characters
|
||||
"""
|
||||
And the user deletes the file "<fileName>"
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" file "<fileName>" should not exist in the server
|
||||
Examples:
|
||||
| fileName |
|
||||
| ~`!@#$^&()-_=+{[}];',$%ñ&💥🫨❤️🔥.txt |
|
||||
@@ -0,0 +1,44 @@
|
||||
Feature: edit files
|
||||
As a user
|
||||
I want to be able to edit the file content
|
||||
So that I can modify and change file data
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
|
||||
@smoke
|
||||
Scenario: Modify original content of a file with special character
|
||||
Given user "Alice" has uploaded file with content "openCloud test text file 0" to "S@mpleFile!With,$pecial&Characters.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user overwrites the file "S@mpleFile!With,$pecial&Characters.txt" with content "overwrite openCloud test text file"
|
||||
And the user waits for file "S@mpleFile!With,$pecial&Characters.txt" to be synced
|
||||
Then as "Alice" the file "S@mpleFile!With,$pecial&Characters.txt" should have the content "overwrite openCloud test text file" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Modify original content of a file
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "testfile.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for file "testfile.txt" to be synced
|
||||
And the user overwrites the file "testfile.txt" with content "overwrite openCloud test text file"
|
||||
And the user waits for file "testfile.txt" to be synced
|
||||
Then as "Alice" the file "testfile.txt" should have the content "overwrite openCloud test text file" in the server
|
||||
|
||||
|
||||
Scenario Outline: Replace and modify the content of a file multiple times
|
||||
Given user "Alice" has set up a client with default settings
|
||||
And the user has copied file "<initialFile>" from outside the sync folder to "/" in the sync folder
|
||||
When the user copies file "<updateFile1>" from outside the sync folder to "/<initialFile>" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
And the user copies file "<updateFile2>" from outside the sync folder to "/<initialFile>" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
And the user copies file "<updateFile3>" from outside the sync folder to "/<initialFile>" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the content of file "<initialFile>" in the server should match the content of local file "<updateFile3>"
|
||||
Examples:
|
||||
| initialFile | updateFile1 | updateFile2 | updateFile3 |
|
||||
| simple.pdf | simple1.pdf | simple2.pdf | simple3.pdf |
|
||||
| simple.docx | simple1.docx | simple2.docx | simple3.docx |
|
||||
| simple.xlsx | simple1.xlsx | simple2.xlsx | simple3.xlsx |
|
||||
@@ -0,0 +1,23 @@
|
||||
Feature: Logout users
|
||||
As a user
|
||||
I want to be able to login and logout of my account
|
||||
So that I can protect my work and identity and be assured of privacy
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
|
||||
@smoke
|
||||
Scenario: logging out
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When the user "Alice" logs out using the client-UI
|
||||
Then user "Alice" should be signed out
|
||||
|
||||
@smoke
|
||||
Scenario: login after logging out
|
||||
Given user "Alice" has set up a client with default settings
|
||||
And user "Alice" has logged out from the client-UI
|
||||
When user "Alice" logs in using the client-UI
|
||||
Then user "Alice" should be connected to the server
|
||||
When the user quits the client
|
||||
And the user starts the client
|
||||
Then user "Alice" should be connected to the server
|
||||
@@ -0,0 +1,90 @@
|
||||
Feature: move file and folder
|
||||
As a user
|
||||
I want to be able to move a folder and a file
|
||||
So that I can organize my files and folders
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "folder1" in the server
|
||||
And user "Alice" has created folder "folder1/folder2" in the server
|
||||
And user "Alice" has created folder "folder1/folder2/folder3" in the server
|
||||
And user "Alice" has created folder "folder1/folder2/folder3/folder4" in the server
|
||||
And user "Alice" has created folder "folder1/folder2/folder3/folder4/folder5" in the server
|
||||
|
||||
|
||||
Scenario: Move folder and file from level 5 sub-folder to sync root
|
||||
Given user "Alice" has created folder "folder1/folder2/folder3/folder4/folder5/test-folder" in the server
|
||||
And user "Alice" has uploaded file with content "openCloud" to "folder1/folder2/folder3/folder4/folder5/lorem.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves file "folder1/folder2/folder3/folder4/folder5/lorem.txt" to "/" in the sync folder
|
||||
And user "Alice" moves folder "folder1/folder2/folder3/folder4/folder5/test-folder" to "/" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the file "lorem.txt" should have the content "openCloud" in the server
|
||||
And as "Alice" folder "test-folder" should exist in the server
|
||||
And as "Alice" file "folder1/folder2/folder3/folder4/folder5/lorem.txt" should not exist in the server
|
||||
And as "Alice" folder "folder1/folder2/folder3/folder4/folder5/test-folder" should not exist in the server
|
||||
|
||||
|
||||
Scenario: Move two folders and a file down to the level 5 sub-folder
|
||||
And user "Alice" has created folder "test-folder1" in the server
|
||||
And user "Alice" has created folder "test-folder2" in the server
|
||||
And user "Alice" has uploaded file with content "openCloud test" to "testFile.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves folder "test-folder1" to "folder1/folder2/folder3/folder4/folder5" in the sync folder
|
||||
And user "Alice" moves folder "test-folder2" to "folder1/folder2/folder3/folder4/folder5" in the sync folder
|
||||
And user "Alice" moves file "testFile.txt" to "folder1/folder2/folder3/folder4/folder5" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the file "folder1/folder2/folder3/folder4/folder5/testFile.txt" should have the content "openCloud test" in the server
|
||||
And as "Alice" folder "folder1/folder2/folder3/folder4/folder5/test-folder1" should exist in the server
|
||||
And as "Alice" folder "folder1/folder2/folder3/folder4/folder5/test-folder2" should exist in the server
|
||||
And as "Alice" file "testFile.txt" should not exist in the server
|
||||
And as "Alice" folder "test-folder1" should not exist in the server
|
||||
And as "Alice" folder "test-folder2" should not exist in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Rename a file and a folder
|
||||
Given user "Alice" has uploaded file with content "test file 1" to "textfile.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user renames a file "textfile.txt" to "lorem.txt"
|
||||
And the user renames a folder "folder1" to "FOLDER"
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the file "lorem.txt" should have the content "test file 1" in the server
|
||||
And as "Alice" folder "FOLDER" should exist in the server
|
||||
But as "Alice" file "textfile.txt" should not exist in the server
|
||||
And as "Alice" folder "folder1" should not exist in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Move files from one folder to another
|
||||
Given user "Alice" has uploaded file with content "test file 1" to "folder1/file1.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test file 2" to "folder1/file2.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves file "folder1/file1.txt" to "folder1/folder2" in the sync folder
|
||||
And user "Alice" moves file "folder1/file2.txt" to "folder1/folder2" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the file "folder1/folder2/file1.txt" should have the content "test file 1" in the server
|
||||
And as "Alice" the file "folder1/folder2/file2.txt" should have the content "test file 2" in the server
|
||||
And as "Alice" file "folder1/file1.txt" should not exist in the server
|
||||
And as "Alice" file "folder1/file2.txt" should not exist in the server
|
||||
|
||||
|
||||
|
||||
Scenario: Move resources from different sub-levels to sync root
|
||||
Given user "Alice" has created folder "folder1/folder2/folder3/folder4/test-folder" in the server
|
||||
And user "Alice" has uploaded file with content "openCloud" to "folder1/folder2/lorem.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves file "folder1/folder2/lorem.txt" to "/" in the sync folder
|
||||
And user "Alice" moves folder "folder1/folder2/folder3/folder4/test-folder" to "/" in the sync folder
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" the file "lorem.txt" should have the content "openCloud" in the server
|
||||
And as "Alice" folder "test-folder" should exist in the server
|
||||
And as "Alice" file "folder1/folder2/lorem.txt" should not exist in the server
|
||||
And as "Alice" folder "folder1/folder2/folder3/folder4/test-folder" should not exist in the server
|
||||
|
||||
|
||||
Scenario: Syncing a 50MB file moved into the local sync folder
|
||||
Given user "Alice" has set up a client with default settings
|
||||
And user "Alice" has created a folder "NewFolder" inside the sync folder
|
||||
And user "Alice" has created a file "newfile.txt" with size "50MB" in the sync folder
|
||||
When user "Alice" moves file "newfile.txt" to "NewFolder" in the sync folder
|
||||
And the user waits for file "NewFolder/newfile.txt" to be synced
|
||||
Then as "Alice" file "NewFolder/newfile.txt" should exist in the server
|
||||
@@ -0,0 +1,28 @@
|
||||
Feature: remove account connection
|
||||
As a user
|
||||
I want to remove my account
|
||||
So that I won't be using any client-UI services
|
||||
|
||||
@smoke
|
||||
Scenario: remove an account connection
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Brian" has been created in the server with default attributes
|
||||
And the user has set up the following accounts with default settings:
|
||||
| users |
|
||||
| Alice |
|
||||
| Brian |
|
||||
When the user removes the connection for user "Brian"
|
||||
Then "Brian" account should not be displayed
|
||||
But "Alice" account should be added
|
||||
|
||||
|
||||
Scenario: remove the only account connection
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "large-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "testFile.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user removes the connection for user "Alice"
|
||||
Then the settings tab should have the following options in the general section:
|
||||
| Start on Login |
|
||||
And the folder "large-folder" should exist on the file system
|
||||
And the file "testFile.txt" should exist on the file system
|
||||
@@ -0,0 +1,98 @@
|
||||
Feature: Project spaces
|
||||
As a user
|
||||
I want to sync project space
|
||||
So that I can do view and manage the space
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And the administrator has created a space "Project101"
|
||||
|
||||
@smoke
|
||||
Scenario: User with Viewer role can open the file
|
||||
Given the administrator has created a folder "planning" in space "Project101"
|
||||
And the administrator has uploaded a file "testfile.txt" with content "some content" inside space "Project101"
|
||||
And the administrator has added user "Alice" to space "Project101" with role "viewer"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
Then user "Alice" should be able to open the file "testfile.txt" on the file system
|
||||
And as "Alice" the file "testfile.txt" should have content "some content" on the file system
|
||||
|
||||
|
||||
Scenario: User with Viewer role cannot edit the file
|
||||
Given the administrator has created a folder "planning" in space "Project101"
|
||||
And the administrator has uploaded a file "testfile.txt" with content "some content" inside space "Project101"
|
||||
And the administrator has added user "Alice" to space "Project101" with role "viewer"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
Then user "Alice" should not be able to edit the file "testfile.txt" on the file system
|
||||
And as "Alice" the file "testfile.txt" in the space "Project101" should have content "some content" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: User with Editor role can edit the file
|
||||
Given the administrator has created a folder "planning" in space "Project101"
|
||||
And the administrator has uploaded a file "testfile.txt" with content "some content" inside space "Project101"
|
||||
And the administrator has added user "Alice" to space "Project101" with role "editor"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
When the user overwrites the file "testfile.txt" with content "some content edited"
|
||||
And the user waits for file "testfile.txt" to be synced
|
||||
Then as "Alice" the file "testfile.txt" in the space "Project101" should have content "some content edited" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: User with Manager role can add files and folders
|
||||
Given the administrator has added user "Alice" to space "Project101" with role "manager"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
When user "Alice" creates a file "localFile.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And user "Alice" creates a folder "localFolder" inside the sync folder
|
||||
And the user waits for file "localFile.txt" to be synced
|
||||
And the user waits for folder "localFolder" to be synced
|
||||
Then as "Alice" the file "localFile.txt" in the space "Project101" should have content "test content" in the server
|
||||
And as "Alice" the space "Project101" should have folder "localFolder" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: User with Editor role can rename a file
|
||||
Given the administrator has uploaded a file "testfile.txt" with content "some content" inside space "Project101"
|
||||
And the administrator has added user "Alice" to space "Project101" with role "editor"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
When the user renames a file "testfile.txt" to "renamedFile.txt"
|
||||
And the user waits for file "renamedFile.txt" to be synced
|
||||
Then as "Alice" the space "Project101" should have file "renamedFile.txt" in the server
|
||||
And as "Alice" the file "renamedFile.txt" in the space "Project101" should have content "some content" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Remove folder sync connection (Project Space)
|
||||
Given the administrator has uploaded a file "testfile.txt" with content "some content" inside space "Project101"
|
||||
And the administrator has added user "Alice" to space "Project101" with role "manager"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
When the user removes the folder sync connection
|
||||
Then for user "Alice" sync folder "Project101" should not be displayed
|
||||
But the file "testfile.txt" should exist on the file system
|
||||
|
||||
|
||||
Scenario: User with Viewer role cannot create resource
|
||||
Given the administrator has added user "Alice" to space "Project101" with role "viewer"
|
||||
And user "Alice" has set up a client with space "Project101"
|
||||
When user "Alice" creates a folder "simple-folder" inside the sync folder
|
||||
Then the following error message should appear in the client
|
||||
"""
|
||||
simple-folder: Not allowed because you don't have permission to add subfolders to that folder
|
||||
"""
|
||||
When the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the following activities should be displayed in not synced table
|
||||
| resource | status | account |
|
||||
| simple-folder | Blacklisted | Alice Hansen@%local_server_hostname% |
|
||||
|
||||
@smoke
|
||||
Scenario: Sharee with Editor role deletes the shared resource
|
||||
Given user "Brian" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "simple-folder/uploaded-lorem.txt" in the server
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | simple-folder |
|
||||
| sharee | Brian |
|
||||
| permissionsRole | Editor |
|
||||
And user "Brian" has set up a client with space "Shares"
|
||||
When user "Brian" deletes the folder "Shares/simple-folder" in the server
|
||||
And the user waits for the files to sync
|
||||
Then the folder "simple-folder" should not exist on the file system
|
||||
@@ -0,0 +1,610 @@
|
||||
Feature: Syncing files
|
||||
As a user
|
||||
I want to be able to sync my local folders to to my QSfera server
|
||||
so that I dont have to upload and download files manually
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
|
||||
@issue-9281 @smoke
|
||||
Scenario: Syncing a file to the server
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "lorem-for-upload.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for file "lorem-for-upload.txt" to be synced
|
||||
And the user opens the activity tab
|
||||
And the user selects "Local Activity" tab in the activity
|
||||
Then the file "lorem-for-upload.txt" should have status "Uploaded" in the activity tab
|
||||
And as "Alice" the file "lorem-for-upload.txt" should have the content "test content" in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Syncing all files and folders from the server
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has created folder "large-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "uploaded-lorem.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the file "uploaded-lorem.txt" should exist on the file system
|
||||
And the file "uploaded-lorem.txt" should exist on the file system with the following content
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the folder "simple-folder" should exist on the file system
|
||||
And the folder "large-folder" should exist on the file system
|
||||
|
||||
@issue-9733
|
||||
Scenario: Syncing a file from the server and creating a conflict
|
||||
Given user "Alice" has uploaded file with content "server content" to "/conflict.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
And the user has paused the file sync
|
||||
And the user has changed the content of local file "conflict.txt" to:
|
||||
"""
|
||||
client content
|
||||
"""
|
||||
And user "Alice" has uploaded file with content "changed server content" to "/conflict.txt" in the server
|
||||
And the user has waited for "5" seconds
|
||||
When the user resumes the file sync on the client
|
||||
And the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the table of conflict warnings should include file "conflict.txt"
|
||||
And the file "conflict.txt" should exist on the file system with the following content
|
||||
"""
|
||||
changed server content
|
||||
"""
|
||||
And a conflict file for "conflict.txt" should exist on the file system with the following content
|
||||
"""
|
||||
client content
|
||||
"""
|
||||
|
||||
@skipOnWindows
|
||||
Scenario: Sync all is selected by default
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has created folder "large-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "testFile.txt" in the server
|
||||
And user "Alice" has uploaded file with content "lorem content" to "lorem.txt" in the server
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user sets the sync path in sync connection wizard
|
||||
And the user navigates back in the sync connection wizard
|
||||
And the user sets the temp folder "localSyncFolder" as local sync path in sync connection wizard
|
||||
And the user selects "Personal" space in sync connection wizard
|
||||
Then the sync all checkbox should be checked
|
||||
When user unselects all the remote folders
|
||||
And the user adds the folder sync connection
|
||||
And the user waits for the files to sync
|
||||
Then the file "testFile.txt" should exist on the file system
|
||||
And the file "lorem.txt" should exist on the file system
|
||||
But the folder "simple-folder" should not exist on the file system
|
||||
And the folder "large-folder" should not exist on the file system
|
||||
|
||||
@skipOnWindows @smoke
|
||||
Scenario: Sync only one folder from the server
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has created folder "large-folder" in the server
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user sets the sync path in sync connection wizard
|
||||
And the user selects "Personal" space in sync connection wizard
|
||||
And the user selects the following folders to sync:
|
||||
| folder |
|
||||
| simple-folder |
|
||||
Then the folder "simple-folder" should exist on the file system
|
||||
But the folder "large-folder" should not exist on the file system
|
||||
When user "Alice" uploads file with content "some content" to "simple-folder/lorem.txt" in the server
|
||||
And user "Alice" uploads file with content "openCloud" to "large-folder/lorem.txt" in the server
|
||||
And user "Alice" creates a file "simple-folder/localFile.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for the files to sync
|
||||
Then the file "simple-folder/lorem.txt" should exist on the file system
|
||||
And the file "large-folder/lorem.txt" should not exist on the file system
|
||||
And as "Alice" file "simple-folder/localFile.txt" should exist in the server
|
||||
|
||||
@issue-9733 @skipOnWindows
|
||||
Scenario: sort folders list by name and size
|
||||
Given user "Alice" has created folder "123Folder" in the server
|
||||
And user "Alice" has uploaded file with content "small" to "123Folder/lorem.txt" in the server
|
||||
And user "Alice" has created folder "aFolder" in the server
|
||||
And user "Alice" has uploaded file with content "more contents" to "aFolder/lorem.txt" in the server
|
||||
And user "Alice" has created folder "bFolder" in the server
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user sets the sync path in sync connection wizard
|
||||
And the user selects "Personal" space in sync connection wizard
|
||||
# folders are sorted by name in ascending order by default
|
||||
Then the folders should be in the following order:
|
||||
| folder |
|
||||
| 123Folder |
|
||||
| aFolder |
|
||||
| bFolder |
|
||||
# sort folder by name in descending order
|
||||
When the user sorts the folder list by "Name"
|
||||
Then the folders should be in the following order:
|
||||
| folder |
|
||||
| bFolder |
|
||||
| aFolder |
|
||||
| 123Folder |
|
||||
# sort folder by size in ascending order
|
||||
When the user sorts the folder list by "Size"
|
||||
Then the folders should be in the following order:
|
||||
| folder |
|
||||
| bFolder |
|
||||
| 123Folder |
|
||||
| aFolder |
|
||||
# sort folder by size in descending order
|
||||
When the user sorts the folder list by "Size"
|
||||
Then the folders should be in the following order:
|
||||
| folder |
|
||||
| aFolder |
|
||||
| 123Folder |
|
||||
| bFolder |
|
||||
And the user cancels the sync connection wizard
|
||||
|
||||
@smoke
|
||||
Scenario Outline: Syncing a folder to the server
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder <foldername> inside the sync folder
|
||||
And the user waits for folder <foldername> to be synced
|
||||
Then as "Alice" folder <foldername> should exist in the server
|
||||
Examples:
|
||||
| foldername |
|
||||
| "myFolder" |
|
||||
| "really long folder name with some spaces and special char such as $%ñ&" |
|
||||
|
||||
@skipOnWindows
|
||||
Scenario Outline: Syncing a folder having space at the end (Linux only)
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder <foldername> inside the sync folder
|
||||
And the user waits for folder <foldername> to be synced
|
||||
Then as "Alice" folder <foldername> should exist in the server
|
||||
Examples:
|
||||
| foldername |
|
||||
| "folder with space at end " |
|
||||
|
||||
@skipOnLinux
|
||||
Scenario: Try to sync files having space at the end (Windows only)
|
||||
Given user "Alice" has uploaded file with content "lorem epsum" to "trailing-space.txt " in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "folder with space at end " inside the sync folder
|
||||
And the user force syncs the files
|
||||
And the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the file "trailing-space.txt " should be ignored
|
||||
And the file "folder with space at end " should be ignored
|
||||
|
||||
@smoke
|
||||
Scenario: Many subfolders can be synced
|
||||
Given user "Alice" has created folder "parent" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "parent/subfolderEmpty1" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolderEmpty2" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolderEmpty3" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolderEmpty4" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolderEmpty5" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolder1" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolder2" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolder3" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolder4" inside the sync folder
|
||||
And user "Alice" creates a folder "parent/subfolder5" inside the sync folder
|
||||
And user "Alice" creates a file "parent/subfolder1/test.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And user "Alice" creates a file "parent/subfolder2/test.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And user "Alice" creates a file "parent/subfolder3/test.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And user "Alice" creates a file "parent/subfolder4/test.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And user "Alice" creates a file "parent/subfolder5/test.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for file "parent/subfolder5/test.txt" to be synced
|
||||
Then as "Alice" folder "parent/subfolderEmpty1" should exist in the server
|
||||
And as "Alice" folder "parent/subfolderEmpty2" should exist in the server
|
||||
And as "Alice" folder "parent/subfolderEmpty3" should exist in the server
|
||||
And as "Alice" folder "parent/subfolderEmpty4" should exist in the server
|
||||
And as "Alice" folder "parent/subfolderEmpty5" should exist in the server
|
||||
And as "Alice" folder "parent/subfolder1" should exist in the server
|
||||
And as "Alice" folder "parent/subfolder2" should exist in the server
|
||||
And as "Alice" folder "parent/subfolder3" should exist in the server
|
||||
And as "Alice" folder "parent/subfolder4" should exist in the server
|
||||
And as "Alice" folder "parent/subfolder5" should exist in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Both original and copied folders can be synced
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "original" inside the sync folder
|
||||
And user "Alice" creates a file "original/localFile.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user copies folder "original" into the same directory
|
||||
And the user waits for folder "original (Copy)" to be synced
|
||||
Then as "Alice" folder "original" should exist in the server
|
||||
And as "Alice" the file "original/localFile.txt" should have the content "test content" in the server
|
||||
And as "Alice" folder "original (Copy)" should exist in the server
|
||||
And as "Alice" the file "original (Copy)/localFile.txt" should have the content "test content" in the server
|
||||
|
||||
@issue-9281 @smoke
|
||||
Scenario: Verify that you can create a subfolder with long name(~220 characters)
|
||||
Given user "Alice" has created a folder "Folder1" inside the sync folder
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "Folder1/thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks" inside the sync folder
|
||||
And the user waits for folder "Folder1/thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks" to be synced
|
||||
Then the folder "Folder1/thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks" should exist on the file system
|
||||
And as "Alice" folder "Folder1/thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks-thisIsAVeryLongFolderNameToCheckThatItWorks" should exist in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Verify pre existing folders in local (Desktop client) are copied over to the server
|
||||
Given user "Alice" has created a folder "Folder1" inside the sync folder
|
||||
And user "Alice" has created a folder "Folder1/subFolder1" inside the sync folder
|
||||
And user "Alice" has created a folder "Folder1/subFolder1/subFolder2" inside the sync folder
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then as "Alice" folder "Folder1" should exist in the server
|
||||
And as "Alice" folder "Folder1/subFolder1" should exist in the server
|
||||
And as "Alice" folder "Folder1/subFolder1/subFolder2" should exist in the server
|
||||
|
||||
@skipOnWindows
|
||||
Scenario: Filenames that are rejected by the server are reported (Linux only)
|
||||
Given user "Alice" has created folder "Folder1" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "Folder1/a\\a.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the file "Folder1/a\\a.txt" should exist on the file system
|
||||
And the file "Folder1/a\\a.txt" should be blacklisted
|
||||
|
||||
|
||||
Scenario Outline: Sync long nested folder
|
||||
Given user "Alice" has created folder "<foldername>" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "<foldername>/<foldername>" inside the sync folder
|
||||
And user "Alice" creates a folder "<foldername>/<foldername>/<foldername>" inside the sync folder
|
||||
And user "Alice" creates a folder "<foldername>/<foldername>/<foldername>/<foldername>" inside the sync folder
|
||||
And user "Alice" creates a folder "<foldername>/<foldername>/<foldername>/<foldername>/<foldername>" inside the sync folder
|
||||
And the user waits for folder "<foldername>/<foldername>/<foldername>/<foldername>/<foldername>" to be synced
|
||||
Then as "Alice" folder "<foldername>/<foldername>" should exist in the server
|
||||
And as "Alice" folder "<foldername>/<foldername>/<foldername>" should exist in the server
|
||||
And as "Alice" folder "<foldername>/<foldername>/<foldername>/<foldername>" should exist in the server
|
||||
And as "Alice" folder "<foldername>/<foldername>/<foldername>/<foldername>/<foldername>" should exist in the server
|
||||
Examples:
|
||||
| foldername |
|
||||
| An empty folder which name is obviously more than 59 characters |
|
||||
|
||||
@skipOnWindows @smoke
|
||||
Scenario: Invalid system names are synced (Linux only)
|
||||
Given user "Alice" has created folder "CON" in the server
|
||||
And user "Alice" has created folder "test%" in the server
|
||||
And user "Alice" has uploaded file with content "server content" to "/PRN" in the server
|
||||
And user "Alice" has uploaded file with content "server content" to "/foo%" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the folder "CON" should exist on the file system
|
||||
And the folder "test%" should exist on the file system
|
||||
And the file "PRN" should exist on the file system
|
||||
And the file "foo%" should exist on the file system
|
||||
And as "Alice" folder "CON" should exist in the server
|
||||
And as "Alice" folder "test%" should exist in the server
|
||||
And as "Alice" file "/PRN" should exist in the server
|
||||
And as "Alice" file "/foo%" should exist in the server
|
||||
|
||||
@skipOnLinux
|
||||
Scenario: Sync invalid system names (Windows only)
|
||||
Given user "Alice" has created folder "CON" in the server
|
||||
And user "Alice" has created folder "test%" in the server
|
||||
And user "Alice" has uploaded file with content "server content" to "/PRN" in the server
|
||||
And user "Alice" has uploaded file with content "server content" to "/foo%" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the folder "test%" should exist on the file system
|
||||
And the file "foo%" should exist on the file system
|
||||
But the folder "CON" should not exist on the file system
|
||||
And the file "PRN" should not exist on the file system
|
||||
|
||||
@smoke
|
||||
Scenario: various types of files can be synced from server to client
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has uploaded file "testavatar.png" to "simple-folder/testavatar.png" in the server
|
||||
And user "Alice" has uploaded file "testavatar.jpg" to "simple-folder/testavatar.jpg" in the server
|
||||
And user "Alice" has uploaded file "testavatar.jpeg" to "simple-folder/testavatar.jpeg" in the server
|
||||
And user "Alice" has uploaded file "testimage.mp3" to "simple-folder/testimage.mp3" in the server
|
||||
And user "Alice" has uploaded file "test_video.mp4" to "simple-folder/test_video.mp4" in the server
|
||||
And user "Alice" has uploaded file "simple.pdf" to "simple-folder/simple.pdf" in the server
|
||||
And user "Alice" has uploaded file "simple.docx" to "simple-folder/simple.docx" in the server
|
||||
And user "Alice" has uploaded file "simple.pptx" to "simple-folder/simple.pptx" in the server
|
||||
And user "Alice" has uploaded file "simple.xlsx" to "simple-folder/simple.xlsx" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the folder "simple-folder" should exist on the file system
|
||||
And the file "simple-folder/testavatar.png" should exist on the file system
|
||||
And the file "simple-folder/testavatar.jpg" should exist on the file system
|
||||
And the file "simple-folder/testavatar.jpeg" should exist on the file system
|
||||
And the file "simple-folder/testimage.mp3" should exist on the file system
|
||||
And the file "simple-folder/test_video.mp4" should exist on the file system
|
||||
And the file "simple-folder/simple.pdf" should exist on the file system
|
||||
And the file "simple-folder/simple.docx" should exist on the file system
|
||||
And the file "simple-folder/simple.pptx" should exist on the file system
|
||||
And the file "simple-folder/simple.xlsx" should exist on the file system
|
||||
|
||||
|
||||
Scenario: various types of files can be synced from client to server
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates the following files inside the sync folder:
|
||||
| files |
|
||||
| /testavatar.png |
|
||||
| /testavatar.jpg |
|
||||
| /testavatar.jpeg |
|
||||
| /testaudio.mp3 |
|
||||
| /test_video.mp4 |
|
||||
| /simple.txt |
|
||||
| /simple.docx |
|
||||
| /simple.pptx |
|
||||
| /simple.xlsx |
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" file "testavatar.png" should exist in the server
|
||||
And as "Alice" file "testavatar.jpg" should exist in the server
|
||||
And as "Alice" file "testavatar.jpeg" should exist in the server
|
||||
And as "Alice" file "testaudio.mp3" should exist in the server
|
||||
And as "Alice" file "test_video.mp4" should exist in the server
|
||||
And as "Alice" file "simple.txt" should exist in the server
|
||||
And as "Alice" file "simple.docx" should exist in the server
|
||||
And as "Alice" file "simple.pptx" should exist in the server
|
||||
And as "Alice" file "simple.xlsx" should exist in the server
|
||||
|
||||
@smoke
|
||||
Scenario Outline: File with long name can be synced
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "<filename>" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for file "<filename>" to be synced
|
||||
Then as "Alice" file "<filename>" should exist in the server
|
||||
Examples:
|
||||
| filename |
|
||||
| thisIsAVeryLongFileNameToCheckThatItWorks-thisIsAVeryLongFileNameToCheckThatItWorks-thisIsAVeryLongFileNameToCheckThatItWorks-thisIsAVeryLongFileNameToCheckThatItWorks-thisIsAVeryLongFileNameToCheckThatItWorks-thisIs.txt |
|
||||
|
||||
@smoke
|
||||
Scenario: Syncing file of 1 GB size
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "newfile.txt" with size "1GB" inside the sync folder
|
||||
And the user waits for file "newfile.txt" to be synced
|
||||
Then as "Alice" file "newfile.txt" should exist in the server
|
||||
|
||||
|
||||
Scenario: File with spaces in the name can sync
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "file with space.txt" with the following content inside the sync folder
|
||||
"""
|
||||
test contents
|
||||
"""
|
||||
And the user waits for file "file with space.txt" to be synced
|
||||
Then as "Alice" file "file with space.txt" should exist in the server
|
||||
|
||||
|
||||
Scenario: Syncing folders each having large number of files
|
||||
Given the user has created a folder "folder1" in temp folder
|
||||
And the user has created "500" files each of size "1048576" bytes inside folder "folder1" in temp folder
|
||||
And the user has created a folder "folder2" in temp folder
|
||||
And the user has created "500" files each of size "1048576" bytes inside folder "folder2" in temp folder
|
||||
And the user has created a folder "folder3" in temp folder
|
||||
And the user has created "1000" files each of size "1048576" bytes inside folder "folder3" in temp folder
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves folder "folder1" from the temp folder into the sync folder
|
||||
And user "Alice" moves folder "folder2" from the temp folder into the sync folder
|
||||
And user "Alice" moves folder "folder3" from the temp folder into the sync folder
|
||||
And the user waits for folder "folder1" to be synced
|
||||
And the user waits for folder "folder2" to be synced
|
||||
And the user waits for folder "folder3" to be synced
|
||||
Then as "Alice" folder "folder1" should exist in the server
|
||||
And as user "Alice" folder "folder1" should contain "500" items in the server
|
||||
And as "Alice" folder "folder2" should exist in the server
|
||||
And as user "Alice" folder "folder2" should contain "500" items in the server
|
||||
And as "Alice" folder "folder3" should exist in the server
|
||||
And as user "Alice" folder "folder3" should contain "1000" items in the server
|
||||
|
||||
@smoke
|
||||
Scenario: Skip sync folder configuration
|
||||
Given the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user cancels the sync connection wizard
|
||||
Then "Alice" account should be added
|
||||
And for user "Alice" sync folder "Personal" should not be displayed
|
||||
And for user "Alice" sync folder "Shares" should not be displayed
|
||||
|
||||
|
||||
Scenario: extract a zip file in the sync folder
|
||||
Given the user has created a zip file "archive.zip" with the following resources in the temp folder
|
||||
| resource | type | content |
|
||||
| folder1 | folder | |
|
||||
| folder2 | folder | |
|
||||
| file1.txt | file | Test file1 |
|
||||
| file2.txt | file | Test file2 |
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves file "archive.zip" from the temp folder into the sync folder
|
||||
And user "Alice" unzips the zip file "archive.zip" inside the sync root
|
||||
And the user waits for the files to sync
|
||||
Then as "Alice" folder "folder1" should exist in the server
|
||||
And as "Alice" folder "folder2" should exist in the server
|
||||
And as "Alice" the file "file1.txt" should have the content "Test file1" in the server
|
||||
And as "Alice" the file "file2.txt" should have the content "Test file2" in the server
|
||||
|
||||
|
||||
@skipOnWindows
|
||||
Scenario: sync remote folder to a local sync folder having special characters
|
||||
Given user "Alice" has created folder "~`!@#$^&()-_=+{[}];',)" in the server
|
||||
And user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has created folder "test-folder" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder1" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder2" in the server
|
||||
And user "Alice" has created folder "~test%" in the server
|
||||
And the user has created a folder "~`!@#$^&()-_=+{[}];',)PRN%" in temp folder
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user sets the temp folder "~`!@#$^&()-_=+{[}];',)PRN%" as local sync path in sync connection wizard
|
||||
And the user selects "Personal" space in sync connection wizard
|
||||
And the user selects the following folders to sync:
|
||||
| folder |
|
||||
| ~`!@#$^&()-_=+{[}];',) |
|
||||
| simple-folder |
|
||||
| test-folder/sub-folder2 |
|
||||
Then the folder "~`!@#$^&()-_=+{[}];',)" should exist on the file system
|
||||
And the folder "simple-folder" should exist on the file system
|
||||
But the folder "~test%" should not exist on the file system
|
||||
When user "Alice" deletes the folder "simple-folder" in the server
|
||||
And the user waits for the files to sync
|
||||
Then the folder "simple-folder" should not exist on the file system
|
||||
And the folder "test-folder/sub-folder2" should exist on the file system
|
||||
And the folder "test-folder/sub-folder1" should not exist on the file system
|
||||
|
||||
|
||||
Scenario: Syncing a local folder having special characters to the server
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a folder "~`!@#$^&()-_=+{[}];',)💥🫨❤️🔥" inside the sync folder
|
||||
And the user waits for folder "~`!@#$^&()-_=+{[}];',)💥🫨❤️🔥" to be synced
|
||||
Then as "Alice" folder "~`!@#$^&()-_=+{[}];',)💥🫨❤️🔥" should exist in the server
|
||||
|
||||
@issue-11814
|
||||
Scenario: Remove folder sync connection (Personal Space)
|
||||
Given user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user removes the folder sync connection
|
||||
Then for user "Alice" sync folder "Personal" should not be displayed
|
||||
And the folder "simple-folder" should exist on the file system
|
||||
And as "Alice" folder "simple-folder" should exist in the server
|
||||
|
||||
|
||||
Scenario: Sync a received shared folder with Viewer permission role
|
||||
Given user "Brian" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "simple-folder/uploaded-lorem.txt" in the server
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | simple-folder |
|
||||
| sharee | Brian |
|
||||
| permissionsRole | Viewer |
|
||||
And user "Brian" has set up a client with space "Shares"
|
||||
When user "Brian" creates a folder "simple-folder/sub-folder" inside the sync folder
|
||||
Then the folder "simple-folder/sub-folder" should exist on the file system
|
||||
But the following error message should appear in the client
|
||||
"""
|
||||
simple-folder/sub-folder: Not allowed because you don't have permission to add subfolders to that folder
|
||||
"""
|
||||
When the user copies file "simple.pdf" from outside the sync folder to "simple-folder/simple.pdf" in the sync folder
|
||||
Then the file "simple-folder/simple.pdf" should exist on the file system
|
||||
But the following error message should appear in the client
|
||||
"""
|
||||
simple-folder/simple.pdf: Not allowed because you don't have permission to add files in that folder
|
||||
"""
|
||||
And as "Brian" folder "simple-folder/sub-folder" should not exist in the server
|
||||
And as "Brian" file "simple-folder/simple.pdf" should not exist in the server
|
||||
When the user opens the activity tab
|
||||
And the user selects "Not Synced" tab in the activity
|
||||
Then the following activities should be displayed in not synced table
|
||||
| resource | status | account |
|
||||
| simple-folder/sub-folder | Blacklisted | Brian Murphy@%local_server_hostname% |
|
||||
| simple-folder/simple.pdf | Blacklisted | Brian Murphy@%local_server_hostname% |
|
||||
|
||||
|
||||
Scenario Outline: File with long multi-byte characters name can be synced (76 characters, 255 bytes including extension)
|
||||
Given user "Alice" has set up a client with default settings
|
||||
When user "Alice" creates a file "<filename>" with the following content inside the sync folder
|
||||
"""
|
||||
test content
|
||||
"""
|
||||
And the user waits for file "<filename>" to be synced
|
||||
Then as "Alice" file "<filename>" should exist in the server
|
||||
Examples:
|
||||
| filename |
|
||||
| 𒁰𒁱𒁲𒁳𒁴𒁵𒁶𒁷𒁸𒁹𒁺𒁻𒁼𒁾𒁿𒁰𒁱𒁲𒁳𒁴𒁵𒁶𒁷𒁸𒁹𒁺𒁻𒁼𒁾𒁿𒁰𒁱𒁲𒁳𒁴𒁵𒁶𒁷𒁸𒁹𒁺abôǣฎพฒฆ๘ตกกผพฒณญไใๅำ๊๒๔๗๘รศฬอฮ.txt |
|
||||
|
||||
|
||||
Scenario: Sync a received shared folder with Editor permission role
|
||||
Given user "Brian" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "simple-folder" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "simple-folder/uploaded-lorem.txt" in the server
|
||||
And user "Alice" has sent the following resource share invitation:
|
||||
| resource | simple-folder |
|
||||
| sharee | Brian |
|
||||
| permissionsRole | Editor |
|
||||
And user "Brian" has set up a client with space "Shares"
|
||||
When user "Brian" creates a folder "simple-folder/sub-folder" inside the sync folder
|
||||
And the user copies file "simple.pdf" from outside the sync folder to "simple-folder/simple.pdf" in the sync folder
|
||||
And the user overwrites the file "simple-folder/uploaded-lorem.txt" with content "overwrite openCloud test text file"
|
||||
And the user waits for the files to sync
|
||||
And the user waits for folder "simple-folder/sub-folder" to be synced
|
||||
Then the folder "simple-folder/sub-folder" should exist on the file system
|
||||
And the file "simple-folder/simple.pdf" should exist on the file system
|
||||
And as "Brian" folder "Shares/simple-folder/sub-folder" should exist in the server
|
||||
And as "Brian" file "Shares/simple-folder/simple.pdf" should exist in the server
|
||||
And as "Brian" the file "Shares/simple-folder/uploaded-lorem.txt" should have the content "overwrite openCloud test text file" in the server
|
||||
|
||||
@skipOnWindows @smoke
|
||||
Scenario: Unselected subfolders are excluded from local sync
|
||||
Given user "Alice" has created folder "test-folder" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder1" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder2" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user unselects the following folders to sync in "Choose what to sync" window:
|
||||
| folder |
|
||||
| test-folder/sub-folder2 |
|
||||
And the user waits for folder "test-folder/sub-folder2" to be synced
|
||||
Then the folder "test-folder/sub-folder1" should exist on the file system
|
||||
And the folder "test-folder/sub-folder2" should not exist on the file system
|
||||
When user "Alice" uploads file with content "some content" to "test-folder/sub-folder2/lorem.txt" in the server
|
||||
And the user force syncs the files
|
||||
And the user waits for the files to sync
|
||||
Then the file "test-folder/sub-folder2/lorem.txt" should not exist on the file system
|
||||
|
||||
@skipOnWindows
|
||||
Scenario: Only root level files sync when all folders are unselected
|
||||
Given user "Alice" has created folder "test-folder" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder1" in the server
|
||||
And user "Alice" has created folder "test-folder/sub-folder2" in the server
|
||||
And user "Alice" has uploaded file with content "root file content" to "root-file.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some subfolder content" to "test-folder/sub-folder1/lorem.txt" in the server
|
||||
And the user has started the client
|
||||
And the user has entered the following account information:
|
||||
| server | %local_server% |
|
||||
| user | Alice |
|
||||
| password | 1234 |
|
||||
When the user selects manual sync folder option in advanced section
|
||||
And the user sets the sync path in sync connection wizard
|
||||
And the user selects "Personal" space in sync connection wizard
|
||||
And user unselects all the remote folders
|
||||
And the user adds the folder sync connection
|
||||
And the user waits for the files to sync
|
||||
Then the folder "test-folder/sub-folder1" should not exist on the file system
|
||||
And the folder "test-folder/sub-folder2" should not exist on the file system
|
||||
And the file "test-folder/sub-folder1/lorem.txt" should not exist on the file system
|
||||
But the file "root-file.txt" should exist on the file system
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
Feature: Visually check all tabs
|
||||
As a user
|
||||
I want to visually check all tabs in client
|
||||
So that I can perform all the actions related to client
|
||||
|
||||
@smoke
|
||||
Scenario: Tabs in toolbar looks correct
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the toolbar should have the following tabs:
|
||||
| Add Account |
|
||||
| Activity |
|
||||
| Settings |
|
||||
| Quit |
|
||||
|
||||
@smoke
|
||||
Scenario: Verify various setting options in Settings tab
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has set up a client with default settings
|
||||
When the user opens the settings tab
|
||||
Then the settings tab should have the following options in the general section:
|
||||
| Start on Login |
|
||||
And the settings tab should have the following options in the advanced section:
|
||||
| Sync hidden files |
|
||||
| Edit ignored files |
|
||||
| Log settings |
|
||||
And the settings tab should have the following options in the network section:
|
||||
| Download Bandwidth |
|
||||
| Upload Bandwidth |
|
||||
When the user opens the about dialog
|
||||
Then the about dialog should be opened
|
||||
@@ -0,0 +1,174 @@
|
||||
@skipOnLinux
|
||||
Feature: VFS support
|
||||
As a user
|
||||
I want to sync files with vfs
|
||||
So that I can decide which files to download
|
||||
|
||||
|
||||
Scenario: Default VFS sync
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has uploaded file with content "openCloud" to "testFile.txt" in the server
|
||||
And user "Alice" has created folder "parent" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "parent/lorem.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the placeholder file "testFile.txt" should exist on the file system
|
||||
And the placeholder file "parent/lorem.txt" should exist on the file system
|
||||
When user "Alice" reads the content of file "parent/lorem.txt"
|
||||
Then the file "parent/lorem.txt" should be downloaded
|
||||
And the placeholder file "testFile.txt" should exist on the file system
|
||||
|
||||
|
||||
Scenario: Copy placeholder file
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has uploaded file with content "sample file" to "sampleFile.txt" in the server
|
||||
And user "Alice" has uploaded file with content "lorem file" to "lorem.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test file" to "testFile.txt" in the server
|
||||
And user "Alice" has created folder "Folder" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the placeholder file "lorem.txt" should exist on the file system
|
||||
And the placeholder file "sampleFile.txt" should exist on the file system
|
||||
And the placeholder file "testFile.txt" should exist on the file system
|
||||
When user "Alice" copies file "sampleFile.txt" to temp folder
|
||||
And the user copies file "lorem.txt" into folder "Folder"
|
||||
And the user copies file "testFile.txt" into the same directory
|
||||
And the user waits for file "Folder/lorem.txt" to be synced
|
||||
Then the file "sampleFile.txt" should be downloaded
|
||||
And the file "Folder/lorem.txt" should be downloaded
|
||||
And the file "lorem.txt" should be downloaded
|
||||
And the file "testFile.txt" should be downloaded
|
||||
And the file "testFile (Copy).txt" should be downloaded
|
||||
And as "Alice" file "Folder/lorem.txt" should exist in the server
|
||||
And as "Alice" file "lorem.txt" should exist in the server
|
||||
And as "Alice" file "sampleFile.txt" should exist in the server
|
||||
And as "Alice" file "testFile.txt" should exist in the server
|
||||
And as "Alice" file "testFile (Copy).txt" should exist in the server
|
||||
|
||||
|
||||
Scenario: Move placeholder file
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has uploaded file with content "lorem file" to "lorem.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "sampleFile.txt" in the server
|
||||
And user "Alice" has created folder "Folder" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
When user "Alice" moves file "lorem.txt" to "Folder" in the sync folder
|
||||
And user "Alice" moves file "sampleFile.txt" to the temp folder
|
||||
And the user waits for file "Folder/lorem.txt" to be synced
|
||||
Then the placeholder file "Folder/lorem.txt" should exist on the file system
|
||||
And as "Alice" file "Folder/lorem.txt" should exist in the server
|
||||
And as "Alice" file "lorem.txt" should not exist in the server
|
||||
And as "Alice" file "sampleFile.txt" should not exist in the server
|
||||
|
||||
|
||||
Scenario: Hydration and dehydration of files via file explorer
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has uploaded file with content "test content" to "testFile.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "simple.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "large.txt" in the server
|
||||
And user "Alice" has created folder "parent" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "parent/lorem.txt" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "parent/epsum.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the placeholder file "testFile.txt" should exist on the file system
|
||||
And the placeholder file "simple.txt" should exist on the file system
|
||||
And the placeholder file "large.txt" should exist on the file system
|
||||
And the placeholder file "parent/lorem.txt" should exist on the file system
|
||||
And the placeholder file "parent/epsum.txt" should exist on the file system
|
||||
|
||||
# Hydrate some files by reading the content
|
||||
When user "Alice" reads the content of file "testFile.txt"
|
||||
And user "Alice" reads the content of file "parent/lorem.txt"
|
||||
Then the file "testFile.txt" should be downloaded
|
||||
And the file "parent/lorem.txt" should be downloaded
|
||||
And the placeholder file "parent/epsum.txt" should exist on the file system
|
||||
|
||||
# mark files "Always keep on this device"
|
||||
When user "Alice" marks file "testFile.txt" as "Always keep on this device" from the file explorer
|
||||
And the user waits for file "testFile.txt" to be synced
|
||||
Then the file "testFile.txt" should be downloaded
|
||||
When user "Alice" marks file "simple.txt" as "Always keep on this device" from the file explorer
|
||||
And the user waits for file "simple.txt" to be synced
|
||||
Then the file "simple.txt" should be downloaded
|
||||
And the placeholder file "large.txt" should exist on the file system
|
||||
|
||||
# mark files "Free up space"
|
||||
When user "Alice" marks file "testFile.txt" as "Free up space" from the file explorer
|
||||
And the user waits for file "testFile.txt" to be synced
|
||||
Then the placeholder file "testFile.txt" should exist on the file system
|
||||
When user "Alice" marks file "parent/lorem.txt" as "Free up space" from the file explorer
|
||||
And the user waits for file "parent/lorem.txt" to be synced
|
||||
Then the placeholder file "parent/lorem.txt" should exist on the file system
|
||||
When user "Alice" marks file "simple.txt" as "Free up space" from the file explorer
|
||||
And the user waits for file "simple.txt" to be synced
|
||||
Then the placeholder file "simple.txt" should exist on the file system
|
||||
|
||||
|
||||
Scenario: Hydration and dehydration of folders via file explorer
|
||||
Given user "Alice" has been created in the server with default attributes
|
||||
And user "Alice" has created folder "testFol" in the server
|
||||
And user "Alice" has created folder "nested" in the server
|
||||
And user "Alice" has created folder "nested/subfol1" in the server
|
||||
And user "Alice" has created folder "nested/subfol1/subfol2" in the server
|
||||
And user "Alice" has created folder "nested/subfol1/subfol2/subfol3" in the server
|
||||
And user "Alice" has created folder "nested/subfol1/subfol2/subfol3/subfol4" in the server
|
||||
And user "Alice" has uploaded file with content "test content" to "simple.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "nested/lorem.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "nested/subfol1/subfile1.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "nested/subfol1/subfol2/subfile2.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "nested/subfol1/subfol2/subfol3/subfile3.txt" in the server
|
||||
And user "Alice" has uploaded file with content "some contents" to "nested/subfol1/subfol2/subfol3/subfol4/subfile4.txt" in the server
|
||||
And user "Alice" has set up a client with default settings
|
||||
Then the placeholder file "simple.txt" should exist on the file system
|
||||
And the placeholder file "nested/lorem.txt" should exist on the file system
|
||||
And the placeholder file "nested/subfol1/subfol2/subfol3/subfol4/subfile4.txt" should exist on the file system
|
||||
|
||||
# mark sub folder as "Always keep on this device"
|
||||
When user "Alice" reads the content of file "nested/subfol1/subfol2/subfile2.txt"
|
||||
And user "Alice" marks folder "nested/subfol1" as "Always keep on this device" from the file explorer
|
||||
And the user waits for folder "nested/subfol1" to be synced
|
||||
Then the file "nested/subfol1/subfile1.txt" should be downloaded
|
||||
And the file "nested/subfol1/subfol2/subfile2.txt" should be downloaded
|
||||
And the file "nested/subfol1/subfol2/subfol3/subfile3.txt" should be downloaded
|
||||
And the file "nested/subfol1/subfol2/subfol3/subfol4/subfile4.txt" should be downloaded
|
||||
And the placeholder file "nested/lorem.txt" should exist on the file system
|
||||
|
||||
# create local files and folders in "Always keep on this device" folder
|
||||
When user "Alice" creates a folder "nested/subfol1/subfol2/localFol" inside the sync folder
|
||||
And user "Alice" creates a file "nested/subfol1/subfol2/local.txt" with the following content inside the sync folder
|
||||
"""
|
||||
local file
|
||||
"""
|
||||
And the user waits for folder "nested/subfol1/subfol2/localFol" to be synced
|
||||
And the user waits for file "nested/subfol1/subfol2/local.txt" to be synced
|
||||
Then the file "nested/subfol1/subfol2/local.txt" should be downloaded
|
||||
|
||||
# create local files and folders in "Free up space" folder
|
||||
When user "Alice" creates a folder "nested/localFol" inside the sync folder
|
||||
And user "Alice" creates a file "nested/local.txt" with the following content inside the sync folder
|
||||
"""
|
||||
local file
|
||||
"""
|
||||
And the user waits for folder "nested/localFol" to be synced
|
||||
And the user waits for file "nested/local.txt" to be synced
|
||||
Then the file "nested/local.txt" should be downloaded
|
||||
|
||||
# upload files to "Always keep on this device" folder in the server
|
||||
When user "Alice" uploads file with content "server content" to "nested/subfol1/subfol2/localFol/fromServer.txt" in the server
|
||||
And the user waits for file "nested/subfol1/subfol2/localFol/fromServer.txt" to be synced
|
||||
Then the file "nested/subfol1/subfol2/localFol/fromServer.txt" should be downloaded
|
||||
|
||||
# upload files to "Free up space" folder in the server
|
||||
When user "Alice" uploads file with content "server content" to "nested/fromServer.txt" in the server
|
||||
And user "Alice" uploads file with content "server content" to "nested/localFol/fromServer.txt" in the server
|
||||
And the user waits for file "nested/localFol/fromServer.txt" to be synced
|
||||
Then the placeholder file "nested/fromServer.txt" should exist on the file system
|
||||
And the placeholder file "nested/localFol/fromServer.txt" should exist on the file system
|
||||
|
||||
# mark sub folder as "Free up space"
|
||||
When user "Alice" marks folder "nested/subfol1/subfol2" as "Free up space" from the file explorer
|
||||
And the user waits for folder "nested/subfol1/subfol2" to be synced
|
||||
Then the placeholder file "nested/subfol1/subfol2/subfile2.txt" should exist on the file system
|
||||
And the placeholder file "nested/subfol1/subfol2/local.txt" should exist on the file system
|
||||
And the placeholder file "nested/subfol1/subfol2/localFol/fromServer.txt" should exist on the file system
|
||||
And the placeholder file "nested/subfol1/subfol2/subfol3/subfile3.txt" should exist on the file system
|
||||
And the placeholder file "nested/subfol1/subfol2/subfol3/subfol4/subfile4.txt" should exist on the file system
|
||||
And the file "nested/subfol1/subfile1.txt" should be downloaded
|
||||
Reference in New Issue
Block a user