Commit Graph

2608 Commits

Author SHA1 Message Date
Dominik Schmidt
b6a4a66aef refactor(graph): split colon paths on ":/" so colons in names work
Review feedback: split the anchor/path and path/suffix on the structural
delimiter ":/" instead of a bare ":". Since the path and suffix always
start with "/", ":/" is the real delimiter, and a ":" *inside* a file or
directory name (which OpenCloud allows but MS Graph/OneDrive forbid) is
kept as part of the path instead of being mistaken for a separator.

A ":" sitting at a segment boundary (e.g. a name ending in ":") stays
ambiguous and must be percent-encoded as "%3A": the split works on the
literal ":/", so "%3A" is never a delimiter and decodes back to ":". This
is now documented in the code and the acceptance feature.

Tests: colon inside a name (with and without a suffix), the Stat path
carrying the colon, and the "%3A" boundary escape.
2026-07-01 17:44:31 +02:00
Dominik Schmidt
3b42c6250d test(graph): acceptance tests for MS Graph colon-syntax path lookup
Cover the rewrite shapes the middleware handles end-to-end against a
real OpenCloud server: root-anchored, item-anchored, deep paths,
trailing colon, and the "/<path>:/<suffix>" sub-route form. Also
assert that NOT_FOUND and PERMISSION_DENIED both collapse to 404.

