nextcloud-server/apps/files_sharing/tests
nfebe 299662e05d fix(sharing): Allow reasonable control 4 'Hide download' on fed shares
When creating public links from federated shares, users should be able to set
the 'Hide download' option independently as long as they are more restrictive
than the original share permissions.

Previously, the `checkInheritedAttributes` method was ignoring user preferences
and always overriding the hideDownload setting based solely on inherited
permissions, preventing users from disabling downloads even when the parent
share allowed them.

This fix implements some sort of inheritance logic:
- Users can only be MORE restrictive than parent shares, never LESS restrictive
- If parent hides downloads -> child MUST hide downloads (enforced)
- If parent allows downloads -> child can CHOOSE to hide or allow downloads
- If parent forbids downloads entirely -> child cannot enable downloads

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-11-04 14:03:06 +07:00
..
Collaboration chore: run rector 2025-07-01 22:45:52 +07:00
Command chore: run rector 2025-07-01 22:45:52 +07:00
Controller fix(sharing): Allow reasonable control 4 'Hide download' on fed shares 2025-11-04 14:03:06 +07:00
External refactor: remove duplicated types and add return types 2025-07-23 15:59:26 +07:00
Listener fix(tests): Fix files_sharing tests conflicting with other tests 2025-06-10 15:38:43 +07:00
Middleware chore: run rector 2025-07-01 22:45:52 +07:00
Migration chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
ApiTest.php feat(files_sharing): Toggle display for trusted server shares 2025-07-29 13:24:49 +07:00
ApplicationTest.php chore: run rector 2025-07-01 22:45:52 +07:00
CacheTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
CapabilitiesTest.php feat(preset): share link expiration date 2025-08-14 16:07:32 +07:00
DeleteOrphanedSharesJobTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
EncryptedSizePropagationTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
EtagPropagationTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
ExpireSharesJobTest.php chore: run rector 2025-07-01 22:45:52 +07:00
ExternalStorageTest.php chore: run rector 2025-07-01 22:45:52 +07:00
GroupEtagPropagationTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
HelperTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
LockingTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
MountProviderTest.php chore: run rector 2025-07-01 22:45:52 +07:00
PropagationTestCase.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
ShareTest.php chore: run rector 2025-07-01 22:45:52 +07:00
SharedMountTest.php chore: run rector 2025-07-01 22:45:52 +07:00
SharedStorageTest.php chore: run rector 2025-07-01 22:45:52 +07:00
SharesReminderJobTest.php chore: run rector 2025-07-01 22:45:52 +07:00
SizePropagationTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
TestCase.php Revert "perf(base): Stop setting up the FS for every basic auth request" 2025-08-28 17:11:31 +07:00
UnshareChildrenTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00
UpdaterTest.php chore: run rector 2025-07-01 22:45:52 +07:00
WatcherTest.php chore: apply new CSFixer rules 2025-07-01 16:26:50 +07:00