Commit Graph

1699 Commits

Author SHA1 Message Date
Viktor Scharf
9efc71d42e [decomposed] more cli command tests (#3087)
* more cli command tests

* add tests to expected failures file
2026-07-09 07:51:43 +02:00
Dominik Schmidt
11449b5943 docs(graph): frame colon paths as "encode segments" instead of a raw-colon edge case
Per review discussion: don't document accidental behavior. The contract is
simply "percent-encode each path segment, as MS Graph requires; encode ':'
as %3A" - OpenCloud allows ':' in names (OneDrive forbids it), so it's one
more character in the mandatory encode set, not a special case.

The parser is unchanged (split on ":/", decode once). This only rewrites the
docs (code comment, acceptance feature, PR description) to state the encode
contract, and drops the tests that relied on a raw, unencoded ':' in a file
name - keeping the "%3A" test that reflects the actual contract.
2026-07-01 17:44:31 +02:00
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
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
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
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
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
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
Jörn Friedrich Dreyer
5fc01861c8 update tests to expect correct status codes
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-01-07 15:04:34 +01:00
Jörn Friedrich Dreyer
c99342318f merge ocdav into frontend
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-01-07 15:04:34 +01:00
Ralf Haferkamp
6082e0c4df fix: Show username in unprivileged search results (#2104)
* fix: Show username in unprivileged search results

`onPremisesSamAccountName` is a mandatory attribute according to the
spec. There's no harm in returning it in the search results also for
unprivileged users.

Fixes: #144

* adapt tests

* adapt tests

* adapt tests

---------

Co-authored-by: Viktor Scharf <v.scharf@opencloud.eu>
2026-01-07 12:43:27 +01:00
Sawjan Gurung
38786ab291 [tests-only] test: fix API tests (#2087)
* test: use placeholder value

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

* test: fix antivirus test expectations

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

---------

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2025-12-30 10:29:09 +05:45
Viktor Scharf
9b62a97857 [full-ci] use graph api in the enforcePasswordPublicLink.feature (#2050)
* use graph api in the enforcePasswordPublicLink.feature

* delete from expected failures file
2025-12-18 14:05:52 +01:00
Florian Schade
f465a2bfa9 fix: flaky integration tests 2025-12-15 16:44:18 +01:00
Sawjan Gurung
cffeb4a690 [full-ci][tests-only] test: fix some test flakiness (#2003)
* test: check content after upload

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

test: check content with retry

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

* test: check empty body before json decoding

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

* test: wait post-processing for webdav requests if applicable

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

* test: check token before doing request

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

test: check body before json decoding

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

test: add wait step

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

---------

Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2025-12-15 14:45:12 +05:45
Florian Schade
40d8aacea4 enhancement: introduce build time edition channels
be careful, the env:OC_EDITION, env:FRONTEND_EDITION, and conf:edition got removed as part of this commit, no deprecation because the flag is build time only!
2025-12-10 16:21:42 +01:00
Saw-jan
ee16c0597c test: add test to check mismatch offset during TUS upload
Signed-off-by: Saw-jan <saw.jan.grg3e@gmail.com>
2025-12-09 12:51:35 +05:45
Viktor Scharf
6c171e11a2 check propfing after renaming data in file system (#1809) 2025-12-05 09:11:23 +01:00
Viktor Scharf
2bdd98f5cf [full-ci] revaBump-v2.40.1 (#1927)
* revaBump-v2.40.0

* adapt tests

* bring-#442

* adapt tests

* bring-#444

* ocm fixes

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

* adapt tests

* adapt unit tests

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

* revaUpdate-2.40.1

* update opencloud-version-4.0.0-rc.3

---------

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Co-authored-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2025-11-28 17:34:12 +01:00
Benedikt Kulmann
487a2a0aa6 fix: add update server to default csp rules (#1875)
* fix: add update server to default csp rules

* adapt tests

---------

Co-authored-by: Viktor Scharf <v.scharf@opencloud.eu>
2025-11-21 17:13:22 +01:00
Viktor Scharf
60dfc95130 adapt tests 2025-11-13 18:03:03 +01:00
Viktor Scharf
b73353ef9b fix flaky test 2025-11-13 09:32:07 +01:00
Viktor Scharf
0b2e0fb124 add share sync to collaborativePosix suite 2025-11-12 10:38:35 +01:00
Viktor Scharf
93d84478a4 removed test virus files from repo (#1812)
* remove virus file from repo

* doenload zip file

* adjust tests
2025-11-10 09:38:51 +01:00
Viktor Scharf
4ffb79b680 lint fix 2025-11-06 16:31:21 +01:00
Viktor Scharf
a0f90fee1a Sync share before action 2025-11-06 16:31:21 +01:00
Florian Schade
fb8af22073 chore: bump reva (#1701)
* chore: bump reva

* enhancement(test): add postprocessing wait helper
2025-10-27 12:01:27 +01:00
Viktor Scharf
f04f6ad470 [full-ci] feat: implement OIDC authentication option (#1676)
* feat: implement Bearer Token authentication option

* fix
2025-10-27 11:17:44 +01:00
Viktor Scharf
44ee182aa3 apiTest-coverage for #1523 (#1660)
* apiTest-coverage for #1523

* check propfind contans correct files name

* bump reva for getting #381
2025-10-24 09:45:03 +02:00
Viktor Scharf
c916528788 [full-ci] deleted unused step definitions (#1639)
* deleted unused step definitions

* fix flaky tests. rearange ine numbers
2025-10-10 11:34:43 +02:00
Viktor Scharf
0399398bc8 do not save edited users 2025-10-08 16:45:16 +02:00
Viktor Scharf
2fba3c5cdd check thumbnails in the share with me response (#1605)
* check thumbnails in the share with me response

* check preview in report response
2025-10-07 07:43:46 +02:00
Viktor Scharf
25246782b2 [full-ci] Enhance getSpaceByName: check local cache before Graph API calls (#1574)
* Enhance getSpaceByName: check local cache before Graph API calls

* Update API endpoint for regular user drives
2025-09-30 13:08:21 +02:00
Viktor Scharf
723340dba6 [full-ci] getting personal space by userId instead of userName (#1553)
* getting personal space by userId instead of userName

* delete geting userId via api call

* add new created user id to user list

* fix after review
2025-09-26 10:51:41 +02:00