Merge pull request #427 from owncloud/expected-failures-20200731

[Tests-Only] Implement EXPECTED_FAILURES_FILE for API acceptance tests
This commit is contained in:
Artur Neumann
2020-08-11 13:51:09 +05:45
committed by GitHub
15 changed files with 1449 additions and 74 deletions

View File

@@ -4,5 +4,6 @@ exclude_paths:
- changelog/**
- docs/**
- pkg/proto/**
- tests/acceptance/features/bootstrap/*
...

View File

@@ -1,5 +1,12 @@
config = {
'acceptance': {
'apiTests': {
'coreBranch': 'master',
'coreCommit': '5d8d76600f451b985662024f730cee1a40444c7f',
'numberOfParts': 2
},
'uiTests': {
'phoenixBranch': 'master',
'phoenixCommit': 'ccdca163c7e9e6ecc57e08a298b08b1d1175f1d5',
'suites': {
'phoenixWebUI1': [
'webUICreateFilesFolders',
@@ -40,17 +47,19 @@ config = {
}
def getUITestSuiteNames():
return config['acceptance']['suites'].keys()
return config['uiTests']['suites'].keys()
def getUITestSuites():
return config['acceptance']['suites']
return config['uiTests']['suites']
def getCoreApiTestPipelineNames():
names = []
for runPart in range(1, config['apiTests']['numberOfParts'] + 1):
names.append('coreApiTests-%s' % runPart)
return names
def main(ctx):
before = [
linting(ctx),
unitTests(ctx),
apiTests(ctx, 'master', 'a3cac3dad60348fc962d1d8743b202bc5f79596b'),
] + acceptance(ctx, 'master', 'ccdca163c7e9e6ecc57e08a298b08b1d1175f1d5')
before = testPipelines(ctx)
stages = [
docker(ctx, 'amd64'),
@@ -71,6 +80,20 @@ def main(ctx):
return before + stages + after
def testPipelines(ctx):
pipelines = [
linting(ctx),
unitTests(ctx),
localApiTests(ctx, config['apiTests']['coreBranch'], config['apiTests']['coreCommit'])
]
for runPart in range(1, config['apiTests']['numberOfParts'] + 1):
pipelines.append(coreApiTests(ctx, config['apiTests']['coreBranch'], config['apiTests']['coreCommit'], runPart, config['apiTests']['numberOfParts']))
pipelines += uiTests(ctx, config['uiTests']['phoenixBranch'], config['uiTests']['phoenixCommit'])
return pipelines
def linting(ctx):
return {
'kind': 'pipeline',
@@ -180,11 +203,11 @@ def unitTests(ctx):
},
}
def apiTests(ctx, coreBranch = 'master', coreCommit = ''):
def localApiTests(ctx, coreBranch = 'master', coreCommit = ''):
return {
'kind': 'pipeline',
'type': 'docker',
'name': 'apiTests',
'name': 'localApiTests',
'platform': {
'os': 'linux',
'arch': 'amd64',
@@ -192,9 +215,10 @@ def apiTests(ctx, coreBranch = 'master', coreCommit = ''):
'steps':
generate() +
build() +
ocisServer() + [
ocisServer() +
cloneCoreRepos(coreBranch, coreCommit) + [
{
'name': 'oC10APIAcceptanceTests',
'name': 'LocalApiTests',
'image': 'owncloudci/php:7.2',
'pull': 'always',
'environment' : {
@@ -204,15 +228,9 @@ def apiTests(ctx, coreBranch = 'master', coreCommit = ''):
'TEST_EXTERNAL_USER_BACKENDS':'true',
'REVA_LDAP_HOSTNAME':'ldap',
'TEST_OCIS':'true',
'BEHAT_FILTER_TAGS': '~@skipOnOcis&&~@skipOnOcis-OC-Storage',
'PATH_TO_CORE': '/srv/app/testrunner'
},
'commands': [
'git clone -b master --depth=1 https://github.com/owncloud/testing.git /srv/app/tmp/testing',
'git clone -b %s --single-branch --no-tags https://github.com/owncloud/core.git /srv/app/testrunner' % (coreBranch),
'cd /srv/app/testrunner',
] + ([
'git checkout %s' % (coreCommit)
] if coreCommit != '' else []) + [
'make test-acceptance-api',
],
'volumes': [{
@@ -239,11 +257,69 @@ def apiTests(ctx, coreBranch = 'master', coreCommit = ''):
},
}
def acceptance(ctx, phoenixBranch, phoenixCommit):
names = getUITestSuiteNames()
return [acceptanceTests(name, phoenixBranch, phoenixCommit) for name in names]
def coreApiTests(ctx, coreBranch = 'master', coreCommit = '', part_number = 1, number_of_parts = 1):
return {
'kind': 'pipeline',
'type': 'docker',
'name': 'coreApiTests-%s' % (part_number),
'platform': {
'os': 'linux',
'arch': 'amd64',
},
'steps':
generate() +
build() +
ocisServer() +
cloneCoreRepos(coreBranch, coreCommit) + [
{
'name': 'oC10ApiTests-%s' % (part_number),
'image': 'owncloudci/php:7.2',
'pull': 'always',
'environment' : {
'TEST_SERVER_URL': 'http://ocis-server:9140',
'OCIS_REVA_DATA_ROOT': '/srv/app/tmp/reva/',
'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton',
'TEST_EXTERNAL_USER_BACKENDS':'true',
'REVA_LDAP_HOSTNAME':'ldap',
'TEST_OCIS':'true',
'BEHAT_FILTER_TAGS': '~@notToImplementOnOCIS&&~@toImplementOnOCIS&&~@preview-extension-required',
'DIVIDE_INTO_NUM_PARTS': number_of_parts,
'RUN_PART': part_number,
'EXPECTED_FAILURES_FILE': '/drone/src/tests/acceptance/expected-failures.txt'
},
'commands': [
'cd /srv/app/testrunner',
'make test-acceptance-api',
],
'volumes': [{
'name': 'gopath',
'path': '/srv/app',
}]
},
],
'services':
ldap() +
redis(),
'volumes': [
{
'name': 'gopath',
'temp': {},
},
],
'trigger': {
'ref': [
'refs/heads/master',
'refs/tags/**',
'refs/pull/**',
],
},
}
def acceptanceTests(suiteName, phoenixBranch = 'master', phoenixCommit = ''):
def uiTests(ctx, phoenixBranch, phoenixCommit):
suiteNames = getUITestSuiteNames()
return [uiTestPipeline(suiteName, phoenixBranch, phoenixCommit) for suiteName in suiteNames]
def uiTestPipeline(suiteName, phoenixBranch = 'master', phoenixCommit = ''):
suites = getUITestSuites()
paths = ""
for path in suites[suiteName]:
@@ -386,8 +462,8 @@ def docker(ctx, arch):
'depends_on': [
'linting',
'unitTests',
'apiTests',
] + getUITestSuiteNames(),
'localApiTests',
] + getCoreApiTestPipelineNames() + getUITestSuiteNames(),
'trigger': {
'ref': [
'refs/heads/master',
@@ -532,8 +608,8 @@ def binary(ctx, name):
'depends_on': [
'linting',
'unitTests',
'apiTests',
] + getUITestSuiteNames(),
'localApiTests',
] + getCoreApiTestPipelineNames() + getUITestSuiteNames(),
'trigger': {
'ref': [
'refs/heads/master',
@@ -926,6 +1002,26 @@ def ocisServer():
},
]
def cloneCoreRepos(coreBranch, coreCommit):
return [
{
'name': 'clone-core-repos',
'image': 'owncloudci/php:7.2',
'pull': 'always',
'commands': [
'git clone -b master --depth=1 https://github.com/owncloud/testing.git /srv/app/tmp/testing',
'git clone -b %s --single-branch --no-tags https://github.com/owncloud/core.git /srv/app/testrunner' % (coreBranch),
'cd /srv/app/testrunner',
] + ([
'git checkout %s' % (coreCommit)
] if coreCommit != '' else []),
'volumes': [{
'name': 'gopath',
'path': '/srv/app',
}]
}
]
def ldap():
return [
{

9
.gitignore vendored
View File

@@ -6,4 +6,11 @@ coverage.out
*.key
*crt
/eos-docker
/eos-docker
# API acceptance tests
composer.lock
/vendor
vendor-bin/**/vendor
vendor-bin/**/composer.lock
tests/acceptance/output

