Merge pull request #439 from owncloud/add-bug-demo-scenarios

[Tests-Only] Add bug demo scenarios
This commit is contained in:
Phil Davis
2020-08-12 13:10:37 +05:45
committed by GitHub
37 changed files with 1587 additions and 235 deletions
+8 -7
View File
@@ -1,7 +1,7 @@
config = {
'apiTests': {
'coreBranch': 'master',
'coreCommit': '5d8d76600f451b985662024f730cee1a40444c7f',
'coreCommit': 'aa87e9c07c5558387c37921d850e8d8e99d6cd45',
'numberOfParts': 2
},
'uiTests': {
@@ -85,7 +85,7 @@ def testPipelines(ctx):
pipelines = [
linting(ctx),
unitTests(ctx),
localApiTests(ctx, config['apiTests']['coreBranch'], config['apiTests']['coreCommit'])
localApiTestsOcStorage(ctx, config['apiTests']['coreBranch'], config['apiTests']['coreCommit'])
]
for runPart in range(1, config['apiTests']['numberOfParts'] + 1):
@@ -203,11 +203,11 @@ def unitTests(ctx):
},
}
def localApiTests(ctx, coreBranch = 'master', coreCommit = ''):
def localApiTestsOcStorage(ctx, coreBranch = 'master', coreCommit = ''):
return {
'kind': 'pipeline',
'type': 'docker',
'name': 'localApiTests',
'name': 'localApiTestsOcStorage',
'platform': {
'os': 'linux',
'arch': 'amd64',
@@ -218,7 +218,7 @@ def localApiTests(ctx, coreBranch = 'master', coreCommit = ''):
ocisServer() +
cloneCoreRepos(coreBranch, coreCommit) + [
{
'name': 'LocalApiTests',
'name': 'localApiTestsOcStorage',
'image': 'owncloudci/php:7.2',
'pull': 'always',
'environment' : {
@@ -228,6 +228,7 @@ def localApiTests(ctx, coreBranch = 'master', coreCommit = ''):
'TEST_EXTERNAL_USER_BACKENDS':'true',
'REVA_LDAP_HOSTNAME':'ldap',
'TEST_OCIS':'true',
'BEHAT_FILTER_TAGS': '~@skipOnOcis-OC-Storage',
'PATH_TO_CORE': '/srv/app/testrunner'
},
'commands': [
@@ -462,7 +463,7 @@ def docker(ctx, arch):
'depends_on': [
'linting',
'unitTests',
'localApiTests',
'localApiTestsOcStorage',
] + getCoreApiTestPipelineNames() + getUITestSuiteNames(),
'trigger': {
'ref': [
@@ -608,7 +609,7 @@ def binary(ctx, name):
'depends_on': [
'linting',
'unitTests',
'localApiTests',
'localApiTestsOcStorage',
] + getCoreApiTestPipelineNames() + getUITestSuiteNames(),
'trigger': {
'ref': [
+4
View File
@@ -21,7 +21,11 @@ default:
adminPassword: admin
regularUserPassword: 123456
ocPath: apps/testing/api/v1/occ
- CapabilitiesContext:
- ChecksumContext:
- FavoritesContext:
- FilesVersionsContext:
- PublicWebDavContext:
- WebDavPropertiesContext:
extensions:
+203 -228
View File
@@ -3,86 +3,66 @@
# These scenarios are failing because owncloud/ocis code is out-of-date
# They should start passing when owncloud/ocis is next updated from owncloud/ocis-reva
#
apiSharePublicLink2/updatePublicLinkShare.feature:118
apiSharePublicLink2/updatePublicLinkShare.feature:119
apiSharePublicLink2/updatePublicLinkShare.feature:183
apiSharePublicLink2/updatePublicLinkShare.feature:184
apiSharePublicLink2/updatePublicLinkShare.feature:214
apiSharePublicLink2/updatePublicLinkShare.feature:215
apiSharePublicLink2/updatePublicLinkShare.feature:245
apiSharePublicLink2/updatePublicLinkShare.feature:246
apiSharePublicLink2/updatePublicLinkShare.feature:276
apiSharePublicLink2/updatePublicLinkShare.feature:277
apiSharePublicLink2/updatePublicLinkShare.feature:307
apiSharePublicLink2/updatePublicLinkShare.feature:308
apiShareUpdate/updateShare.feature:335
apiShareUpdate/updateShare.feature:336
apiSharePublicLink2/updatePublicLinkShare.feature:77
apiSharePublicLink2/updatePublicLinkShare.feature:78
apiSharePublicLink2/updatePublicLinkShare.feature:142
apiSharePublicLink2/updatePublicLinkShare.feature:143
apiSharePublicLink2/updatePublicLinkShare.feature:173
apiSharePublicLink2/updatePublicLinkShare.feature:174
apiSharePublicLink2/updatePublicLinkShare.feature:204
apiSharePublicLink2/updatePublicLinkShare.feature:205
apiSharePublicLink2/updatePublicLinkShare.feature:235
apiSharePublicLink2/updatePublicLinkShare.feature:236
apiSharePublicLink2/updatePublicLinkShare.feature:266
apiSharePublicLink2/updatePublicLinkShare.feature:267
#
# test scenarios that fail with OC storage (that were tagged skipOnOcis-OC-Storage in core)
#
apiFavorites/favorites.feature:39
apiFavorites/favorites.feature:40
apiShareManagementBasic/createShare.feature:121
apiShareManagementBasic/createShare.feature:122
apiShareManagementBasic/createShare.feature:124
apiShareManagementBasic/createShare.feature:125
apiShareManagementBasic/createShare.feature:127
apiShareManagementBasic/createShare.feature:128
apiShareManagementBasic/createShare.feature:130
apiShareManagementBasic/createShare.feature:131
apiShareManagementBasic/createShare.feature:223
apiShareManagementBasic/createShare.feature:224
apiShareManagementBasic/createShare.feature:447
apiShareManagementBasic/createShare.feature:589
apiShareManagementBasic/createShare.feature:604
apiShareManagementBasic/createShare.feature:619
apiShareManagementBasic/createShare.feature:336
apiShareManagementBasic/createShare.feature:357
apiShareManagementBasic/createShare.feature:478
apiShareManagementBasic/createShare.feature:493
apiShareManagementBasic/createShare.feature:508
apiShareOperations/gettingShares.feature:155
apiShareOperations/gettingShares.feature:156
apiSharePublicLink2/multilinkSharing.feature:181
apiWebdavMove2/moveFile.feature:316
apiWebdavProperties1/setFileProperties.feature:32
apiWebdavProperties1/setFileProperties.feature:33
apiWebdavProperties2/getFileProperties.feature:84
apiWebdavProperties2/getFileProperties.feature:85
apiWebdavProperties2/getFileProperties.feature:166
apiWebdavProperties2/getFileProperties.feature:167
apiWebdavUpload1/uploadFile.feature:63
apiWebdavUpload1/uploadFile.feature:64
#
# https://github.com/owncloud/ocis-reva/issues/196 Checksum feature
apiMain/checksums.feature:24
apiMain/checksums.feature:25
apiMain/checksums.feature:35
apiMain/checksums.feature:36
apiMain/checksums.feature:60
apiMain/checksums.feature:61
apiMain/checksums.feature:64
apiMain/checksums.feature:72
apiMain/checksums.feature:81
apiMain/checksums.feature:113
apiMain/checksums.feature:114
apiMain/checksums.feature:117
apiMain/checksums.feature:124
apiMain/checksums.feature:144
apiMain/checksums.feature:154
apiMain/checksums.feature:163
apiMain/checksums.feature:172
apiMain/checksums.feature:183
apiMain/checksums.feature:199
apiMain/checksums.feature:46
apiMain/checksums.feature:47
apiMain/checksums.feature:50
apiMain/checksums.feature:58
apiMain/checksums.feature:67
apiMain/checksums.feature:99
apiMain/checksums.feature:100
apiMain/checksums.feature:103
apiMain/checksums.feature:110
apiMain/checksums.feature:119
apiMain/checksums.feature:129
apiMain/checksums.feature:138
apiMain/checksums.feature:147
apiMain/checksums.feature:158
apiMain/checksums.feature:174
apiMain/checksums.feature:192
apiMain/checksums.feature:217
apiMain/checksums.feature:242
apiMain/checksums.feature:243
apiMain/checksums.feature:277
apiMain/checksums.feature:278
apiMain/checksums.feature:310
apiMain/checksums.feature:331
apiMain/checksums.feature:332
apiMain/checksums.feature:347
apiMain/checksums.feature:348
apiMain/checksums.feature:360
apiMain/checksums.feature:361
apiMain/checksums.feature:364
apiMain/checksums.feature:376
apiMain/checksums.feature:218
apiMain/checksums.feature:239
apiMain/checksums.feature:240
apiMain/checksums.feature:258
apiMain/checksums.feature:279
apiMain/checksums.feature:280
apiMain/checksums.feature:295
apiMain/checksums.feature:296
apiMain/checksums.feature:308
apiMain/checksums.feature:309
apiMain/checksums.feature:312
apiMain/checksums.feature:324
#
# https://github.com/owncloud/ocis-reva/issues/100 no robots.txt available
apiMain/main.feature:5
@@ -108,10 +88,10 @@ apiMain/status.feature:5
apiAuthOcs/ocsDELETEAuth.feature:9
apiAuthOcs/ocsGETAuth.feature:10
apiAuthOcs/ocsGETAuth.feature:33
apiAuthOcs/ocsGETAuth.feature:82
apiAuthOcs/ocsGETAuth.feature:171
apiAuthOcs/ocsGETAuth.feature:234
apiAuthOcs/ocsGETAuth.feature:252
apiAuthOcs/ocsGETAuth.feature:53
apiAuthOcs/ocsGETAuth.feature:88
apiAuthOcs/ocsGETAuth.feature:121
apiAuthOcs/ocsGETAuth.feature:139
apiAuthOcs/ocsPOSTAuth.feature:10
apiAuthOcs/ocsPUTAuth.feature:10
#
@@ -141,11 +121,11 @@ apiAuthWebDav/webDavPUTAuth.feature:38
#
# https://github.com/owncloud/ocis-reva/issues/175 Default capabilities for normal user not same as in oC-core
# https://github.com/owncloud/ocis-reva/issues/176 Difference in response content of status.php and default capabilities
apiCapabilities/capabilitiesWithNormalUser.feature:52
apiCapabilities/capabilitiesWithNormalUser.feature:11
#
# https://github.com/owncloud/ocis-reva/issues/39 REPORT request not implemented
apiFavorites/favorites.feature:239
apiFavorites/favorites.feature:240
apiFavorites/favorites.feature:228
apiFavorites/favorites.feature:229
#
# https://github.com/owncloud/ocis-reva/issues/34 groups endpoint does not exist
apiSharees/sharees.feature:32
@@ -202,13 +182,12 @@ apiSharees/sharees.feature:537
apiSharees/sharees.feature:538
#
# https://github.com/owncloud/ocis-reva/issues/34 groups endpoint does not exist
apiShareManagementBasic/createShare.feature:247
apiShareManagementBasic/createShare.feature:248
apiShareManagementBasic/createShare.feature:272
apiShareManagementBasic/createShare.feature:273
apiShareManagementBasic/createShare.feature:468
apiShareManagementBasic/createShare.feature:528
apiShareManagementBasic/createShare.feature:529
apiShareManagementBasic/createShare.feature:169
apiShareManagementBasic/createShare.feature:170
apiShareManagementBasic/createShare.feature:194
apiShareManagementBasic/createShare.feature:195
apiShareManagementBasic/createShare.feature:417
apiShareManagementBasic/createShare.feature:418
#
# https://github.com/owncloud/ocis-reva/issues/356 Fields missing in delete share OCS response
apiShareManagementBasic/deleteShare.feature:36
@@ -220,8 +199,8 @@ apiShareOperations/accessToShare.feature:49
#
# https://github.com/owncloud/ocis-reva/issues/34 groups endpoint does not exist
# https://github.com/owncloud/ocis-reva/issues/194 Group shares support
apiShareOperations/accessToShare.feature:78
apiShareOperations/accessToShare.feature:79
apiShareOperations/accessToShare.feature:63
apiShareOperations/accessToShare.feature:64
#
# https://github.com/owncloud/ocis-reva/issues/262 Shares are not deleted when user is deleted
apiShareOperations/gettingShares.feature:21
@@ -242,17 +221,17 @@ apiShareOperations/gettingShares.feature:168
apiShareOperations/gettingShares.feature:169
#
# https://github.com/owncloud/ocis-reva/issues/194 Group shares support
apiShareOperations/gettingShares.feature:187
apiShareOperations/gettingShares.feature:172
#
# https://github.com/owncloud/ocis-reva/issues/372 Listing shares via ocs API does not show path for parent folders
apiShareOperations/gettingShares.feature:219
apiShareOperations/gettingShares.feature:220
apiShareOperations/gettingShares.feature:204
apiShareOperations/gettingShares.feature:205
#
# https://github.com/owncloud/ocis-reva/issues/47 cannot get ocs:share-permissions via WebDAV
apiShareOperations/getWebDAVSharePermissions.feature:21
apiShareOperations/getWebDAVSharePermissions.feature:22
apiShareOperations/getWebDAVSharePermissions.feature:148
apiShareOperations/getWebDAVSharePermissions.feature:149
apiShareOperations/getWebDAVSharePermissions.feature:134
apiShareOperations/getWebDAVSharePermissions.feature:135
#
# https://github.com/owncloud/ocis-reva/issues/282 Split old public API webdav tests from new public webdav tests
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
@@ -373,10 +352,10 @@ apiSharePublicLink1/createPublicLinkShare.feature:718
apiSharePublicLink1/createPublicLinkShare.feature:727
#
# https://github.com/owncloud/core/issues/37605 Public cannot upload file with mtime set on a public link share with new version of WebDAV API
apiSharePublicLink1/createPublicLinkShare.feature:790
apiSharePublicLink1/createPublicLinkShare.feature:779
#
# https://github.com/owncloud/core/issues/37605 Public cannot upload file with mtime set on a public link share with new version of WebDAV API
apiSharePublicLink1/createPublicLinkShare.feature:816
apiSharePublicLink1/createPublicLinkShare.feature:793
#
# https://github.com/owncloud/ocis-reva/issues/311 Deleting a public link after renaming a file
apiSharePublicLink1/deletePublicLinkShare.feature:37
@@ -386,53 +365,53 @@ apiSharePublicLink1/deletePublicLinkShare.feature:38
apiSharePublicLink2/copyFromPublicLink.feature:60
#
# https://github.com/owncloud/ocis-reva/issues/368 copying a file from within a public link folder to "/" overwrites the parent folder
apiSharePublicLink2/copyFromPublicLink.feature:198
apiSharePublicLink2/copyFromPublicLink.feature:199
apiSharePublicLink2/copyFromPublicLink.feature:167
apiSharePublicLink2/copyFromPublicLink.feature:168
#
# https://github.com/owncloud/ocis-reva/issues/368 copying a file from within a public link folder to "/" overwrites the parent folder
apiSharePublicLink2/copyFromPublicLink.feature:230
apiSharePublicLink2/copyFromPublicLink.feature:231
apiSharePublicLink2/copyFromPublicLink.feature:183
apiSharePublicLink2/copyFromPublicLink.feature:184
#
apiSharePublicLink2/updatePublicLinkShare.feature:135
apiSharePublicLink2/updatePublicLinkShare.feature:136
apiSharePublicLink2/updatePublicLinkShare.feature:94
apiSharePublicLink2/updatePublicLinkShare.feature:95
#
apiSharePublicLink2/updatePublicLinkShare.feature:326
apiSharePublicLink2/updatePublicLinkShare.feature:327
apiSharePublicLink2/updatePublicLinkShare.feature:285
apiSharePublicLink2/updatePublicLinkShare.feature:286
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiSharePublicLink2/updatePublicLinkShare.feature:345
apiSharePublicLink2/updatePublicLinkShare.feature:346
apiSharePublicLink2/updatePublicLinkShare.feature:304
apiSharePublicLink2/updatePublicLinkShare.feature:305
#
apiSharePublicLink2/updatePublicLinkShare.feature:364
apiSharePublicLink2/updatePublicLinkShare.feature:365
apiSharePublicLink2/updatePublicLinkShare.feature:323
apiSharePublicLink2/updatePublicLinkShare.feature:324
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiSharePublicLink2/updatePublicLinkShare.feature:383
apiSharePublicLink2/updatePublicLinkShare.feature:384
apiSharePublicLink2/updatePublicLinkShare.feature:342
apiSharePublicLink2/updatePublicLinkShare.feature:343
#
apiSharePublicLink2/updatePublicLinkShare.feature:402
apiSharePublicLink2/updatePublicLinkShare.feature:403
apiSharePublicLink2/updatePublicLinkShare.feature:361
apiSharePublicLink2/updatePublicLinkShare.feature:362
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiSharePublicLink2/updatePublicLinkShare.feature:421
apiSharePublicLink2/updatePublicLinkShare.feature:422
apiSharePublicLink2/updatePublicLinkShare.feature:380
apiSharePublicLink2/updatePublicLinkShare.feature:381
#
apiSharePublicLink2/updatePublicLinkShare.feature:399
apiSharePublicLink2/updatePublicLinkShare.feature:400
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiSharePublicLink2/updatePublicLinkShare.feature:418
apiSharePublicLink2/updatePublicLinkShare.feature:419
#
apiSharePublicLink2/updatePublicLinkShare.feature:440
apiSharePublicLink2/updatePublicLinkShare.feature:441
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiSharePublicLink2/updatePublicLinkShare.feature:459
apiSharePublicLink2/updatePublicLinkShare.feature:460
#
apiSharePublicLink2/updatePublicLinkShare.feature:481
apiSharePublicLink2/updatePublicLinkShare.feature:482
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
apiSharePublicLink2/updatePublicLinkShare.feature:503
apiSharePublicLink2/updatePublicLinkShare.feature:504
apiSharePublicLink2/updatePublicLinkShare.feature:462
apiSharePublicLink2/updatePublicLinkShare.feature:463
#
apiSharePublicLink2/updatePublicLinkShare.feature:528
apiSharePublicLink2/updatePublicLinkShare.feature:529
apiSharePublicLink2/updatePublicLinkShare.feature:487
apiSharePublicLink2/updatePublicLinkShare.feature:488
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:9
#
@@ -447,62 +426,62 @@ apiSharePublicLink2/uploadToPublicLinkShare.feature:62
apiSharePublicLink2/uploadToPublicLinkShare.feature:63
#
# https://github.com/owncloud/ocis-reva/issues/290 Accessing non-existing public link should return 404, not 500
apiSharePublicLink2/uploadToPublicLinkShare.feature:77
apiSharePublicLink2/uploadToPublicLinkShare.feature:66
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
apiSharePublicLink2/uploadToPublicLinkShare.feature:85
apiSharePublicLink2/uploadToPublicLinkShare.feature:74
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:94
apiSharePublicLink2/uploadToPublicLinkShare.feature:83
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:114
apiSharePublicLink2/uploadToPublicLinkShare.feature:103
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:132
apiSharePublicLink2/uploadToPublicLinkShare.feature:121
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:150
apiSharePublicLink2/uploadToPublicLinkShare.feature:139
#
# https://github.com/owncloud/ocis-reva/issues/195 Set quota over settings
apiSharePublicLink2/uploadToPublicLinkShare.feature:159
apiSharePublicLink2/uploadToPublicLinkShare.feature:148
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:169
apiSharePublicLink2/uploadToPublicLinkShare.feature:158
#
# https://github.com/owncloud/ocis-reva/issues/195 Set quota over settings
apiSharePublicLink2/uploadToPublicLinkShare.feature:178
apiSharePublicLink2/uploadToPublicLinkShare.feature:167
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:188
apiSharePublicLink2/uploadToPublicLinkShare.feature:177
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink2/uploadToPublicLinkShare.feature:197
apiSharePublicLink2/uploadToPublicLinkShare.feature:186
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:207
apiSharePublicLink2/uploadToPublicLinkShare.feature:196
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink2/uploadToPublicLinkShare.feature:206
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:217
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:228
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink2/uploadToPublicLinkShare.feature:227
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:238
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:249
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:266
apiSharePublicLink2/uploadToPublicLinkShare.feature:255
#
# https://github.com/owncloud/ocis-reva/issues/286 Upload-only shares must not overwrite but create a separate file
apiSharePublicLink2/uploadToPublicLinkShare.feature:284
apiSharePublicLink2/uploadToPublicLinkShare.feature:273
#
# https://github.com/owncloud/ocis-reva/issues/17 uploading with old-chunking does not work
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiVersions/fileVersions.feature:15
apiVersions/fileVersions.feature:32
apiVersions/fileVersions.feature:23
apiVersions/fileVersions.feature:36
apiVersions/fileVersions.feature:45
apiVersions/fileVersions.feature:64
apiVersions/fileVersions.feature:107
apiVersions/fileVersions.feature:108
apiVersions/fileVersions.feature:112
apiVersions/fileVersions.feature:123
apiVersions/fileVersions.feature:334
apiVersions/fileVersions.feature:464
apiVersions/fileVersions.feature:488
apiVersions/fileVersions.feature:88
apiVersions/fileVersions.feature:89
apiVersions/fileVersions.feature:93
apiVersions/fileVersions.feature:104
apiVersions/fileVersions.feature:288
apiVersions/fileVersions.feature:362
apiVersions/fileVersions.feature:373
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFileAsync.feature:26
@@ -546,18 +525,18 @@ apiWebdavMove1/moveFileToExcludedDirectoryAsync.feature:27
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFolder.feature:21
apiWebdavMove1/moveFolder.feature:22
apiWebdavMove1/moveFolder.feature:46
apiWebdavMove1/moveFolder.feature:34
apiWebdavMove1/moveFolder.feature:35
apiWebdavMove1/moveFolder.feature:47
apiWebdavMove1/moveFolder.feature:71
apiWebdavMove1/moveFolder.feature:72
apiWebdavMove1/moveFolder.feature:48
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFolderToBlacklistedName.feature:21
apiWebdavMove1/moveFolderToBlacklistedName.feature:22
apiWebdavMove1/moveFolderToBlacklistedName.feature:48
apiWebdavMove1/moveFolderToBlacklistedName.feature:49
apiWebdavMove1/moveFolderToBlacklistedName.feature:83
apiWebdavMove1/moveFolderToBlacklistedName.feature:84
apiWebdavMove1/moveFolderToBlacklistedName.feature:35
apiWebdavMove1/moveFolderToBlacklistedName.feature:36
apiWebdavMove1/moveFolderToBlacklistedName.feature:70
apiWebdavMove1/moveFolderToBlacklistedName.feature:71
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFolderToExcludedDirectory.feature:21
@@ -586,18 +565,18 @@ apiWebdavMove2/moveFile.feature:200
apiWebdavMove2/moveFile.feature:201
apiWebdavMove2/moveFile.feature:219
apiWebdavMove2/moveFile.feature:220
apiWebdavMove2/moveFile.feature:267
apiWebdavMove2/moveFile.feature:268
apiWebdavMove2/moveFile.feature:284
apiWebdavMove2/moveFile.feature:285
apiWebdavMove2/moveFile.feature:255
apiWebdavMove2/moveFile.feature:256
apiWebdavMove2/moveFile.feature:272
apiWebdavMove2/moveFile.feature:273
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove2/moveFileToBlacklistedName.feature:18
apiWebdavMove2/moveFileToBlacklistedName.feature:19
apiWebdavMove2/moveFileToBlacklistedName.feature:41
apiWebdavMove2/moveFileToBlacklistedName.feature:42
apiWebdavMove2/moveFileToBlacklistedName.feature:74
apiWebdavMove2/moveFileToBlacklistedName.feature:75
apiWebdavMove2/moveFileToBlacklistedName.feature:29
apiWebdavMove2/moveFileToBlacklistedName.feature:30
apiWebdavMove2/moveFileToBlacklistedName.feature:62
apiWebdavMove2/moveFileToBlacklistedName.feature:63
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove2/moveFileToExcludedDirectory.feature:18
@@ -628,8 +607,8 @@ apiWebdavOperations/downloadFile.feature:85
apiWebdavOperations/refuseAccess.feature:21
apiWebdavOperations/refuseAccess.feature:22
#
apiWebdavOperations/refuseAccess.feature:47
apiWebdavOperations/refuseAccess.feature:48
apiWebdavOperations/refuseAccess.feature:33
apiWebdavOperations/refuseAccess.feature:34
#
# https://github.com/owncloud/ocis-reva/issues/39 REPORT request not implemented
apiWebdavOperations/search.feature:42
@@ -720,8 +699,8 @@ apiWebdavProperties1/createFolder.feature:85
apiWebdavProperties1/createFolder.feature:86
#
# https://github.com/owncloud/ocis-reva/issues/168 creating a folder that already exists returns an empty body
apiWebdavProperties1/createFolder.feature:113
apiWebdavProperties1/createFolder.feature:114
apiWebdavProperties1/createFolder.feature:99
apiWebdavProperties1/createFolder.feature:100
#
# https://github.com/owncloud/ocis-reva/issues/101 quota query
apiWebdavProperties1/getQuota.feature:17
@@ -736,12 +715,8 @@ apiWebdavProperties1/getQuota.feature:77
apiWebdavProperties1/getQuota.feature:78
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties1/setFileProperties.feature:44
apiWebdavProperties1/setFileProperties.feature:45
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties1/setFileProperties.feature:75
apiWebdavProperties1/setFileProperties.feature:76
apiWebdavProperties1/setFileProperties.feature:63
apiWebdavProperties1/setFileProperties.feature:64
#
# https://github.com/owncloud/ocis-reva/issues/214 XML properties in webdav response not properly encoded
apiWebdavProperties2/getFileProperties.feature:37
@@ -752,93 +727,93 @@ apiWebdavProperties2/getFileProperties.feature:43
apiWebdavProperties2/getFileProperties.feature:44
#
# https://github.com/owncloud/ocis-reva/issues/214 XML properties in webdav response not properly encoded
apiWebdavProperties2/getFileProperties.feature:100
apiWebdavProperties2/getFileProperties.feature:101
apiWebdavProperties2/getFileProperties.feature:102
apiWebdavProperties2/getFileProperties.feature:104
apiWebdavProperties2/getFileProperties.feature:105
apiWebdavProperties2/getFileProperties.feature:107
apiWebdavProperties2/getFileProperties.feature:108
apiWebdavProperties2/getFileProperties.feature:109
apiWebdavProperties2/getFileProperties.feature:111
apiWebdavProperties2/getFileProperties.feature:112
apiWebdavProperties2/getFileProperties.feature:59
apiWebdavProperties2/getFileProperties.feature:60
apiWebdavProperties2/getFileProperties.feature:61
apiWebdavProperties2/getFileProperties.feature:63
apiWebdavProperties2/getFileProperties.feature:64
apiWebdavProperties2/getFileProperties.feature:66
apiWebdavProperties2/getFileProperties.feature:67
apiWebdavProperties2/getFileProperties.feature:68
apiWebdavProperties2/getFileProperties.feature:70
apiWebdavProperties2/getFileProperties.feature:71
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:231
apiWebdavProperties2/getFileProperties.feature:135
apiWebdavProperties2/getFileProperties.feature:136
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:156
apiWebdavProperties2/getFileProperties.feature:157
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:174
apiWebdavProperties2/getFileProperties.feature:175
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:206
apiWebdavProperties2/getFileProperties.feature:207
#
apiWebdavProperties2/getFileProperties.feature:218
apiWebdavProperties2/getFileProperties.feature:219
#
# https://github.com/owncloud/ocis-reva/issues/216 Private link support
apiWebdavProperties2/getFileProperties.feature:232
apiWebdavProperties2/getFileProperties.feature:233
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:252
apiWebdavProperties2/getFileProperties.feature:253
# https://github.com/owncloud/ocis-reva/issues/163 trying to access a non-existing resource returns an empty body
apiWebdavProperties2/getFileProperties.feature:242
apiWebdavProperties2/getFileProperties.feature:243
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:270
apiWebdavProperties2/getFileProperties.feature:271
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:246
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:266
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:301
apiWebdavProperties2/getFileProperties.feature:302
apiWebdavProperties2/getFileProperties.feature:303
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:314
apiWebdavProperties2/getFileProperties.feature:315
#
# https://github.com/owncloud/ocis-reva/issues/216 Private link support
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:327
apiWebdavProperties2/getFileProperties.feature:328
apiWebdavProperties2/getFileProperties.feature:329
#
# https://github.com/owncloud/ocis-reva/issues/163 trying to access a non-existing resource returns an empty body
apiWebdavProperties2/getFileProperties.feature:338
apiWebdavProperties2/getFileProperties.feature:339
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:352
apiWebdavProperties2/getFileProperties.feature:376
apiWebdavProperties2/getFileProperties.feature:377
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:372
apiWebdavProperties2/getFileProperties.feature:389
apiWebdavProperties2/getFileProperties.feature:390
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:407
apiWebdavProperties2/getFileProperties.feature:408
apiWebdavProperties2/getFileProperties.feature:402
apiWebdavProperties2/getFileProperties.feature:403
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:420
apiWebdavProperties2/getFileProperties.feature:421
apiWebdavProperties2/getFileProperties.feature:415
apiWebdavProperties2/getFileProperties.feature:416
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:433
apiWebdavProperties2/getFileProperties.feature:434
apiWebdavProperties2/getFileProperties.feature:428
apiWebdavProperties2/getFileProperties.feature:429
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:482
apiWebdavProperties2/getFileProperties.feature:483
apiWebdavProperties2/getFileProperties.feature:441
apiWebdavProperties2/getFileProperties.feature:442
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:495
apiWebdavProperties2/getFileProperties.feature:496
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:508
apiWebdavProperties2/getFileProperties.feature:509
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:521
apiWebdavProperties2/getFileProperties.feature:522
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:534
apiWebdavProperties2/getFileProperties.feature:535
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:547
apiWebdavProperties2/getFileProperties.feature:548
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:560
apiWebdavProperties2/getFileProperties.feature:561
apiWebdavProperties2/getFileProperties.feature:454
apiWebdavProperties2/getFileProperties.feature:455
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavUpload1/uploadFile.feature:123
apiWebdavUpload1/uploadFile.feature:124
apiWebdavUpload1/uploadFile.feature:112
apiWebdavUpload1/uploadFile.feature:113
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:14
@@ -0,0 +1,21 @@
@api
Feature: LOCK file/folder
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "some data" to "/textfile0.txt"
And user "Alice" has uploaded file with content "some data" to "/textfile1.txt"
And user "Alice" has created folder "/PARENT"
And user "Alice" has created folder "/FOLDER"
And user "Alice" has uploaded file with content "some data" to "/PARENT/parent.txt"
And user "Brian" has been created with default attributes and without skeleton files
@issue-ocis-reva-9
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send LOCK requests to another user's webDav endpoints as normal user
When user "Brian" requests these endpoints with "LOCK" to get property "d:shared" about user "Alice"
| endpoint |
| /remote.php/dav/files/%username%/textfile0.txt |
| /remote.php/dav/files/%username%/PARENT |
| /remote.php/dav/files/%username%/PARENT/parent.txt |
Then the HTTP status code of responses on all endpoints should be "200"
@@ -0,0 +1,20 @@
@api
Feature: MOVE file/folder
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "some data" to "/textfile0.txt"
And user "Alice" has created folder "/PARENT"
And user "Alice" has created folder "/FOLDER"
And user "Alice" has uploaded file with content "some data" to "/PARENT/parent.txt"
And user "Brian" has been created with default attributes and without skeleton files
@issue-ocis-reva-14
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send MOVE requests to another user's webDav endpoints as normal user
When user "Brian" requests these endpoints with "MOVE" including body "doesnotmatter" about user "Alice"
| endpoint |
| /remote.php/dav/files/%username%/textfile0.txt |
| /remote.php/dav/files/%username%/PARENT |
| /remote.php/dav/files/%username%/PARENT/parent.txt |
Then the HTTP status code of responses on all endpoints should be "400"
@@ -0,0 +1,20 @@
@api
Feature: get file info using PROPFIND
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "some data" to "/textfile0.txt"
And user "Alice" has created folder "/PARENT"
And user "Alice" has created folder "/FOLDER"
And user "Alice" has uploaded file with content "some data" to "/PARENT/parent.txt"
And user "Brian" has been created with default attributes and without skeleton files
@issue-ocis-reva-9 @skipOnOcis-EOS-Storage @issue-ocis-reva-303
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send PROPFIND requests to another user's webDav endpoints as normal user
When user "Brian" requests these endpoints with "PROPFIND" to get property "d:getetag" about user "Alice"
| endpoint |
| /remote.php/dav/files/%username%/textfile0.txt |
| /remote.php/dav/files/%username%/PARENT |
| /remote.php/dav/files/%username%/PARENT/parent.txt |
Then the HTTP status code of responses on all endpoints should be "207"
@@ -0,0 +1,48 @@
@api @files_sharing-app-required
Feature: default capabilities for normal user
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-175 @issue-ocis-reva-176
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: getting default capabilities with normal user
When user "Alice" retrieves the capabilities using the capabilities API
Then the capabilities should contain
| capability | path_to_element | value |
| core | pollinterval | 60 |
| core | webdav-root | remote.php/webdav |
| core | status@@@edition | %edition% |
| core | status@@@productname | reva |
| core | status@@@version | 10.0.11.5 |
| core | status@@@versionstring | 10.0.11 |
| files_sharing | api_enabled | 1 |
| files_sharing | default_permissions | 22 |
| files_sharing | search_min_length | 3 |
| files_sharing | public@@@enabled | 1 |
| files_sharing | public@@@multiple | 1 |
| files_sharing | public@@@upload | 1 |
| files_sharing | public@@@supports_upload_only | 1 |
| files_sharing | public@@@send_mail | 1 |
| files_sharing | public@@@social_share | 1 |
| files_sharing | public@@@enforced | EMPTY |
| files_sharing | public@@@enforced_for@@@read_only | EMPTY |
| files_sharing | public@@@enforced_for@@@read_write | EMPTY |
| files_sharing | public@@@enforced_for@@@upload_only | EMPTY |
| files_sharing | public@@@enforced_for@@@read_write_delete | EMPTY |
| files_sharing | public@@@expire_date@@@enabled | 1 |
| files_sharing | public@@@defaultPublicLinkShareName | EMPTY |
| files_sharing | resharing | 1 |
| files_sharing | federation@@@outgoing | 1 |
| files_sharing | federation@@@incoming | 1 |
| files_sharing | group_sharing | 1 |
| files_sharing | share_with_group_members_only | 1 |
| files_sharing | share_with_membership_groups_only | 1 |
| files_sharing | auto_accept_share | 1 |
| files_sharing | user_enumeration@@@enabled | 1 |
| files_sharing | user_enumeration@@@group_members_only | 1 |
| files_sharing | user@@@send_mail | 1 |
| files | bigfilechunking | 0 |
| files | privateLinks | 0 |
| files | privateLinksDetailsParam | EMPTY |
@@ -0,0 +1,25 @@
@api
Feature: favorite
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "some data" to "/textfile0.txt"
And user "Alice" has uploaded file with content "some data" to "/textfile1.txt"
And user "Alice" has uploaded file with content "some data" to "/textfile2.txt"
And user "Alice" has uploaded file with content "some data" to "/textfile3.txt"
And user "Alice" has uploaded file with content "some data" to "/textfile4.txt"
And user "Alice" has created folder "/FOLDER"
And user "Alice" has created folder "/PARENT"
And user "Alice" has uploaded file with content "some data" to "/PARENT/parent.txt"
@skipOnOcis-OC-Storage @issue-ocis-reva-276
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Favorite a folder
Given using <dav_version> DAV path
When user "Alice" favorites element "/FOLDER" using the WebDAV API
Then the HTTP status code should be "500"
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,57 @@
@api
Feature: checksums
Background:
Given user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-98
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Uploading a file with checksum should return the checksum in the download header
Given using <dav_version> DAV path
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
When user "Alice" downloads file "/myChecksumFile.txt" using the WebDAV API
Then the following headers should not be set
| header |
| OC-Checksum |
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-98
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Copying file with checksum should return the checksum in the download header using new DAV path
Given using new DAV path
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/myChecksumFile.txt" with checksum "MD5:d70b40f177b14b470d1756a3c12b963a"
When user "Alice" copies file "/myChecksumFile.txt" to "/myChecksumFileCopy.txt" using the WebDAV API
And user "Alice" downloads file "/myChecksumFileCopy.txt" using the WebDAV API
Then the following headers should not be set
| header |
| OC-Checksum |
@issue-ocis-reva-99
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Upload a file where checksum does not match
Given using <dav_version> DAV path
When user "Alice" uploads file with checksum "SHA1:f005ba11" and content "Some Text" to "/chksumtst.txt" using the WebDAV API
Then the HTTP status code should be "201"
And user "Alice" should see the following elements
| /chksumtst.txt |
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-99
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Uploaded file should have the same checksum when downloaded
Given using <dav_version> DAV path
And user "Alice" has uploaded file with checksum "SHA1:ce5582148c6f0c1282335b87df5ed4be4b781399" and content "Some Text" to "/chksumtst.txt"
When user "Alice" downloads file "/chksumtst.txt" using the WebDAV API
Then the following headers should not be set
| header |
| OC-Checksum |
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,8 @@
@api
Feature: Other tests related to api
@issue-ocis-reva-100
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: robots.txt file should be accessible
When a user requests "/robots.txt" with "GET" and no authentication
Then the HTTP status code should be "401" or "404"
@@ -0,0 +1,45 @@
@api @files_sharing-app-required @issue-ocis-reva-243
Feature: cannot share resources with invalid permissions
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "some data" to "/textfile0.txt"
And user "Alice" has created folder "/PARENT"
@issue-ocis-reva-45 @issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Cannot create a share of a file with a user with only create permission
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
When user "Alice" creates a share using the sharing API with settings
| path | textfile0.txt |
| shareWith | Brian |
| shareType | user |
| permissions | create |
Then the OCS status code should be "<ocs_status_code>" or "<eos_status_code>"
And the HTTP status code should be "<http_status_code_ocs>" or "<http_status_code_eos>"
And as "Brian" entry "textfile0.txt" should not exist
Examples:
| ocs_api_version | ocs_status_code | eos_status_code | http_status_code_ocs | http_status_code_eos |
| 1 | 100 | 996 | 200 | 500 |
| 2 | 200 | 996 | 200 | 500 |
@issue-ocis-reva-45 @issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Cannot create a share of a file with a user with only (create,delete) permission
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
When user "Alice" creates a share using the sharing API with settings
| path | textfile0.txt |
| shareWith | Brian |
| shareType | user |
| permissions | <permissions> |
Then the OCS status code should be "<ocs_status_code>" or "<eos_status_code>"
And the HTTP status code should be "<http_status_code_ocs>" or "<http_status_code_eos>"
And as "Brian" entry "textfile0.txt" should not exist
Examples:
| ocs_api_version | eos_status_code | ocs_status_code | http_status_code_ocs | http_status_code_eos | permissions |
| 1 | 100 | 996 | 200 | 500 | delete |
| 2 | 200 | 996 | 200 | 500 | delete |
| 1 | 100 | 996 | 200 | 500 | create,delete |
| 2 | 200 | 996 | 200 | 500 | create,delete |
@@ -0,0 +1,117 @@
@api @files_sharing-app-required
Feature: sharing
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "ownCloud test text file 0" to "/textfile0.txt"
@skipOnOcis-OC-Storage @issue-ocis-reva-301 @issue-ocis-reva-302
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Creating a share of a file with a user and asking for various permission combinations
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
When user "Alice" shares file "textfile0.txt" with user "Brian" with permissions <requested_permissions> using the sharing API
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "200"
And the fields of the last response to user "Alice" sharing with user "Brian" should include
| share_with | %username% |
| file_target | /textfile0.txt |
| path | /textfile0.txt |
| permissions | <granted_permissions> |
| uid_owner | %username% |
| displayname_owner | |
| item_type | file |
| mimetype | application/octet-stream |
| storage_id | ANY_VALUE |
| share_type | user |
And the fields of the last response should not include
| share_with_displayname | %displayname% |
Examples:
| ocs_api_version | requested_permissions | granted_permissions | ocs_status_code |
# Ask for full permissions. You get share plus read plus update. create and delete do not apply to shares of a file
| 1 | 31 | 19 | 100 |
| 2 | 31 | 19 | 200 |
# Ask for read, share (17), create and delete. You get share plus read
| 1 | 29 | 17 | 100 |
| 2 | 29 | 17 | 200 |
# Ask for read, update, create, delete. You get read plus update.
| 1 | 15 | 3 | 100 |
| 2 | 15 | 3 | 200 |
# Ask for just update. You get exactly update (you do not get read or anything else)
| 1 | 2 | 2 | 100 |
| 2 | 2 | 2 | 200 |
@issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: more tests to demonstrate different ocis-reva issue 243 behaviours
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has created folder "/home"
And user "Alice" has uploaded file with content "Random data" to "/home/randomfile.txt"
When user "Alice" shares file "/home/randomfile.txt" with user "Brian" using the sharing API
And the HTTP status code should be "<http_status_code_ocs>" or "<http_status_code_eos>"
And as "Brian" file "randomfile.txt" should not exist
Examples:
| ocs_api_version | http_status_code_ocs | http_status_code_eos |
| 1 | 200 | 500 |
| 2 | 200 | 500 |
@skipOnOcis-OC-Storage @issue-ocis-reva-301 @issue-ocis-reva-302
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Creating a share of a folder with a user, the default permissions are all permissions(31)
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has created folder "/FOLDER"
When user "Alice" shares folder "/FOLDER" with user "Brian" using the sharing API
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "200"
And the fields of the last response to user "Alice" sharing with user "Brian" should include
| share_with | %username% |
| file_target | /FOLDER |
| path | /FOLDER |
| permissions | all |
| uid_owner | %username% |
| displayname_owner | |
| item_type | folder |
| mimetype | httpd/unix-directory |
| storage_id | ANY_VALUE |
| share_type | user |
And the fields of the last response should not include
| share_with_displayname | %displayname% |
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@issue-ocis-reva-372 @issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: sharing subfolder of already shared folder, GET result is correct
Given using OCS API version "<ocs_api_version>"
And these users have been created with default attributes and without skeleton files:
| username |
| Brian |
| Carol |
| David |
| Emily |
And user "Alice" has created folder "/folder1"
And user "Alice" has shared folder "/folder1" with user "Brian"
And user "Alice" has shared folder "/folder1" with user "Carol"
And user "Alice" has created folder "/folder1/folder2"
And user "Alice" has shared folder "/folder1/folder2" with user "David"
And user "Alice" has shared folder "/folder1/folder2" with user "Emily"
When user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares"
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "<http_status_code>"
# On OCIS and reva the response is currently not there
# And the response should contain 4 entries
# And folder "/folder1" should be included as path in the response
# And folder "/folder1/folder2" should be included as path in the response
And user "Alice" sends HTTP method "GET" to OCS API endpoint "/apps/files_sharing/api/v1/shares?path=/folder1/folder2"
And the response should contain 2 entries
And folder "/folder1" should not be included as path in the response
And folder "/folder2" should be included as path in the response
# And folder "/folder1/folder2" should be included as path in the response
Examples:
| ocs_api_version | http_status_code | ocs_status_code |
| 1 | 200 | 996 |
| 2 | 500 | 996 |
@@ -0,0 +1,17 @@
@api @files_sharing-app-required @issue-ocis-reva-243
Feature: sharing
@issue-ocis-reva-356
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: delete a share
Given user "Alice" has been created with default attributes and skeleton files
And user "Brian" has been created with default attributes and without skeleton files
And using OCS API version "<ocs_api_version>"
And user "Alice" has shared file "textfile0.txt" with user "Brian"
When user "Alice" deletes the last share using the sharing API
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "200"
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@@ -0,0 +1,23 @@
@api @files_sharing-app-required
Feature: sharing
Background:
Given these users have been created with default attributes and skeleton files:
| username |
| Alice |
| Brian |
@issue-ocis-reva-260
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Sharee can't see the share that is filtered out
Given using OCS API version "<ocs_api_version>"
And user "Alice" has shared file "textfile0.txt" with user "Brian"
And user "Alice" has shared file "textfile1.txt" with user "Brian"
When user "Brian" gets all the shares shared with him that are received as file "textfile0 (2).txt" using the provisioning API
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "200"
And the last share_id should be included in the response
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@@ -0,0 +1,23 @@
@api @files_sharing-app-required @issue-ocis-reva-47
Feature: sharing
Background:
Given using OCS API version "1"
And these users have been created with default attributes and without skeleton files:
| username |
| Alice |
| Brian |
@issue-ocis-reva-47
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Empty webdav share-permissions for owned file
Given using <dav-path> DAV path
And user "Alice" has uploaded file with content "foo" to "/tmp.txt"
When user "Alice" gets the following properties of file "/tmp.txt" using the WebDAV API
| propertyName |
| ocs:share-permissions |
Then the single response should contain a property "ocs:share-permissions" with value "5"
Examples:
| dav-path |
| old |
| new |
@@ -0,0 +1,37 @@
@api @files_sharing-app-required
Feature: sharing
Background:
Given these users have been created with default attributes and skeleton files:
| username |
| Alice |
| Brian |
@issue-ocis-reva-374
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Get a share with a user that didn't receive the share
Given using OCS API version "<ocs_api_version>"
And user "Carol" has been created with default attributes and without skeleton files
And user "Alice" has shared file "textfile0.txt" with user "Brian"
When user "Carol" gets the info of the last share using the sharing API
Then the OCS status code should be "998"
# Then the OCS status code should be "404"
And the HTTP status code should be "<http_status_code>"
Examples:
| ocs_api_version | http_status_code |
| 1 | 200 |
| 2 | 404 |
@issue-ocis-reva-372
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: getting all the shares inside the folder
Given using OCS API version "<ocs_api_version>"
And user "Alice" has shared file "PARENT/parent.txt" with user "Brian"
When user "Alice" gets all the shares inside the folder "PARENT/parent.txt" using the sharing API
Then the OCS status code should be "<ocs_status_code>"
And the HTTP status code should be "200"
And file "parent.txt" should be included in the response
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@@ -0,0 +1,31 @@
@api @files_sharing-app-required @public_link_share-feature-required @skipOnOcis-EOS-Storage @issue-ocis-reva-315 @issue-ocis-reva-316
Feature: create a public link share
Background:
Given user "Alice" has been created with default attributes and skeleton files
@issue-37605
# after fixing all issues make the oC10 scenario like this one, and delete this scenario
Scenario: Get the mtime of a file inside a folder shared by public link using new webDAV version (run on OCIS)
Given user "Alice" has created folder "testFolder"
And user "Alice" has created a public link share with settings
| path | /testFolder |
| permissions | read,update,create,delete |
When the public uploads file "file.txt" to the last shared folder with mtime "Thu, 08 Aug 2019 04:18:13 GMT" using the new public WebDAV API
Then as "Alice" file "testFolder/file.txt" should exist
And as "Alice" the mtime of the file "testFolder/file.txt" should be "Thu, 08 Aug 2019 04:18:13 GMT"
And the mtime of file "file.txt" in the last shared public link using the WebDAV API should be "Thu, 08 Aug 2019 04:18:13 GMT"
@issue-37605
# after fixing all issues make the oC10 scenario like this one, and delete this scenario
Scenario: overwriting a file changes its mtime (new public webDAV API) (run on OCIS)
Given user "Alice" has created folder "testFolder"
When user "Alice" uploads file with content "uploaded content for file name ending with a dot" to "testFolder/file.txt" using the WebDAV API
And user "Alice" has created a public link share with settings
| path | /testFolder |
| permissions | read,update,create,delete |
And the public uploads file "file.txt" to the last shared folder with mtime "Thu, 08 Aug 2019 04:18:13 GMT" using the new public WebDAV API
Then as "Alice" file "/testFolder/file.txt" should exist
And as "Alice" the mtime of the file "testFolder/file.txt" should be "Thu, 08 Aug 2019 04:18:13 GMT"
And the mtime of file "file.txt" in the last shared public link using the WebDAV API should be "Thu, 08 Aug 2019 04:18:13 GMT"
@@ -0,0 +1,67 @@
@api @files_sharing-app-required @public_link_share-feature-required @issue-ocis-reva-310
Feature: copying from public link share
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has created folder "/PARENT"
And the administrator has enabled DAV tech_preview
@issue-ocis-reva-373 @issue-core-37683
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Copy folder within a public link folder to the same folder name as an already existing file
Given user "Alice" has created folder "/PARENT/testFolder"
And user "Alice" has uploaded file with content "some data" to "/PARENT/testFolder/testfile.txt"
And user "Alice" has uploaded file with content "some data 1" to "/PARENT/copy1.txt"
And user "Alice" has created a public link share with settings
| path | /PARENT |
| permissions | read,update,create,delete |
When the public copies folder "/testFolder" to "/copy1.txt" using the new public WebDAV API
Then the HTTP status code should be "204"
And as "Alice" folder "/PARENT/testFolder" should exist
And as "Alice" file "/PARENT/copy1.txt" should exist
And the content of file "/PARENT/testFolder/testfile.txt" for user "Alice" should be "some data"
And the content of file "/PARENT/copy1.txt" for user "Alice" should be "some data 1"
@issue-ocis-reva-373 @issue-core-37683
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Copy file within a public link folder to a file with name same as an existing folder
Given user "Alice" has uploaded file with content "some data" to "/PARENT/testfile.txt"
And user "Alice" has created folder "/PARENT/new-folder"
And user "Alice" has uploaded file with content "some data 1" to "/PARENT/new-folder/testfile1.txt"
And user "Alice" has created a public link share with settings
| path | /PARENT |
| permissions | read,update,create,delete |
When the public copies file "/testfile.txt" to "/new-folder" using the new public WebDAV API
Then the HTTP status code should be "204"
And as "Alice" file "/PARENT/testfile.txt" should exist
And as "Alice" file "/PARENT/new-folder" should exist
And the content of file "/PARENT/testfile.txt" for user "Alice" should be "some data"
@issue-ocis-reva-368
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Copy file within a public link folder to a file with unusual destination names
Given user "Alice" has uploaded file with content "some data" to "/PARENT/testfile.txt"
And user "Alice" has created a public link share with settings
| path | /PARENT |
| permissions | read,update,create,delete |
When the public copies file "/testfile.txt" to "/<destination-file-name>" using the new public WebDAV API
Then the HTTP status code should be "204"
And as "Alice" file "/PARENT/<destination-file-name>" should exist
And the content of file "/PARENT/<destination-file-name>" for user "Alice" should be "some data"
Examples:
| destination-file-name |
| testfile.txt |
| |
@issue-ocis-reva-368
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Copy folder within a public link folder to a folder with unusual destination names
Given user "Alice" has created folder "/PARENT/testFolder"
And user "Alice" has uploaded file with content "some data" to "/PARENT/testFolder/testfile.txt"
And user "Alice" has created a public link share with settings
| path | /PARENT |
| permissions | read,update,create,delete |
When the public copies folder "/testFolder" to "/testFolder" using the new public WebDAV API
Then the HTTP status code should be "204"
And as "Alice" folder "/PARENT/testFolder" should exist
And the content of file "/PARENT/testFolder/testfile.txt" for user "Alice" should be "some data"
@@ -0,0 +1,47 @@
@api @files_sharing-app-required @public_link_share-feature-required @issue-ocis-reva-252
Feature: update a public link share
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-243 @issue-ocis-reva-349 @issue-37653
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: API responds with a full set of parameters when owner changes the expireDate of a public share
Given using OCS API version "<ocs_api_version>"
When user "Alice" creates a public link share using the sharing API with settings
| path | FOLDER |
And user "Alice" updates the last share using the sharing API with
| expireDate | +3 days |
Then the OCS status code should be "<ocs_status_code>"
And the OCS status message should be "OK"
And the HTTP status code should be "200"
And the fields of the last response to user "Alice" should include
| id | A_STRING |
| share_type | public_link |
| uid_owner | %username% |
| displayname_owner | %displayname% |
| permissions | read |
| stime | A_NUMBER |
| parent | |
| expiration | A_STRING |
| token | A_STRING |
| uid_file_owner | %username% |
| displayname_file_owner | %displayname% |
| additional_info_owner | |
| additional_info_file_owner | |
| state | 0 |
| item_type | folder |
| item_source | A_STRING |
| path | /FOLDER |
| mimetype | httpd/unix-directory |
| storage_id | A_STRING |
| storage | A_NUMBER |
| file_source | A_STRING |
| file_target | /FOLDER |
| mail_send | 0 |
| name | |
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@@ -0,0 +1,17 @@
@api @files_sharing-app-required @public_link_share-feature-required @skipOnOcis-EOS-Storage @issue-ocis-reva-315 @issue-ocis-reva-316
Feature: upload to a public link share
Background:
Given user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-290
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Uploading file to a public upload-only share that was deleted does not work
Given the administrator has enabled DAV tech_preview
And user "Alice" has created a public link share with settings
| path | FOLDER |
| permissions | create |
When user "Alice" deletes file "/FOLDER" using the WebDAV API
And the public uploads file "does-not-matter.txt" with content "does not matter" using the new public WebDAV API
Then the HTTP status code should be "500"
@@ -0,0 +1,124 @@
@api @files_sharing-app-required
Feature: sharing
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and skeleton files
@skipOnOcis-EOS-Storage @toFixOnOCIS @issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Share ownership change after moving a shared file to another share
Given these users have been created with default attributes and without skeleton files:
| username |
| Brian |
| Carol |
And user "Alice" has created folder "/Alice-folder"
And user "Alice" has created folder "/Alice-folder/folder2"
And user "Carol" has created folder "/Carol-folder"
And user "Alice" has shared folder "/Alice-folder" with user "Brian" with permissions "all"
And user "Carol" has shared folder "/Carol-folder" with user "Brian" with permissions "all"
When user "Brian" moves folder "/Alice-folder/folder2" to "/Carol-folder/folder2" using the WebDAV API
And user "Carol" gets the info of the last share using the sharing API
# Note: in the following fields, file_parent has been removed because OCIS does not report that
Then the fields of the last response to user "Carol" sharing with user "Brian" should include
| id | A_STRING |
| item_type | folder |
| item_source | A_STRING |
| share_type | user |
| file_source | A_STRING |
| file_target | /Carol-folder |
| permissions | all |
| stime | A_NUMBER |
| storage | A_STRING |
| mail_send | 0 |
| uid_owner | %username% |
| displayname_owner | %displayname% |
| mimetype | httpd/unix-directory |
# Really folder2 should be gone from Alice-folder and be found in Carol-folder
# like in these 2 suggested steps:
# And as "Alice" folder "/Alice-folder/folder2" should not exist
# And as "Carol" folder "/Carol-folder/folder2" should exist
#
# But this happens on OCIS:
And as "Alice" folder "/Alice-folder/folder2" should exist
And as "Carol" folder "/Carol-folder/folder2" should not exist
@skipOnOcis-OC-Storage @toFixOnOCIS @issue-ocis-reva-243
# same as oC10 core Scenario but without displayname_owner because EOS does not report it
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Share ownership change after moving a shared file to another share
Given these users have been created with default attributes and without skeleton files:
| username |
| Brian |
| Carol |
And user "Alice" has created folder "/Alice-folder"
And user "Alice" has created folder "/Alice-folder/folder2"
And user "Carol" has created folder "/Carol-folder"
And user "Alice" has shared folder "/Alice-folder" with user "Brian" with permissions "all"
And user "Carol" has shared folder "/Carol-folder" with user "Brian" with permissions "all"
When user "Brian" moves folder "/Alice-folder/folder2" to "/Carol-folder/folder2" using the WebDAV API
And user "Carol" gets the info of the last share using the sharing API
Then the fields of the last response to user "Carol" sharing with user "Brian" should include
| id | A_STRING |
| item_type | folder |
| item_source | A_STRING |
| share_type | user |
| file_source | A_STRING |
| file_target | /Carol-folder |
| permissions | all |
| stime | A_NUMBER |
| storage | A_STRING |
| mail_send | 0 |
| uid_owner | %username% |
| mimetype | httpd/unix-directory |
And as "Alice" folder "/Alice-folder/folder2" should exist
And as "Carol" folder "/Carol-folder/folder2" should not exist
@toFixOnOCIS @toFixOnOcV10 @issue-ocis-reva-243 @issue-ocis-reva-349 @issue-ocis-reva-350 @issue-ocis-reva-352 @issue-37653
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: API responds with a full set of parameters when owner changes the permission of a share
Given using OCS API version "<ocs_api_version>"
And user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has created folder "/Alice-folder"
And user "Alice" has shared folder "/Alice-folder" with user "Brian" with permissions "read"
When user "Alice" updates the last share using the sharing API with
| permissions | all |
Then the OCS status code should be "<ocs_status_code>"
And the OCS status message should be "OK"
And the HTTP status code should be "200"
Then the fields of the last response to user "Alice" sharing with user "Brian" should include
| id | A_STRING |
| share_type | user |
| uid_owner | %username% |
| displayname_owner | %displayname% |
| permissions | all |
| stime | A_NUMBER |
| parent | |
| expiration | |
| token | |
| uid_file_owner | %username% |
| displayname_file_owner | %displayname% |
| additional_info_owner | |
| additional_info_file_owner | |
| state | 0 |
| item_type | |
| item_source | |
| path | |
| mimetype | |
| storage_id | |
| storage | 0 |
| file_source | |
| file_target | |
| share_with | %username% |
| share_with_displayname | %displayname% |
| share_with_additional_info | |
| mail_send | 0 |
| name | |
And the fields of the last response should not include
| attributes | |
# | token | |
# | name | |
Examples:
| ocs_api_version | ocs_status_code |
| 1 | 100 |
| 2 | 200 |
@@ -0,0 +1,125 @@
@api @files_versions-app-required @skipOnOcis-EOS-Storage @issue-ocis-reva-275
Feature: dav-versions
Background:
Given using OCS API version "2"
And using new DAV path
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-17 @issue-ocis-reva-56
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Upload file and no version is available using various chunking methods
When user "Alice" uploads file "filesForUpload/davtest.txt" to filenames based on "/davtest.txt" with all mechanisms using the WebDAV API
Then the version folder of file "/davtest.txt-olddav-regular" for user "Alice" should contain "0" elements
Then the version folder of file "/davtest.txt-newdav-regular" for user "Alice" should contain "0" elements
And as "Alice" file "/davtest.txt-olddav-oldchunking" should not exist
And as "Alice" file "/davtest.txt-newdav-newchunking" should not exist
@issue-ocis-reva-17 @issue-ocis-reva-56
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Upload a file twice and versions are available using various chunking methods
When user "Alice" uploads file "filesForUpload/davtest.txt" to filenames based on "/davtest.txt" with all mechanisms using the WebDAV API
And user "Alice" uploads file "filesForUpload/davtest.txt" to filenames based on "/davtest.txt" with all mechanisms using the WebDAV API
Then the version folder of file "/davtest.txt-olddav-regular" for user "Alice" should contain "1" element
And the version folder of file "/davtest.txt-newdav-regular" for user "Alice" should contain "1" element
And as "Alice" file "/davtest.txt-olddav-oldchunking" should not exist
And as "Alice" file "/davtest.txt-newdav-newchunking" should not exist
@files_sharing-app-required
@issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: sharer of a file can see the old version information when the sharee changes the content of the file
Given user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "First content" to "sharefile.txt"
And user "Alice" has shared file "sharefile.txt" with user "Brian"
When user "Brian" has uploaded file with content "Second content" to "/sharefile.txt"
Then the HTTP status code should be "201"
And the version folder of file "/sharefile.txt" for user "Alice" should contain "0" element
# And the version folder of file "/sharefile.txt" for user "Alice" should contain "1" element
@files_sharing-app-required
@issue-ocis-reva-243
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: sharer of a file can restore the original content of a shared file after the file has been modified by the sharee
Given user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "First content" to "sharefile.txt"
And user "Alice" has shared file "sharefile.txt" with user "Brian"
And user "Brian" has uploaded file with content "Second content" to "/sharefile.txt"
When user "Alice" restores version index "0" of file "/sharefile.txt" using the WebDAV API
# When user "Alice" restores version index "1" of file "/sharefile.txt" using the WebDAV API
Then the HTTP status code should be "201"
And the content of file "/sharefile.txt" for user "Alice" should be "First content"
And the content of file "/sharefile.txt" for user "Brian" should be "Second content"
# And the content of file "/sharefile.txt" for user "Brian" should be "First content"
@files_sharing-app-required
@issue-ocis-reva-243 @issue-ocis-reva-386
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Moving a file (with versions) into a shared folder as the sharee and as the sharer
Given using <dav_version> DAV path
And user "Brian" has been created with default attributes and without skeleton files
And user "Brian" has created folder "/testshare"
And user "Brian" has created a share with settings
| path | testshare |
| shareType | user |
| permissions | change |
| shareWith | Alice |
And user "Brian" has uploaded file with content "test data 1" to "/testfile.txt"
And user "Brian" has uploaded file with content "test data 2" to "/testfile.txt"
And user "Brian" has uploaded file with content "test data 3" to "/testfile.txt"
And user "Brian" moves file "/testfile.txt" to "/testshare/testfile.txt" using the WebDAV API
Then the HTTP status code should be "201"
And the content of file "/testshare/testfile.txt" for user "Alice" should be ""
# And the content of file "/testshare/testfile.txt" for user "Alice" should be "test data 3"
And the content of file "/testshare/testfile.txt" for user "Brian" should be "test data 3"
And as "Brian" file "/testfile.txt" should not exist
And as "Alice" file "/testshare/testfile.txt" should not exist
And the content of file "/testshare/testfile.txt" for user "Brian" should be "test data 3"
# And the version folder of file "/testshare/testfile.txt" for user "Alice" should contain "2" elements
# And the version folder of file "/testshare/testfile.txt" for user "Brian" should contain "2" elements
Examples:
| dav_version |
| old |
| new |
@files_sharing-app-required
@issue-ocis-reva-243 @issue-ocis-reva-386
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Moving a file (with versions) out of a shared folder as the sharee and as the sharer
Given using <dav_version> DAV path
And user "Brian" has been created with default attributes and without skeleton files
And user "Brian" has created folder "/testshare"
And user "Brian" has uploaded file with content "test data 1" to "/testshare/testfile.txt"
And user "Brian" has uploaded file with content "test data 2" to "/testshare/testfile.txt"
And user "Brian" has uploaded file with content "test data 3" to "/testshare/testfile.txt"
And user "Brian" has created a share with settings
| path | testshare |
| shareType | user |
| permissions | change |
| shareWith | Alice |
When user "Brian" moves file "/testshare/testfile.txt" to "/testfile.txt" using the WebDAV API
Then the HTTP status code should be "201"
And the content of file "/testfile.txt" for user "Brian" should be "test data 3"
And as "Alice" file "/testshare/testfile.txt" should not exist
And as "Brian" file "/testshare/testfile.txt" should not exist
# And the version folder of file "/testfile.txt" for user "Brian" should contain "2" elements
Examples:
| dav_version |
| old |
| new |
@skipOnStorage:ceph @files_primary_s3-issue-161 @files_sharing-app-required
@issue-ocis-reva-376
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Receiver tries get file versions of shared file from the sharer
Given user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "textfile0" to "textfile0.txt"
And user "Alice" has uploaded file with content "version 1" to "textfile0.txt"
And user "Alice" has uploaded file with content "version 2" to "textfile0.txt"
And user "Alice" has uploaded file with content "version 3" to "textfile0.txt"
And user "Alice" has shared file "textfile0.txt" with user "Brian"
When user "Brian" tries to get versions of file "textfile0.txt" from "Alice"
Then the HTTP status code should be "207"
And the number of versions should be "4"
# And the number of versions should be "3"
@@ -0,0 +1,45 @@
@api @issue-ocis-reva-14
Feature: move (rename) folder
As a user
I want to be able to move and rename folders
So that I can quickly manage my file system
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Renaming a folder to a backslash is allowed
Given using <dav_version> DAV path
And user "Alice" has created folder "/testshare"
When user "Alice" moves folder "/testshare" to "\" using the WebDAV API
Then the HTTP status code should be "201" or "500"
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Renaming a folder beginning with a backslash is allowed
Given using <dav_version> DAV path
And user "Alice" has created folder "/testshare"
When user "Alice" moves folder "/testshare" to "\testshare" using the WebDAV API
Then the HTTP status code should be "201" or "500"
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Renaming a folder including a backslash encoded is allowed
Given using <dav_version> DAV path
And user "Alice" has created folder "/testshare"
When user "Alice" moves folder "/testshare" to "/hola\hola" using the WebDAV API
Then the HTTP status code should be "201" or "500"
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,22 @@
@api @issue-ocis-reva-14
Feature: users cannot move (rename) a folder to a blacklisted name
As an administrator
I want to be able to prevent users from moving (renaming) folders to specified names
So that I can prevent unwanted folder names existing in the cloud storage
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-211 @skipOnOcis-EOS-Storage @issue-ocis-reva-269
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Renaming a folder to a name that is banned by default is allowed
Given using <dav_version> DAV path
And user "Alice" has created folder "/testshare"
When user "Alice" moves folder "/testshare" to "/.htaccess" using the WebDAV API
Then the HTTP status code should be "201"
And as "Alice" folder "/.htaccess" should exist
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,43 @@
@api @issue-ocis-reva-14
Feature: move (rename) file
As a user
I want to be able to move and rename files
So that I can manage my file system
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: rename a file into an invalid filename
Given using <dav_version> DAV path
When user "Alice" moves file "/welcome.txt" to "/a\\a" using the WebDAV API
Then the HTTP status code should be "201"
And as "Alice" file "/a\\a" should exist
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Renaming a file to a path with extension .part is possible
Given using <dav_version> DAV path
When user "Alice" moves file "/welcome.txt" to "/welcome.part" using the WebDAV API
Then the HTTP status code should be "201"
And as "Alice" file "/welcome.part" should exist
Examples:
| dav_version |
| old |
| new |
@skipOnOcis-OC-Storage @issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: renaming to a file with special characters
When user "Alice" moves file "/textfile0.txt" to "/<renamed_file>" using the WebDAV API
Then the HTTP status code should be "201"
And the content of file "/<renamed_file>" for user "Alice" should be ""
Examples:
| renamed_file |
| #oc ab?cd=ef# |
@@ -0,0 +1,21 @@
@api @issue-ocis-reva-14
Feature: users cannot move (rename) a file to a blacklisted name
As an administrator
I want to be able to prevent users from moving (renaming) files to specified file names
So that I can prevent unwanted file names existing in the cloud storage
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-211
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: rename a file to a filename that is banned by default
Given using <dav_version> DAV path
When user "Alice" moves file "/welcome.txt" to "/.htaccess" using the WebDAV API
Then the HTTP status code should be "201"
And as "Alice" file "/.htaccess" should exist
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,24 @@
@api
Feature: download file
As a user
I want to be able to download files
So that I can work wih local copies of files on my client system
Background:
Given user "Alice" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file with content "ownCloud test text file 0" to "/textfile0.txt"
And user "Alice" has uploaded file with content "Welcome this is just an example file for developers." to "/welcome.txt"
@skipOnOcis-OC-Storage @issue-ocis-reva-98
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Get the content-length response header of a pdf file
Given using <dav_version> DAV path
And user "Alice" has uploaded file "filesForUpload/simple.pdf" to "/simple.pdf"
When user "Alice" downloads file "/simple.pdf" using the WebDAV API
And the following headers should not be set
| header |
| OC-JobStatus-Location |
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,22 @@
@api
Feature: refuse access
As an administrator
I want to refuse access to unauthenticated and disabled users
So that I can secure the system
Background:
Given using OCS API version "1"
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Unauthenticated call
Given using <dav_version> DAV path
When an unauthenticated client connects to the dav endpoint using the WebDAV API
Then the HTTP status code should be "401"
And there should be no duplicate headers
And the following headers should be set
| header | value |
| WWW-Authenticate | Basic realm="%base_url_without_scheme%" |
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,112 @@
@api @issue-ocis-187
Feature: previews of files downloaded through the webdav API
Background:
Given user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-188
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: download previews with invalid width
Given user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
When user "Alice" downloads the preview of "/parent.txt" with width "<width>" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
Examples:
| width |
| 0 |
| 0.5 |
| -1 |
| false |
| true |
| A |
| %2F |
@issue-ocis-188
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: download previews with invalid height
Given user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
When user "Alice" downloads the preview of "/parent.txt" with width "32" and height "<height>" using the WebDAV API
Then the HTTP status code should be "200"
Examples:
| height |
| 0 |
| 0.5 |
| -1 |
| false |
| true |
| A |
| %2F |
@issue-ocis-189
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: download previews of file types that don't support preview
Given user "Alice" has uploaded file "filesForUpload/<filename>" to "/<newfilename>"
When user "Alice" downloads the preview of "/<newfilename>" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
Examples:
| filename | newfilename |
| simple.pdf | test.pdf |
| simple.odt | test.odt |
| new-data.zip | test.zip |
@issue-ocis-187
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: download previews of different image file types
Given user "Alice" has uploaded file "filesForUpload/<imageName>" to "/<newImageName>"
When user "Alice" downloads the preview of "/<newImageName>" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
And the downloaded image should be "1240" pixels wide and "648" pixels high
Examples:
| imageName | newImageName |
| testavatar.jpg | testimage.jpg |
| testavatar.png | testimage.png |
@issue-ocis-187
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: download previews of image after renaming it
Given user "Alice" has uploaded file "filesForUpload/testavatar.jpg" to "/testimage.jpg"
When user "Alice" moves file "/testimage.jpg" to "/testimage.txt" using the WebDAV API
And user "Alice" downloads the preview of "/testimage.txt" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
And the downloaded image should be "1240" pixels wide and "648" pixels high
@issue-ocis-thumbnails-191 @skipOnOcis-EOS-Storage @issue-ocis-reva-308
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: download previews of other users files
Given user "Brian" has been created with default attributes and without skeleton files
And user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
When user "Brian" downloads the preview of "/parent.txt" of "Alice" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
@issue-ocis-190
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: download previews of folders
Given user "Alice" has created folder "subfolder"
When user "Alice" downloads the preview of "/subfolder/" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "501"
@issue-ocis-192
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: Download file previews when it is disabled by the administrator
Given the administrator has updated system config key "enable_previews" with value "false" and type "boolean"
And user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
When user "Alice" downloads the preview of "/parent.txt" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
@issue-ocis-193
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: unset maximum size of previews
Given user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
And the administrator has updated system config key "preview_max_x" with value "null"
And the administrator has updated system config key "preview_max_y" with value "null"
When user "Alice" downloads the preview of "/parent.txt" with width "32" and height "32" using the WebDAV API
Then the HTTP status code should be "200"
@issue-ocis-193
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: set maximum size of previews
Given user "Alice" has uploaded file "filesForUpload/lorem.txt" to "/parent.txt"
When the administrator updates system config key "preview_max_x" with value "null" using the occ command
And the administrator updates system config key "preview_max_y" with value "null" using the occ command
Then the HTTP status code should be "201"
When user "Alice" downloads the preview of "/parent.txt" with width "null" and height "null" using the WebDAV API
Then the HTTP status code should be "200"
@@ -0,0 +1,37 @@
@api
Feature: create folder
As a user
I want to be able to create folders
So that I can organise the files in my file system
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-168 @skipOnOcis-EOS-Storage
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: try to create a folder that already exists
Given using <dav_version> DAV path
And user "Alice" has created folder "my-data"
When user "Alice" creates folder "my-data" using the WebDAV API
Then the HTTP status code should be "405"
And as "Alice" folder "my-data" should exist
And the body of the response should be empty
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-168
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: try to create a folder with a name of an existing file
Given using <dav_version> DAV path
And user "Alice" has uploaded file with content "uploaded data" to "/my-data.txt"
When user "Alice" creates folder "my-data.txt" using the WebDAV API
Then the HTTP status code should be "405"
And the body of the response should be empty
And the content of file "/my-data.txt" for user "Alice" should be "uploaded data"
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,21 @@
@api @issue-ocis-reva-57
Feature: set file properties
As a user
I want to be able to set meta-information about files
So that I can reccord file meta-information (detailed requirement TBD)
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@skipOnOcis-OC-Storage @issue-ocis-reva-276
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Setting custom DAV property
Given using <dav_version> DAV path
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/testcustomprop.txt"
When user "Alice" sets property "very-custom-prop" with namespace "x1='http://whatever.org/ns'" of file "/testcustomprop.txt" to "veryCustomPropValue" using the WebDAV API
Then the HTTP status code should be "500"
Examples:
| dav_version |
| old |
| new |
@@ -0,0 +1,115 @@
@api
Feature: get file properties
As a user
I want to be able to get meta-information about files
So that I can know file meta-information (detailed requirement TBD)
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@issue-ocis-reva-214
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND of various file names
Given using <dav_version> DAV path
And user "Alice" has uploaded file with content "uploaded content" to "<file_name>"
When user "Alice" gets the properties of file "<file_name>" using the WebDAV API
Then the properties response should contain an etag
And the value of the item "//d:response/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>/"
Examples:
| dav_version | file_name | expected_href |
| old | /C++ file.cpp | webdav\/C\+\+%20file\.cpp |
| old | /file #2.txt | webdav\/file%20%232\.txt |
| old | /file &2.txt | webdav\/file%20&2\.txt |
| new | /C++ file.cpp | dav\/files\/%username%\/C\+\+%20file\.cpp |
| new | /file #2.txt | dav\/files\/%username%\/file%20%232\.txt |
| new | /file &2.txt | dav\/files\/%username%\/file%20&2\.txt |
@issue-ocis-reva-214 @issue-ocis-reva-265 @skipOnOcis-EOS-Storage
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND of various file names
Given using <dav_version> DAV path
And user "Alice" has uploaded file with content "uploaded content" to "<file_name>"
When user "Alice" gets the properties of file "<file_name>" using the WebDAV API
Then the properties response should contain an etag
And the value of the item "//d:response/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>/"
Examples:
| dav_version | file_name | expected_href |
| old | /file ?2.txt | webdav\/file%20%3F2\.txt |
| new | /file ?2.txt | dav\/files\/%username%\/file%20%3F2\.txt |
@skipOnOcis-OC-Storage @issue-ocis-reva-265
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: upload a file to content
Given using <dav_version> DAV path
When user "Alice" uploads file with content "uploaded content" to "<file_name>" using the WebDAV API
Then the HTTP status code should be "500"
Examples:
| dav_version | file_name |
| old | /file ?2.txt |
| new | /file ?2.txt |
@issue-ocis-reva-214
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND of various folder names
Given using <dav_version> DAV path
And user "Alice" has created folder "<folder_name>"
And user "Alice" has uploaded file with content "uploaded content" to "<folder_name>/file1.txt"
And user "Alice" has uploaded file with content "uploaded content" to "<folder_name>/file2.txt"
When user "Alice" gets the properties of folder "<folder_name>" with depth 1 using the WebDAV API
Then the value of the item "//d:response[1]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\//"
And the value of the item "//d:response[2]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\/file1.txt/"
And the value of the item "//d:response[3]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\/file2.txt/"
Examples:
| dav_version | folder_name | expected_href |
| old | /upload | webdav\/upload |
| old | /strängé folder | webdav\/str%C3%A4ng%C3%A9%20folder |
| old | /C++ folder | webdav\/C\+\+%20folder |
| old | / | webdav\/%E0%A4%A8%E0%A5%87%E0%A4%AA%E0%A4%BE%E0%A4%B2%E0%A5%80 |
| old | /folder #2.txt | webdav\/folder%20%232\.txt |
| old | /folder &2.txt | webdav\/folder%20&2\.txt |
| new | /upload | dav\/files\/%username%\/upload |
| new | /strängé folder | dav\/files\/%username%\/str%C3%A4ng%C3%A9%20folder |
| new | /C++ folder | dav\/files\/%username%\/C\+\+%20folder |
| new | / | dav\/files\/%username%\/%E0%A4%A8%E0%A5%87%E0%A4%AA%E0%A4%BE%E0%A4%B2%E0%A5%80 |
| new | /folder #2.txt | dav\/files\/%username%\/folder%20%232\.txt |
| new | /folder &2.txt | dav\/files\/%username%\/folder%20&2\.txt |
@issue-ocis-reva-214 @skipOnOcis-EOS-Storage @issue-ocis-reva-265
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND of various folder names
Given using <dav_version> DAV path
And user "Alice" has created folder "<folder_name>"
And user "Alice" has uploaded file with content "uploaded content" to "<folder_name>/file1.txt"
And user "Alice" has uploaded file with content "uploaded content" to "<folder_name>/file2.txt"
When user "Alice" gets the properties of folder "<folder_name>" with depth 1 using the WebDAV API
Then the value of the item "//d:response[1]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\//"
And the value of the item "//d:response[2]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\/file1.txt/"
And the value of the item "//d:response[3]/d:href" in the response to user "Alice" should match "/remote\.php\/<expected_href>\/file2.txt/"
Examples:
| dav_version | folder_name | expected_href |
| old | /folder ?2.txt | webdav\/folder%20%3F2\.txt |
| new | /folder ?2.txt | dav\/files\/%username%\/folder%20%3F2\.txt |
@skipOnOcis-OC-Storage @issue-ocis-reva-265
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND of various folder names
Given using <dav_version> DAV path
And user "Alice" has created folder "/folder ?2.txt"
When user "Alice" uploads to these filenames with content "uploaded content" using the webDAV API then the results should be as listed
| filename | http-code | exists |
| /folder ?2.txt/file1.txt | 500 | no |
Examples:
| dav_version |
| old |
| new |
@issue-ocis-reva-163
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: Do a PROPFIND to a non-existing URL
And user "Alice" requests "<url>" with "PROPFIND" using basic auth
Then the body of the response should be empty
Examples:
| url |
| /remote.php/dav/files/does-not-exist |
| /remote.php/dav/does-not-exist |
@@ -0,0 +1,38 @@
@api
Feature: upload file
As a user
I want to be able to upload files
So that I can store and share files between multiple client systems
Background:
Given using OCS API version "1"
And user "Alice" has been created with default attributes and without skeleton files
@skipOnOcis-OC-Storage @issue-ocis-reva-265
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: upload a file and check download content
Given using <dav_version> DAV path
When user "Alice" uploads file with content "uploaded content" to <file_name> using the WebDAV API
Then the content of file <file_name> for user "Alice" should be ""
Examples:
| dav_version | file_name |
| old | "file ?2.txt" |
| new | "file ?2.txt" |
@skipOnOcis-OC-Storage @issue-product-127
# this scenario passes/fails intermittently on OC storage, so do not run it in CI
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario Outline: uploading a file inside a folder changes its etag
Given using <dav_version> DAV path
And user "Alice" has created folder "/upload"
And user "Alice" has stored etag of element "/<element>"
When user "Alice" uploads file with content "uploaded content" to "/upload/file.txt" using the WebDAV API
Then the content of file "/upload/file.txt" for user "Alice" should be "uploaded content"
# And the etag of element "/<element>" of user "Alice" should have changed
And the etag of element "/<element>" of user "Alice" should not have changed
Examples:
| dav_version | element |
| old | |
| old | upload |
| new | |
| new | upload |