The /permissions sub-route is registered only at /v1beta1, and the
v1beta1 GetDriveItem handler is share-jail-only, so the v1beta1
mount of the middleware is exercised through the permissions
scenario, since there is no other v1beta1 endpoint that works for
regular personal-drive items.
2026-07-01 17:44:31 +02:00
Michael Stingl
ea29a5d1a4 test(apiSpaces): a space admin can delete a space with no manager (#3040)
#1877 reordered the api-test teardown to delete spaces before users, so the
state where a project space's manager has been deleted is no longer exercised.
This adds explicit coverage for it: the only manager of a project space is
deleted, and a space admin can still list and delete (disable + purge) the space.

Related: #1878
2026-06-29 10:00:44 +02:00
Michael Stingl
a3951098c6 test(coreApiWebdavUploadTUS): expect 400 for invalid TUS upload names
opencloud-eu/reva#655 changes the TUS create response for an invalid name
from 412 to 400. Update the invalid-name scenario to match.

Each example now carries its own expected status in an <http-status-code>
column. Names that fail ValidateName expect 400. The three folder/file rows
stay 412: filename() applies path.Base first, so "folder/file" becomes the
valid leaf "file" and never reaches the changed branch.

lowLevelCreationExtension.feature is unchanged; its missing-Upload-Length
case still returns 412.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 16:11:25 +02:00
Viktor Scharf
5c4a6603b9 api-test: deleting space (#2970)
* api-test: deleting space

* Update feature file for space management actions

* Update disableEnableDeleteSpaces.feature
2026-06-24 12:05:40 +02:00
Ralf Haferkamp
99d80f30a9 fix: Status codes for Space Disable/Delete
Allow a "permission denied error" from reva to bubble up to the client.
Reva was fixed to return "permission denied" only when the space to be
delete can actually be listed by the user. Other wise it will return
"not found". See reva commit 1bf72cb76394671f373e87f15f23f978cf41ab08.

So when a user with the 'can manage' role tries to purge an already
disabled space it will now get "Forbidden" status instead of a "Not
found".

Also fixes the expected status codes in the tests.
2026-06-22 11:06:26 +02:00
André Duffeck
92e6c8f3ff Do not choke on users that weren't cleaned up yet 2026-06-12 15:13:32 +02:00
Ralf Haferkamp
49726b8af8 Merge pull request #2834 from aduffeck/fix-space-search
Only try to limit search to spaces if there's a space id to limit to
2026-05-27 16:07:55 +02:00
Ralf Haferkamp
5efe80577f Merge pull request #2836 from rhafer/issue/2833
fix: translations for activities and others
2026-05-27 12:12:50 +02:00
v.scharf
c445f1fc93 adjust tets failures file 2026-05-27 11:56:52 +02:00
Ralf Haferkamp
719bb2123c fix: translations for activities and others
This fixes the server-side translations for "activties" and e.g. the
default space description. We need to bump "leonelquinteros/gotext"
to latest master for that as even the latest release still contains
and issue that cause `go vet` to complain about non-constant
format strings.

Fixes: #2833, #2835
2026-05-27 11:22:26 +02:00
v.scharf
071b09c504 remove tests from expected failures file 2026-05-26 15:15:04 +02:00
Viktor Scharf
cff56490cb fix-2824. run tests without remote.php (#2826) 2026-05-26 13:35:49 +02:00
Viktor Scharf
594c9bb2b6 [decomposed] chore: bump web to v7.0.1 (#2791) 2026-05-20 11:35:17 +02:00
Jörn Friedrich Dreyer
66fae3061d Merge pull request #2755 from opencloud-eu/no-registry-lookup-in-cli
No registry lookup in cli
2026-05-18 11:38:21 +02:00
Viktor Scharf
55dbd40324 [full-ci] preview-tests. update fixtures for different processors (#2767)
* preview test: addapt fixtures

* fix lint
2026-05-15 15:56:14 +02:00
Jörn Friedrich Dreyer
2b1c4fe300 index command: allow passing insecure flag
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-05-13 14:00:19 +02:00
Jörn Friedrich Dreyer
13c7af7f7f tests: set endpoint for index cli
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-05-13 13:52:26 +02:00
Ralf Haferkamp
393926bd73 Merge remote-tracking branch 'origin/main' into feature/guest-links 2026-05-11 15:39:27 +02:00
Viktor Scharf
6218d36118 refactor(ci): simplify tests pipelines (#2699)
* refactor(ci): simplify tests pipelines

* fix
2026-04-30 14:09:09 +02:00
Ralf Haferkamp
173485cf44 Merge remote-tracking branch 'origin/main' into feature/guest-links 2026-04-29 10:24:57 +02:00
Viktor Scharf
1ca286b6fb delete PROPATCH favorite tests (#2689) 2026-04-28 16:25:52 +02:00
Ralf Haferkamp
f07454421a Revert "wrapper fix: kill all opencloud and nats processes"
This reverts commit f56767eb71.
2026-04-28 16:18:45 +02:00
Ralf Haferkamp
fb532206b3 Revert "use process group kill"
This reverts commit a869bb5166.
2026-04-28 16:18:45 +02:00
Ralf Haferkamp
b309c39386 Revert "return waitAllServices"
This reverts commit 5ea5a8dddb.
2026-04-28 16:18:45 +02:00
v.scharf
3be224127e adjust test 2026-04-23 17:07:00 +02:00
v.scharf
4536fb20ce adjust tests 2026-04-23 17:07:00 +02:00
Ralf Haferkamp
44bbc07273 tests: Adjust acceptance test for recent Space sharing changes
The `id` property of the `permissions` on a space root does not
longer have that special `u:<userid>` format any. It now has the
same format as the permission id on "normal" driveItems.
2026-04-23 17:07:00 +02:00
v.scharf
5ea5a8dddb return waitAllServices 2026-04-23 15:19:59 +02:00
v.scharf
a869bb5166 use process group kill 2026-04-23 15:19:59 +02:00
v.scharf
f56767eb71 wrapper fix: kill all opencloud and nats processes 2026-04-23 15:19:59 +02:00
Viktor Scharf
8e804944f7 adjust all-check-finished step (#2616) 2026-04-17 16:08:17 +02:00
André Duffeck
5aed50e835 Adjust quota test to fixed behavior
We now report a quota of -3 for unlimited quota instead of 0, which
clients interpreted as a quota of 0.
2026-04-14 12:30:16 +02:00
Viktor Scharf
a2401040a0 api-test: check that report contains favorites (#2531) 2026-03-30 16:28:13 +02:00
Viktor Scharf
627f9a742e api-tests: search for favorites (#2487) 2026-03-18 11:10:09 +01:00
Viktor Scharf
e161069317 favorites tests (#2474) 2026-03-16 14:49:17 +01:00
André Duffeck
a54273b8f6 Adapt expected failures until the tests have been adapted 2026-03-13 09:38:58 +01:00
Ralf Haferkamp
c33850f213 Reapply "adapt test for #514 (#2255)" (#2305)
This reverts commit f21207ed96.
2026-02-09 14:23:24 +01:00
Ralf Haferkamp
f21207ed96 Revert "adapt test for #514 (#2255)"
This reverts commit 400dc9f8ae.
2026-02-05 10:33:26 +01:00
Viktor Scharf
400dc9f8ae adapt test for #514 (#2255) 2026-02-03 19:51:33 +01:00
Viktor Scharf
567e8a7e8c api-test: upload-rename-download file with back slash (#2239) 2026-02-02 07:59:51 +01:00
Saw-jan
cd408c6923 test: add hook failures to the test failures list
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-28 11:29:48 +05:45
Saw-jan
0570f2ecea ci: check discovery urls
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-27 09:57:30 +05:45
Saw-jan
a3f9ebdce8 test: add date-time in the request-response log
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-27 09:43:24 +05:45
Viktor Scharf
38d6ad53cd replace exception to assersion (#2196) 2026-01-22 07:22:12 +01:00
Sawjan Gurung
d49123b36b test: auto-generate virus files before test run (#2191)
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-21 14:07:41 +05:45
Sawjan Gurung
b40c3f068c test: remove accountHashDifficulty test suite (#2190)
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-21 14:07:01 +05:45
Sawjan Gurung
8d3b2e3eeb ci: override with-remote-php config if specified (#2184)
test: update expected-failures list

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2026-01-21 09:38:15 +05:45
Sawjan Gurung
601ebc0f0f [full-ci] test: use single command to run the containers and the API tests (#2169)
* test: setup for running wopi API tests locally

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* chore: remove unnecessary target

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: merge test run commands

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: merge local and core expected failures

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: remove unnecessary commands and files

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: add help command

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* docs(test): update testing docs as per the new changes

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: remove duplicate expected failure list

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* tset: fix term colors in run script

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* docs(test): update readme docs

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: beautify logs

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* change run-test.sh

* test: expose more test envs

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* docs(test): update docs

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

---------

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
Co-authored-by: Viktor Scharf <v.scharf@opencloud.eu>
2026-01-20 16:44:04 +05:45
Sawjan Gurung
e86e95db24 [tests-only] test: setup for running wopi API tests locally (#2139)
* test: setup for running wopi API tests locally

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* docs: add docs to run wopi API tests

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* chore: remove unnecessary target

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* test: export compose file env

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* docs(test): use posix examples

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>

* adapt for macos

---------

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
Co-authored-by: Viktor Scharf <v.scharf@opencloud.eu>
2026-01-19 10:53:45 +05:45