View File

@@ -312,3 +312,21 @@ eos-install-go:
docker exec -i eos-cli1 curl https://dl.google.com/go/go1.14.4.linux-amd64.tar.gz -O
docker exec -i eos-cli1 tar -C /usr/local -xzf go1.14.4.linux-amd64.tar.gz
# export PATH=$PATH:/usr/local/go/bin
BEHAT_BIN=vendor-bin/behat/vendor/bin/behat
.PHONY: test-acceptance-api
test-acceptance-api: vendor-bin/behat/vendor
BEHAT_BIN=$(BEHAT_BIN) $(PATH_TO_CORE)/tests/acceptance/run.sh --remote --type api
vendor/bamarni/composer-bin-plugin: composer.lock
composer install
vendor-bin/behat/vendor: vendor/bamarni/composer-bin-plugin vendor-bin/behat/composer.lock
composer bin behat install --no-progress
vendor-bin/behat/composer.lock: vendor-bin/behat/composer.json
@echo behat composer.lock is not up to date.
composer.lock: composer.json
@echo composer.lock is not up to date.

18
composer.json Normal file
View File

@@ -0,0 +1,18 @@
{
"name": "owncloud/ocis",
"config" : {
"platform": {
"php": "7.2"
}
},
"require": {
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4"
},
"extra": {
"bamarni-bin": {
"bin-links": false
}
}
}

View File

@@ -69,13 +69,13 @@ bin/ocis server
### Run the acceptance tests
First we will need to clone the testing app in owncloud which contains the skeleton files required for running the tests.
In the ownCloud 10 core clone testing app with following command
In the ownCloud 10 core clone the testing app with the following command:
```
git clone https://github.com/owncloud/testing apps/testing
```
Then run the api acceptance tests with following command.
Then run the api acceptance tests with the following command:
```
make test-acceptance-api \
TEST_SERVER_URL=http://localhost:9140 \
@@ -83,26 +83,40 @@ TEST_EXTERNAL_USER_BACKENDS=true \
TEST_OCIS=true \
OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \
SKELETON_DIR=apps/testing/data/apiSkeleton \
BEHAT_FILTER_TAGS='~@skipOnOcis'
BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS'
```
Make sure to adjust the settings `TEST_SERVER_URL` and `OCIS_REVA_DATA_ROOT` according to your environment
Make sure to adjust the settings `TEST_SERVER_URL` and `OCIS_REVA_DATA_ROOT` according to your environment.
This will run all tests that can work with LDAP and are not skipped on ocis
This will run all tests that are relevant to OCIS.
To run a single test add `BEHAT_FEATURE=<feature file>`
### use existing tests for BDD
As a lot of scenarios are written for oC10, we can use those tests for Behaviour driven development in ocis.
Every scenario that does not work in ocis, is tagged with `@skipOnOcis` and additionally should be marked with an issue number e.g. `@issue-ocis-20`.
This tag means that this particular scenario is skipped because of [issue no 20 in the ocis repository](https://github.com/owncloud/ocis/issues/20).
Additionally, some issues have scenarios that demonstrate the current buggy behaviour in ocis(reva) and are skipped on oC10.
Every scenario that does not work in ocis, is listed in `tests/acceptance/expected-failures.txt` with a link to the related issue.
Those scenarios are run in the ordinary acceptance test pipeline in CI. The sccenarios that fail are checked against the
expected failures. If there are any differences then the CI pipeline fails.
Additionally, some issues have scenarios that demonstrate the current buggy behaviour in ocis(reva).
Those scenarios are in this ocis repository in `tests/acceptance/features/apiOcisSpecific`.
Have a look into the [documentation](https://doc.owncloud.com/server/developer_manual/testing/acceptance-tests.html#writing-scenarios-for-bugs) to understand why we are writing those tests.
If you want to work on a specific issue
1. run the tests marked with that issue tag
1. adjust the core commit id to the latest commit in core so that CI will run the latest test code and scenarios from core.
For that change `coreCommit` in the `config` section:
config = {
'apiTests': {
'coreBranch': 'master',
'coreCommit': 'a06b1bd5ba8e5244bfaf7fa04f441961e6fb0daa',
'numberOfParts': 2
}
}
2. locally run each of the tests marked with that issue in the expected failures file
E.g.:
```
@@ -111,46 +125,18 @@ If you want to work on a specific issue
TEST_EXTERNAL_USER_BACKENDS=true \
TEST_OCIS=true \
OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \
BEHAT_FILTER_TAGS='~@skipOnOcV10&&@issue-ocis-20'
BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123'
```
Note that the `~@skipOnOcis` tag is replaced by `~@skipOnOcV10` and the issue tag `@issue-ocis-20` is added.
We want to run all tests that are skipped in CI because of this particular bug, but we don't want to run the tests
that demonstrate the current buggy behaviour.
2. the tests will fail, try to understand how and why they are failing
3. fix the code
4. go back to 1. and repeat till the tests are passing.
5. adjust tests that demonstrate the **buggy** behaviour
delete the tests in core that are tagged with that particular issue and `@skipOnOcV10`, but be careful because a lot of tests are tagged with multiple issues.
Only delete tests that demonstrate the buggy behaviour if you fixed all bugs related to that test. If not you might have to adjust the test.
6. unskip tests that demonstrate the **correct** behaviour
The `@skipOnOcis` tag should not be needed now, so delete it, but leave the issue tag for future reference.
7. make a PR to core with the changed tests
8. make a PR to ocis running the adjusted tests
To confirm that all tests (old and changed) run fine make a PR to ocis with your code changes and point drone to your branch in core to get the changed tests.
For that change this line in the `main` function
apiTests(ctx, 'master', 'a3cac3dad60348fc962d1d8743b202bc5f79596b')
In place of master use your branch name. If you dont specify the commit ID, you will run the tests using the HEAD of the branch you specified.
apiTests(ctx, 'my-new-tests', '')
Also make sure to change the commit ID if you want to run tests on any other commit.
eg:
apiTests(ctx, 'my-new-tests', '7d468c05414b1dc745ca713d9deb443bc4e5f333')
9. merge PRs
After you have confirmed that the tests pass everywhere merge the core PR and immediately revert the change in 8. and merge the ocis PR
If the changes also affect the `ocis-reva` repository make sure the changes get ported over there immediately, otherwise the tests will start failing there.
3. the tests will fail, try to understand how and why they are failing
4. fix the code
5. go back to 2. and repeat till the tests are passing.
6. remove those tests from the expected failures file
7. run each of the local tests that were demonstrating the **buggy** behavior. They should fail.
8. delete each of the local tests that were demonstrating the **buggy** behavior.
9. make a PR that has the fixed code, relevant lines removed from the expected failures file and bug demonstration tests deleted.
If the changes also affect the `ocis-reva` repository make sure the changes get ported over there.
### Notes
- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users.

View File

@@ -0,0 +1,30 @@
default:
autoload:
'': '%paths.base%/../features/bootstrap'
suites:
apiOcisSpecific:
paths:
- '%paths.base%/../features/apiOcisSpecific'
context: &common_ldap_suite_context
parameters:
ldapAdminPassword: admin
ldapUsersOU: TestUsers
ldapGroupsOU: TestGroups
ldapInitialUserFilePath: /../../config/ldap-users.ldif
contexts:
- RevaContext:
- OccContext:
- FeatureContext: &common_feature_context_params
baseUrl: http://localhost:8080
adminUsername: admin
adminPassword: admin
regularUserPassword: 123456
ocPath: apps/testing/api/v1/occ
- FavoritesContext:
- WebDavPropertiesContext:
extensions:
jarnaiz\JUnitFormatter\JUnitFormatterExtension:
filename: report.xml
outputDir: '%paths.base%/../output/'

View File

@@ -0,0 +1,951 @@
# this file contains the scenarios from ownCloud10 core API tests that are currently expected to fail
#
# 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
#
# 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
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: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
#
# https://github.com/owncloud/ocis-reva/issues/100 no robots.txt available
apiMain/main.feature:5
#
# https://github.com/owncloud/ocis-reva/issues/101 quota query
apiMain/quota.feature:9
apiMain/quota.feature:16
apiMain/quota.feature:23
apiMain/quota.feature:30
apiMain/quota.feature:41
apiMain/quota.feature:54
apiMain/quota.feature:68
apiMain/quota.feature:82
apiMain/quota.feature:99
apiMain/quota.feature:112
#
# https://github.com/owncloud/ocis-reva/issues/65 There is no such thing like a "super-user"
# https://github.com/owncloud/ocis-reva/issues/97 no command equivalent to occ
apiMain/status.feature:5
#
# https://github.com/owncloud/ocis-reva/issues/29 ocs config endpoint only accessible by authorized users
# https://github.com/owncloud/ocis-reva/issues/30 HTTP 401 Unauthorized responses don't contain a body
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/ocsPOSTAuth.feature:10
apiAuthOcs/ocsPUTAuth.feature:10
#
# https://github.com/owncloud/ocis-reva/issues/13 server returns 500 when trying to access a not existing file
apiAuthWebDav/webDavDELETEAuth.feature:36
#
# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API
apiAuthWebDav/webDavLOCKAuth.feature:38
#
# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API
apiAuthWebDav/webDavMKCOLAuth.feature:37
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiAuthWebDav/webDavMOVEAuth.feature:37
#
# https://github.com/owncloud/ocis-reva/issues/179 send POST requests to another user's webDav endpoints as normal user
apiAuthWebDav/webDavPOSTAuth.feature:38
#
# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API
apiAuthWebDav/webDavPROPFINDAuth.feature:37
#
# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API
apiAuthWebDav/webDavPROPPATCHAuth.feature:38
#
# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API
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
#
# https://github.com/owncloud/ocis-reva/issues/39 REPORT request not implemented
apiFavorites/favorites.feature:239
apiFavorites/favorites.feature:240
#
# https://github.com/owncloud/ocis-reva/issues/34 groups endpoint does not exist
apiSharees/sharees.feature:32
apiSharees/sharees.feature:33
apiSharees/sharees.feature:53
apiSharees/sharees.feature:54
apiSharees/sharees.feature:74
apiSharees/sharees.feature:75
apiSharees/sharees.feature:98
apiSharees/sharees.feature:99
apiSharees/sharees.feature:118
apiSharees/sharees.feature:119
apiSharees/sharees.feature:137
apiSharees/sharees.feature:138
apiSharees/sharees.feature:157
apiSharees/sharees.feature:158
apiSharees/sharees.feature:177
apiSharees/sharees.feature:178
apiSharees/sharees.feature:198
apiSharees/sharees.feature:199
apiSharees/sharees.feature:217
apiSharees/sharees.feature:218
apiSharees/sharees.feature:237
apiSharees/sharees.feature:238
apiSharees/sharees.feature:257
apiSharees/sharees.feature:258
apiSharees/sharees.feature:277
apiSharees/sharees.feature:278
apiSharees/sharees.feature:297
apiSharees/sharees.feature:298
apiSharees/sharees.feature:317
apiSharees/sharees.feature:318
apiSharees/sharees.feature:336
apiSharees/sharees.feature:337
apiSharees/sharees.feature:355
apiSharees/sharees.feature:356
apiSharees/sharees.feature:374
apiSharees/sharees.feature:375
apiSharees/sharees.feature:393
apiSharees/sharees.feature:394
apiSharees/sharees.feature:412
apiSharees/sharees.feature:413
apiSharees/sharees.feature:430
apiSharees/sharees.feature:431
apiSharees/sharees.feature:450
apiSharees/sharees.feature:451
apiSharees/sharees.feature:475
apiSharees/sharees.feature:476
apiSharees/sharees.feature:495
apiSharees/sharees.feature:496
apiSharees/sharees.feature:515
apiSharees/sharees.feature:516
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
#
# https://github.com/owncloud/ocis-reva/issues/356 Fields missing in delete share OCS response
apiShareManagementBasic/deleteShare.feature:36
apiShareManagementBasic/deleteShare.feature:37
#
# https://github.com/owncloud/ocis-reva/issues/260 Sharee retrieves the information about a share -but gets response containing all the shares
apiShareOperations/accessToShare.feature:48
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
#
# https://github.com/owncloud/ocis-reva/issues/262 Shares are not deleted when user is deleted
apiShareOperations/gettingShares.feature:21
apiShareOperations/gettingShares.feature:22
#
# https://github.com/owncloud/ocis-reva/issues/65 There is no such thing like a "super-user"
apiShareOperations/gettingShares.feature:34
apiShareOperations/gettingShares.feature:35
#
# https://github.com/owncloud/ocis-reva/issues/357 Delete shares from user when user is deleted
# https://github.com/owncloud/ocis-reva/issues/301 no displayname_owner shown when creating a share
# https://github.com/owncloud/ocis-reva/issues/302 when sharing a file mime-type field is set to application/octet-stream
apiShareOperations/gettingShares.feature:124
apiShareOperations/gettingShares.feature:125
#
# https://github.com/owncloud/ocis-reva/issues/374 OCS error message for attempting to access share via share id as an unauthorized user is not informative
apiShareOperations/gettingShares.feature:168
apiShareOperations/gettingShares.feature:169
#
# https://github.com/owncloud/ocis-reva/issues/194 Group shares support
apiShareOperations/gettingShares.feature:187
#
# 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
#
# 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
#
# 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
apiSharePublicLink1/accessToPublicLinkShare.feature:10
apiSharePublicLink1/accessToPublicLinkShare.feature:20
apiSharePublicLink1/accessToPublicLinkShare.feature:30
apiSharePublicLink1/accessToPublicLinkShare.feature:43
apiSharePublicLink1/changingPublicLinkShare.feature:22
apiSharePublicLink1/changingPublicLinkShare.feature:23
apiSharePublicLink1/changingPublicLinkShare.feature:37
apiSharePublicLink1/changingPublicLinkShare.feature:41
apiSharePublicLink1/changingPublicLinkShare.feature:52
apiSharePublicLink1/changingPublicLinkShare.feature:63
apiSharePublicLink1/changingPublicLinkShare.feature:85
apiSharePublicLink1/changingPublicLinkShare.feature:96
apiSharePublicLink1/changingPublicLinkShare.feature:107
apiSharePublicLink1/changingPublicLinkShare.feature:151
apiSharePublicLink1/changingPublicLinkShare.feature:197
apiSharePublicLink1/changingPublicLinkShare.feature:244
apiSharePublicLink1/changingPublicLinkShare.feature:267
apiSharePublicLink1/changingPublicLinkShare.feature:278
apiSharePublicLink1/changingPublicLinkShare.feature:289
apiSharePublicLink1/changingPublicLinkShare.feature:300
apiSharePublicLink1/createPublicLinkShare.feature:34
apiSharePublicLink1/createPublicLinkShare.feature:35
#
# https://github.com/owncloud/ocis-reva/issues/12 Range Header is not obeyed when downloading a file
apiSharePublicLink1/createPublicLinkShare.feature:63
apiSharePublicLink1/createPublicLinkShare.feature:64
#
apiSharePublicLink1/createPublicLinkShare.feature:95
apiSharePublicLink1/createPublicLinkShare.feature:96
#
# https://github.com/owncloud/ocis-reva/issues/199 Ability to return error messages in Webdav response bodies
apiSharePublicLink1/createPublicLinkShare.feature:127
apiSharePublicLink1/createPublicLinkShare.feature:128
#
apiSharePublicLink1/createPublicLinkShare.feature:155
apiSharePublicLink1/createPublicLinkShare.feature:156
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
apiSharePublicLink1/createPublicLinkShare.feature:183
apiSharePublicLink1/createPublicLinkShare.feature:184
#
apiSharePublicLink1/createPublicLinkShare.feature:214
apiSharePublicLink1/createPublicLinkShare.feature:215
#
# https://github.com/owncloud/ocis-reva/issues/12 Range Header is not obeyed when downloading a file
apiSharePublicLink1/createPublicLinkShare.feature:245
apiSharePublicLink1/createPublicLinkShare.feature:246
#
apiSharePublicLink1/createPublicLinkShare.feature:276
apiSharePublicLink1/createPublicLinkShare.feature:277
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
apiSharePublicLink1/createPublicLinkShare.feature:307
apiSharePublicLink1/createPublicLinkShare.feature:308
#
apiSharePublicLink1/createPublicLinkShare.feature:370
apiSharePublicLink1/createPublicLinkShare.feature:371
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:389
apiSharePublicLink1/createPublicLinkShare.feature:390
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:411
apiSharePublicLink1/createPublicLinkShare.feature:413
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:435
apiSharePublicLink1/createPublicLinkShare.feature:437
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:461
apiSharePublicLink1/createPublicLinkShare.feature:463
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:487
apiSharePublicLink1/createPublicLinkShare.feature:489
apiSharePublicLink1/createPublicLinkShare.feature:491
apiSharePublicLink1/createPublicLinkShare.feature:493
apiSharePublicLink1/createPublicLinkShare.feature:495
apiSharePublicLink1/createPublicLinkShare.feature:497
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:518
apiSharePublicLink1/createPublicLinkShare.feature:519
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:534
apiSharePublicLink1/createPublicLinkShare.feature:535
#
apiSharePublicLink1/createPublicLinkShare.feature:553
apiSharePublicLink1/createPublicLinkShare.feature:554
#
apiSharePublicLink1/createPublicLinkShare.feature:590
apiSharePublicLink1/createPublicLinkShare.feature:591
#
# https://github.com/owncloud/ocis-reva/issues/283 Prevent creating public share for the home root folder
apiSharePublicLink1/createPublicLinkShare.feature:620
apiSharePublicLink1/createPublicLinkShare.feature:621
#
apiSharePublicLink1/createPublicLinkShare.feature:634
apiSharePublicLink1/createPublicLinkShare.feature:635
#
apiSharePublicLink1/createPublicLinkShare.feature:663
apiSharePublicLink1/createPublicLinkShare.feature:664
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink1/createPublicLinkShare.feature:714
apiSharePublicLink1/createPublicLinkShare.feature:715
#
# https://github.com/owncloud/ocis-reva/issues/199 Ability to return error messages in Webdav response bodies
apiSharePublicLink1/createPublicLinkShare.feature:718
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
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
#
# 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
#
# https://github.com/owncloud/ocis-reva/issues/311 Deleting a public link after renaming a file
apiSharePublicLink1/deletePublicLinkShare.feature:37
apiSharePublicLink1/deletePublicLinkShare.feature:38
#
# https://github.com/owncloud/ocis-reva/issues/373 copying a folder within a public link folder to folder with same name as an already existing file overwrites the parent file
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
#
# 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/updatePublicLinkShare.feature:135
apiSharePublicLink2/updatePublicLinkShare.feature:136
#
apiSharePublicLink2/updatePublicLinkShare.feature:326
apiSharePublicLink2/updatePublicLinkShare.feature:327
#
# 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:364
apiSharePublicLink2/updatePublicLinkShare.feature:365
#
# 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:402
apiSharePublicLink2/updatePublicLinkShare.feature:403
#
# 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: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:528
apiSharePublicLink2/updatePublicLinkShare.feature:529
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:9
#
# https://github.com/owncloud/ocis-reva/issues/286 Upload-only shares must not overwrite but create a separate file
apiSharePublicLink2/uploadToPublicLinkShare.feature:23
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:48
apiSharePublicLink2/uploadToPublicLinkShare.feature:49
#
# https://github.com/owncloud/ocis-reva/issues/290 Accessing non-existing public link should return 404, not 500
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
#
# https://github.com/owncloud/ocis-reva/issues/292 Public link enforce permissions
apiSharePublicLink2/uploadToPublicLinkShare.feature:85
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:94
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:114
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:132
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:150
#
# https://github.com/owncloud/ocis-reva/issues/195 Set quota over settings
apiSharePublicLink2/uploadToPublicLinkShare.feature:159
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:169
#
# https://github.com/owncloud/ocis-reva/issues/195 Set quota over settings
apiSharePublicLink2/uploadToPublicLinkShare.feature:178
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:188
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
apiSharePublicLink2/uploadToPublicLinkShare.feature:197
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:207
#
# https://github.com/owncloud/ocis-reva/issues/41 various sharing settings cannot be set
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:238
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:249
#
apiSharePublicLink2/uploadToPublicLinkShare.feature:266
#
# https://github.com/owncloud/ocis-reva/issues/286 Upload-only shares must not overwrite but create a separate file
apiSharePublicLink2/uploadToPublicLinkShare.feature:284
#
# 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: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
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFileAsync.feature:26
apiWebdavMove1/moveFileAsync.feature:27
apiWebdavMove1/moveFileAsync.feature:28
apiWebdavMove1/moveFileAsync.feature:29
apiWebdavMove1/moveFileAsync.feature:30
apiWebdavMove1/moveFileAsync.feature:31
apiWebdavMove1/moveFileAsync.feature:33
apiWebdavMove1/moveFileAsync.feature:46
apiWebdavMove1/moveFileAsync.feature:59
apiWebdavMove1/moveFileAsync.feature:73
apiWebdavMove1/moveFileAsync.feature:88
apiWebdavMove1/moveFileAsync.feature:107
apiWebdavMove1/moveFileAsync.feature:125
apiWebdavMove1/moveFileAsync.feature:135
apiWebdavMove1/moveFileAsync.feature:141
apiWebdavMove1/moveFileAsync.feature:156
apiWebdavMove1/moveFileAsync.feature:173
apiWebdavMove1/moveFileAsync.feature:174
apiWebdavMove1/moveFileAsync.feature:184
apiWebdavMove1/moveFileAsync.feature:185
apiWebdavMove1/moveFileAsync.feature:204
apiWebdavMove1/moveFileAsync.feature:205
apiWebdavMove1/moveFileAsync.feature:224
apiWebdavMove1/moveFileAsync.feature:225
apiWebdavMove1/moveFileAsync.feature:234
apiWebdavMove1/moveFileAsync.feature:235
apiWebdavMove1/moveFileAsync.feature:240
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFileToBlacklistedNameAsync.feature:12
apiWebdavMove1/moveFileToBlacklistedNameAsync.feature:18
apiWebdavMove1/moveFileToBlacklistedNameAsync.feature:26
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFileToExcludedDirectoryAsync.feature:12
apiWebdavMove1/moveFileToExcludedDirectoryAsync.feature:19
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:47
apiWebdavMove1/moveFolder.feature:71
apiWebdavMove1/moveFolder.feature:72
#
# 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
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove1/moveFolderToExcludedDirectory.feature:21
apiWebdavMove1/moveFolderToExcludedDirectory.feature:22
apiWebdavMove1/moveFolderToExcludedDirectory.feature:34
apiWebdavMove1/moveFolderToExcludedDirectory.feature:35
apiWebdavMove1/moveFolderToExcludedDirectory.feature:70
apiWebdavMove1/moveFolderToExcludedDirectory.feature:71
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove2/moveFile.feature:89
apiWebdavMove2/moveFile.feature:90
apiWebdavMove2/moveFile.feature:91
apiWebdavMove2/moveFile.feature:92
apiWebdavMove2/moveFile.feature:112
apiWebdavMove2/moveFile.feature:113
apiWebdavMove2/moveFile.feature:136
apiWebdavMove2/moveFile.feature:137
apiWebdavMove2/moveFile.feature:138
apiWebdavMove2/moveFile.feature:139
apiWebdavMove2/moveFile.feature:160
apiWebdavMove2/moveFile.feature:161
apiWebdavMove2/moveFile.feature:181
apiWebdavMove2/moveFile.feature:182
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
#
# 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
#
# https://github.com/owncloud/ocis-reva/issues/14 renaming a resource does not work
apiWebdavMove2/moveFileToExcludedDirectory.feature:18
apiWebdavMove2/moveFileToExcludedDirectory.feature:19
apiWebdavMove2/moveFileToExcludedDirectory.feature:28
apiWebdavMove2/moveFileToExcludedDirectory.feature:29
apiWebdavMove2/moveFileToExcludedDirectory.feature:63
apiWebdavMove2/moveFileToExcludedDirectory.feature:64
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavOperations/deleteFolder.feature:67
apiWebdavOperations/deleteFolder.feature:68
apiWebdavOperations/deleteFolder.feature:69
apiWebdavOperations/deleteFolder.feature:70
apiWebdavOperations/deleteFolder.feature:91
apiWebdavOperations/deleteFolder.feature:92
#
# https://github.com/owncloud/ocis-reva/issues/12 Range Header is not obeyed when downloading a file
apiWebdavOperations/downloadFile.feature:29
apiWebdavOperations/downloadFile.feature:30
#
apiWebdavOperations/downloadFile.feature:72
apiWebdavOperations/downloadFile.feature:73
#
apiWebdavOperations/downloadFile.feature:84
apiWebdavOperations/downloadFile.feature:85
#
apiWebdavOperations/refuseAccess.feature:21
apiWebdavOperations/refuseAccess.feature:22
#
apiWebdavOperations/refuseAccess.feature:47
apiWebdavOperations/refuseAccess.feature:48
#
# https://github.com/owncloud/ocis-reva/issues/39 REPORT request not implemented
apiWebdavOperations/search.feature:42
apiWebdavOperations/search.feature:43
apiWebdavOperations/search.feature:57
apiWebdavOperations/search.feature:58
apiWebdavOperations/search.feature:74
apiWebdavOperations/search.feature:75
apiWebdavOperations/search.feature:83
apiWebdavOperations/search.feature:84
apiWebdavOperations/search.feature:101
apiWebdavOperations/search.feature:102
apiWebdavOperations/search.feature:119
apiWebdavOperations/search.feature:120
apiWebdavOperations/search.feature:138
apiWebdavOperations/search.feature:139
apiWebdavOperations/search.feature:165
apiWebdavOperations/search.feature:166
apiWebdavOperations/search.feature:191
apiWebdavOperations/search.feature:192
apiWebdavOperations/search.feature:210
apiWebdavOperations/search.feature:211
apiWebdavOperations/search.feature:213
apiWebdavOperations/search.feature:229
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties1/copyFile.feature:65
apiWebdavProperties1/copyFile.feature:66
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties1/copyFile.feature:85
apiWebdavProperties1/copyFile.feature:86
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavProperties1/copyFile.feature:102
apiWebdavProperties1/copyFile.feature:103
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:116
apiWebdavProperties1/copyFile.feature:117
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:129
apiWebdavProperties1/copyFile.feature:130
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:146
apiWebdavProperties1/copyFile.feature:147
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:165
apiWebdavProperties1/copyFile.feature:166
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:202
apiWebdavProperties1/copyFile.feature:203
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:350
apiWebdavProperties1/copyFile.feature:351
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:370
apiWebdavProperties1/copyFile.feature:371
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:395
apiWebdavProperties1/copyFile.feature:396
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:422
apiWebdavProperties1/copyFile.feature:423
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:448
apiWebdavProperties1/copyFile.feature:449
#
# https://github.com/owncloud/ocis-reva/issues/387 Getting information about a folder overwritten by a file gives 500 error instead of 404
apiWebdavProperties1/copyFile.feature:474
apiWebdavProperties1/copyFile.feature:475
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavProperties1/createFolder.feature:71
apiWebdavProperties1/createFolder.feature:72
#
# https://github.com/owncloud/ocis-reva/issues/168 creating a folder that already exists returns an empty body
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
#
# https://github.com/owncloud/ocis-reva/issues/101 quota query
apiWebdavProperties1/getQuota.feature:17
apiWebdavProperties1/getQuota.feature:18
apiWebdavProperties1/getQuota.feature:27
apiWebdavProperties1/getQuota.feature:28
apiWebdavProperties1/getQuota.feature:48
apiWebdavProperties1/getQuota.feature:49
apiWebdavProperties1/getQuota.feature:61
apiWebdavProperties1/getQuota.feature:62
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
#
# https://github.com/owncloud/ocis-reva/issues/214 XML properties in webdav response not properly encoded
apiWebdavProperties2/getFileProperties.feature:37
apiWebdavProperties2/getFileProperties.feature:39
apiWebdavProperties2/getFileProperties.feature:40
apiWebdavProperties2/getFileProperties.feature:41
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
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:231
apiWebdavProperties2/getFileProperties.feature:232
#
# 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/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:270
apiWebdavProperties2/getFileProperties.feature:271
#
# https://github.com/owncloud/ocis-reva/issues/11 listing received shares does not work
apiWebdavProperties2/getFileProperties.feature:302
apiWebdavProperties2/getFileProperties.feature:303
#
apiWebdavProperties2/getFileProperties.feature:314
apiWebdavProperties2/getFileProperties.feature:315
#
# https://github.com/owncloud/ocis-reva/issues/216 Private link support
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
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:372
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:407
apiWebdavProperties2/getFileProperties.feature:408
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:420
apiWebdavProperties2/getFileProperties.feature:421
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:433
apiWebdavProperties2/getFileProperties.feature:434
#
# https://github.com/owncloud/ocis-reva/issues/217 Some failing tests with Webdav custom properties
apiWebdavProperties2/getFileProperties.feature:482
apiWebdavProperties2/getFileProperties.feature:483
#
# 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
#
# 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
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:14
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:31
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:48
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:65
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:83
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:92
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:106
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:143
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:144
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:146
apiWebdavUpload1/uploadFileAsyncUsingNewChunking.feature:159
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavUpload1/uploadFileToBlacklistedName.feature:19
apiWebdavUpload1/uploadFileToBlacklistedName.feature:20
#
# https://github.com/owncloud/ocis-reva/issues/54 system configuration options missing
apiWebdavUpload1/uploadFileToBlacklistedName.feature:31
apiWebdavUpload1/uploadFileToBlacklistedName.feature:32
#
# https://github.com/owncloud/ocis-reva/issues/54 system configuration options missing
apiWebdavUpload1/uploadFileToBlacklistedName.feature:65
apiWebdavUpload1/uploadFileToBlacklistedName.feature:66
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:14
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:23
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:47
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:48
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:49
apiWebdavUpload1/uploadFileToBlacklistedNameAsyncUsingNewChunking.feature:52
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:20
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:21
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:33
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:34
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:69
apiWebdavUpload1/uploadFileToExcludedDirectory.feature:70
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:14
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:24
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:49
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:50
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:51
apiWebdavUpload1/uploadFileToExcludedDirectoryAsyncUsingNewChunking.feature:54
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:12
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:21
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:45
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:46
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:47
apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:50
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:13
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:20
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:37
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:38
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:39
apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:42
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:12
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:22
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:47
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:48
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:49
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:52
#
# https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:13
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:21
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:39
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:40
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:41
apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:44
#
# https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist
apiWebdavUpload2/uploadFileUsingNewChunking.feature:12
apiWebdavUpload2/uploadFileUsingNewChunking.feature:29
apiWebdavUpload2/uploadFileUsingNewChunking.feature:43
apiWebdavUpload2/uploadFileUsingNewChunking.feature:57
apiWebdavUpload2/uploadFileUsingNewChunking.feature:79
apiWebdavUpload2/uploadFileUsingNewChunking.feature:85
apiWebdavUpload2/uploadFileUsingNewChunking.feature:94
apiWebdavUpload2/uploadFileUsingNewChunking.feature:98
apiWebdavUpload2/uploadFileUsingNewChunking.feature:106
apiWebdavUpload2/uploadFileUsingNewChunking.feature:135
apiWebdavUpload2/uploadFileUsingNewChunking.feature:136
apiWebdavUpload2/uploadFileUsingNewChunking.feature:137
apiWebdavUpload2/uploadFileUsingNewChunking.feature:157
apiWebdavUpload2/uploadFileUsingNewChunking.feature:158
#
# https://github.com/owncloud/ocis-reva/issues/17 uploading with old-chunking does not work
apiWebdavUpload2/uploadFileUsingOldChunking.feature:13
apiWebdavUpload2/uploadFileUsingOldChunking.feature:26
apiWebdavUpload2/uploadFileUsingOldChunking.feature:35
apiWebdavUpload2/uploadFileUsingOldChunking.feature:44
apiWebdavUpload2/uploadFileUsingOldChunking.feature:76
apiWebdavUpload2/uploadFileUsingOldChunking.feature:77
apiWebdavUpload2/uploadFileUsingOldChunking.feature:97
apiWebdavUpload2/uploadFileUsingOldChunking.feature:98
apiWebdavUpload2/uploadFileUsingOldChunking.feature:99
apiWebdavUpload2/uploadFileUsingOldChunking.feature:100
apiWebdavUpload2/uploadFileUsingOldChunking.feature:101

View File

@@ -0,0 +1,27 @@
@api
Feature: auth
@issue-ocis-reva-30 @issue-ocis-reva-65
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send DELETE requests to OCS endpoints as admin with wrong password
When the administrator requests these endpoints with "DELETE" using password "invalid" about user "Alice"
| endpoint |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/pending/123 |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/shares/123 |
| /ocs/v1.php/apps/files_sharing/api/v1/shares/pending/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/shares/pending/123 |
| /ocs/v1.php/cloud/apps/testing |
| /ocs/v2.php/cloud/apps/testing |
| /ocs/v1.php/cloud/groups/group1 |
| /ocs/v2.php/cloud/groups/group1 |
| /ocs/v1.php/cloud/users/%username% |
| /ocs/v2.php/cloud/users/%username% |
| /ocs/v1.php/cloud/users/%username%/groups |
| /ocs/v2.php/cloud/users/%username%/groups |
| /ocs/v1.php/cloud/users/%username%/subadmins |
| /ocs/v2.php/cloud/users/%username%/subadmins |
Then the HTTP status code of responses on all endpoints should be "401"
And the OCS status code of responses on all endpoints should be "notset"

View File

@@ -0,0 +1,112 @@
@api
Feature: auth
Background:
Given user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-29
@issue-ocis-reva-30
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: using OCS anonymously
When a user requests these endpoints with "GET" and no authentication
| endpoint |
| /ocs/v1.php/apps/files_external/api/v1/mounts |
| /ocs/v2.php/apps/files_external/api/v1/mounts |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/pending |
| /ocs/v1.php/apps/files_sharing/api/v1/shares |
| /ocs/v2.php/apps/files_sharing/api/v1/shares |
| /ocs/v1.php/cloud/apps |
| /ocs/v2.php/cloud/apps |
| /ocs/v1.php/cloud/groups |
| /ocs/v2.php/cloud/groups |
| /ocs/v1.php/cloud/users |
| /ocs/v2.php/cloud/users |
| /ocs/v1.php/config |
| /ocs/v2.php/config |
| /ocs/v1.php/privatedata/getattribute |
| /ocs/v2.php/privatedata/getattribute |
Then the HTTP status code of responses on all endpoints should be "401"
And the OCS status code of responses on all endpoints should be "notset"
@issue-ocis-reva-11
@issue-ocis-reva-30
@issue-ocis-reva-31
@issue-ocis-reva-32
@issue-ocis-reva-33
@issue-ocis-reva-34
@issue-ocis-reva-35
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: using OCS with non-admin basic auth
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v1.php/apps/files_external/api/v1/mounts |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending |
| /ocs/v1.php/privatedata/getattribute |
| /ocs/v1.php/cloud/groups |
| /ocs/v1.php/cloud/apps |
Then the HTTP status code of responses on all endpoints should be "200"
And the OCS status code of responses on all endpoints should be "998"
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v1.php/config |
Then the HTTP status code of responses on all endpoints should be "200"
And the OCS status code of responses on all endpoints should be "100"
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v2.php/apps/files_external/api/v1/mounts |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/pending |
# | /ocs/v1.php/apps/files_sharing/api/v1/shares | 100 | 200 |
# | /ocs/v2.php/apps/files_sharing/api/v1/shares | 100 | 200 |
| /ocs/v2.php/cloud/apps |
| /ocs/v2.php/cloud/groups |
| /ocs/v2.php/privatedata/getattribute |
Then the HTTP status code of responses on all endpoints should be "404"
And the OCS status code of responses on all endpoints should be "998"
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v1.php/cloud/users |
Then the HTTP status code of responses on all endpoints should be "200"
And the OCS status code of responses on all endpoints should be "403"
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v2.php/cloud/users |
Then the HTTP status code of responses on all endpoints should be "403"
And the OCS status code of responses on all endpoints should be "403"
When the user "Alice" requests these endpoints with "GET" with basic auth
| endpoint |
| /ocs/v2.php/config |
Then the HTTP status code of responses on all endpoints should be "200"
And the OCS status code of responses on all endpoints should be "200"
@issue-ocis-reva-29
@issue-ocis-reva-30
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: using OCS as normal user with wrong password
When user "Alice" requests these endpoints with "GET" using password "invalid"
| endpoint |
| /ocs/v1.php/apps/files_external/api/v1/mounts |
| /ocs/v2.php/apps/files_external/api/v1/mounts |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/pending |
| /ocs/v1.php/apps/files_sharing/api/v1/shares |
| /ocs/v2.php/apps/files_sharing/api/v1/shares |
| /ocs/v1.php/cloud/apps |
| /ocs/v2.php/cloud/apps |
| /ocs/v1.php/cloud/groups |
| /ocs/v2.php/cloud/groups |
| /ocs/v1.php/cloud/users |
| /ocs/v2.php/cloud/users |
| /ocs/v1.php/config |
| /ocs/v2.php/config |
| /ocs/v1.php/privatedata/getattribute |
| /ocs/v2.php/privatedata/getattribute |
Then the HTTP status code of responses on all endpoints should be "401"
And the OCS status code of responses on all endpoints should be "notset"

View File

@@ -0,0 +1,35 @@
@api
Feature: auth
Background:
Given user "Alice" has been created with default attributes and skeleton files
@issue-ocis-reva-30
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send POST requests to OCS endpoints as normal user with wrong password
When user "Alice" requests these endpoints with "POST" including body "doesnotmatter" using password "invalid" about user "Alice"
| endpoint |
| /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/remote_shares/pending/123 |
| /ocs/v1.php/apps/files_sharing/api/v1/shares |
| /ocs/v2.php/apps/files_sharing/api/v1/shares |
| /ocs/v1.php/apps/files_sharing/api/v1/shares/pending/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/shares/pending/123 |
| /ocs/v1.php/cloud/apps/testing |
| /ocs/v2.php/cloud/apps/testing |
| /ocs/v1.php/cloud/groups |
| /ocs/v2.php/cloud/groups |
| /ocs/v1.php/cloud/users |
| /ocs/v2.php/cloud/users |
| /ocs/v1.php/cloud/users/%username%/groups |
| /ocs/v2.php/cloud/users/%username%/groups |
| /ocs/v1.php/cloud/users/%username%/subadmins |
| /ocs/v2.php/cloud/users/%username%/subadmins |
| /ocs/v1.php/person/check |
| /ocs/v2.php/person/check |
| /ocs/v1.php/privatedata/deleteattribute/testing/test |
| /ocs/v2.php/privatedata/deleteattribute/testing/test |
| /ocs/v1.php/privatedata/setattribute/testing/test |
| /ocs/v2.php/privatedata/setattribute/testing/test |
Then the HTTP status code of responses on all endpoints should be "401"
And the OCS status code of responses on all endpoints should be "notset"

View File

@@ -0,0 +1,18 @@
@api
Feature: auth
@issue-ocis-reva-30
# after fixing all issues delete this Scenario and use the one from oC10 core
Scenario: send PUT request to OCS endpoints as admin with wrong password
When the administrator requests these endpoints with "PUT" with body "doesnotmatter" using password "invalid" about user "Alice"
| endpoint |
| /ocs/v1.php/cloud/users/%username% |
| /ocs/v2.php/cloud/users/%username% |
| /ocs/v1.php/cloud/users/%username%/disable |
| /ocs/v2.php/cloud/users/%username%/disable |
| /ocs/v1.php/cloud/users/%username%/enable |
| /ocs/v2.php/cloud/users/%username%/enable |
| /ocs/v1.php/apps/files_sharing/api/v1/shares/123 |
| /ocs/v2.php/apps/files_sharing/api/v1/shares/123 |
Then the HTTP status code of responses on all endpoints should be "401"
And the OCS status code of responses on all endpoints should be "notset"

View File

@@ -0,0 +1,40 @@
<?php
use Behat\Behat\Context\Context;
use Behat\Behat\Hook\Scope\BeforeScenarioScope;
use TestHelpers\AppConfigHelper;
use TestHelpers\SetupHelper;
require_once 'bootstrap.php';
/**
* Context for Reva specific steps
*/
class RevaContext implements Context {
/**
* @var FeatureContext
*/
private $featureContext;
/**
* @BeforeScenario
*
* @param BeforeScenarioScope $scope
*
* @return void
* @throws Exception
*/
public function setUpScenario(BeforeScenarioScope $scope) {
// Get the environment
$environment = $scope->getEnvironment();
// Get all the contexts you need in this context
$this->featureContext = $environment->getContext('FeatureContext');
SetupHelper::init(
$this->featureContext->getAdminUsername(),
$this->featureContext->getAdminPassword(),
$this->featureContext->getBaseUrl(),
$this->featureContext->getOcPath()
);
}
}

View File

@@ -0,0 +1,14 @@
<?php
$pathToCore = \getenv('PATH_TO_CORE');
if ($pathToCore === false) {
$pathToCore = "../core";
}
require_once $pathToCore . '/tests/acceptance/features/bootstrap/bootstrap.php';
$classLoader = new \Composer\Autoload\ClassLoader();
$classLoader->addPsr4(
"", $pathToCore . "/tests/acceptance/features/bootstrap", true
);
$classLoader->register();

View File

@@ -0,0 +1,22 @@
{
"config" : {
"platform": {
"php": "7.2"
}
},
"require": {
"behat/behat": "^3.7",
"behat/mink": "1.7.1",
"behat/mink-extension": "^2.3",
"behat/mink-goutte-driver": "^1.2",
"behat/mink-selenium2-driver": "^1.4",
"jarnaiz/behat-junit-formatter": "^1.3",
"rdx/behat-variables": "^1.2",
"sensiolabs/behat-page-object-extension": "^2.3",
"symfony/translation": "^4.4",
"sabre/xml": "^2.2",
"guzzlehttp/guzzle": "^6.5",
"phpunit/phpunit": "^8.5",
"laminas/laminas-ldap": "^2.10"
}
}