Commit graph

6105 commits

Author SHA1 Message Date
François Freitag
b0847abcc2 Rewrite requesttoken.spec.js with Jest
[Jest](https://jestjs.io/) is a test runner that focuses on simplicity.
It instruments babel to transform modules and test them.

Using Jest simplifies the existing configuration and allows dropping a
bunch of workarounds, as well as following the shared Babel
configuration for new code.

Signed-off-by: François Freitag <mail@franek.fr>
2021-05-30 10:44:34 +02:00
Thomas Citharel
1c0d975654
Make dav respect disallowing sharing with groups
Closes #25390

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-05-26 11:19:59 +02:00
blizzz
1b47886abb
Merge pull request #27035 from nextcloud/techdebt/26866/userscontroller-accountmanager-api
do not use private AccountManager in UsersController
2021-05-25 21:22:37 +02:00
Morris Jobke
726d01843e
Merge pull request #26600 from hosting-de/feature/occ-tags
Add commands to manage tags via OCC
2021-05-25 16:54:06 +02:00
Arthur Schiwon
847ed37afc
do not use private AccountManager in UsersController
- extends IAccountProperty for verificationData getters and setters
- implementation thereof ^
- and of course adaption of UsersController

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-05-25 14:35:38 +02:00
Johannes Leuker
d606799ee2 Add commands to manage tags via OCC
list, add, delete, edit

Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-05-25 11:29:32 +02:00
Morris Jobke
f1dbabd910
Merge pull request #26727 from nextcloud/group-exclude-link-share
Add option to exclude groups from creating link shares
2021-05-21 15:35:39 +02:00
Valdnet
1627eb45bb
l10n: Fix test 2021-05-20 09:26:38 +02:00
Julius Härtl
35b910cf8e
Merge pull request #26322 from nextcloud/recent-search
Use file search for recent files and optimize getting share types
2021-05-18 09:44:08 +02:00
Roeland Jago Douma
ee3dc57cbd
Merge pull request #26626 from J0WI/strict-security
Make Security module strict
2021-05-18 08:43:13 +02:00
blizzz
0ab5b3e265
Merge pull request #26679 from nextcloud/bugfix/noid/fix-unauthorized-ocs-status-in-provisioning
Fix unauthorized OCS status in provisioning
2021-05-13 23:39:20 +02:00
Robin Appelman
b1dca57a1c
load share settings from the share manager in more places
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-05-12 16:11:28 +02:00
Joas Schilling
b6c6527705
Fix unauthorized OCS status in provisioning
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-05-12 08:16:07 +02:00
Arthur Schiwon
8413ed9475
allow to set valid scopes only in AccountProperty
the auto-fallback to v2-local is removed as well to react on wrong input

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-05-12 01:31:15 +02:00
Christoph Wurst
6a5d89c1ac
Merge pull request #26758 from J0WI/more-strict
Some more strict_types
2021-04-28 09:28:19 +02:00
Robin Appelman
ed2d02d5f1
better cleanup of user files on user deletion
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-04-27 20:29:51 +02:00
Christoph Wurst
99f0b10421
Merge pull request #26591 from nextcloud/techdebt/noid/less-ilogger
Less ILogger
2021-04-27 15:38:12 +02:00
Joas Schilling
48c50277a9
Merge pull request #26718 from nextcloud/bugfix/noid/fix-ratelimit-template
Fix ratelimit template
2021-04-27 15:18:02 +02:00
Joas Schilling
c52a026f55
Merge pull request #26572 from nextcloud/bugfix/noid/throw-401-when-authentication-is-provided-and-invalid
Throw "401 Unauthenticated" when authentication is provided but invalid
2021-04-27 14:37:28 +02:00
Joas Schilling
df47445c01
Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-27 14:34:32 +02:00
Joas Schilling
174f4dd043
Fix ratelimit template
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-27 13:55:34 +02:00
Joas Schilling
aa651fd629
Merge pull request #26259 from nextcloud/feature/noid/validate-website-to-be-valid
Validate the website field input to be a valid URL
2021-04-26 13:56:01 +02:00
J0WI
8323cbb9e5 Use strict
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2021-04-26 12:45:12 +02:00
Morris Jobke
012f791c8f
Merge pull request #26375 from nextcloud/techdebt/noid/symfony-component-translation-pluralization-rules-is-deprecated
"Symfony\Component\Translation\PluralizationRules" is deprecated
2021-04-22 21:20:16 +02:00
Joas Schilling
d80cc76ee7
Validate the website field input to be a valid URL
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-22 16:34:13 +02:00
Joas Schilling
4ed296db9f
Fix Authentication test
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-22 15:36:34 +02:00
John Molakvoæ
3da956bcdc
Merge pull request #23529 from Simounet/feat/23397-settings-new-user-modal
Settings: new user row replaced by a modal
2021-04-21 16:38:46 +02:00
Robin Appelman
effb7dc8ba
set mimetype for objects uploaded to object storages
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-04-21 15:25:58 +02:00
Simounet
45c3b2a478
Settings: new user row replaced by a modal
Signed-off-by: Simounet <contact@simounet.net>
2021-04-21 14:42:46 +02:00
Robin Appelman
0d5f4edc22
adjust tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-04-21 14:09:07 +02:00
Morris Jobke
d2ea068552
Merge pull request #26669 from nextcloud/nickvergessen-patch-1
Fix PHP CS
2021-04-21 14:07:17 +02:00
John Molakvoæ
31d88209f7
Merge pull request #25991 from nextcloud/update-acceptance-tests-to-selenium3 2021-04-21 09:31:29 +02:00
Joas Schilling
2a11713337 Update CredentialsManagerTest.php
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-04-21 08:33:10 +02:00
Morris Jobke
9e8690d912
Merge pull request #26654 from nextcloud/bugfix/noid/fix-security-credentials-manager-test
Fix security credentials manager test
2021-04-20 22:03:52 +02:00
Roeland Jago Douma
5ee9e1f784 Move 2FA registration to IBootstrap
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-04-20 21:01:16 +02:00
Joas Schilling
7f70f3e182
Fix support tests
2) Test\Support\Subscription\RegistryTest::testDelegateIsHardUserLimitReachedWithoutSupportAppAndUserCount with data set #0 (35, 15, 2, false)
Cannot stub or mock class or interface "Test\Support\Subscription\UserInterface" which does not exist

3) Test\Support\Subscription\RegistryTest::testDelegateIsHardUserLimitReachedWithoutSupportAppAndUserCount with data set #1 (35, 45, 15, false)
Cannot stub or mock class or interface "Test\Support\Subscription\UserInterface" which does not exist

4) Test\Support\Subscription\RegistryTest::testDelegateIsHardUserLimitReachedWithoutSupportAppAndUserCount with data set #2 (35, 45, 5, true)
Cannot stub or mock class or interface "Test\Support\Subscription\UserInterface" which does not exist

5) Test\Support\Subscription\RegistryTest::testDelegateIsHardUserLimitReachedWithoutSupportAppAndUserCount with data set #3 (35, 45, 55, false)
Cannot stub or mock class or interface "Test\Support\Subscription\UserInterface" which does not exist

Had to use the Database user backend, as using multiple interfaces is deprecated:
https://github.com/sebastianbergmann/phpunit/issues/3955
> This functionality should be deprecated as "having to use it" is almost always a symptom of bad design.
> More importantly, though, the support for the creation of test doubles that implement multiple interfaces
> resulted in code that is hard to maintain.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-20 17:36:15 +02:00
Joas Schilling
c6978bac80
Fix security credentials manager test
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-20 17:04:24 +02:00
Joas Schilling
79ebc7f24c
Fix test by defining plurals
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-20 16:43:43 +02:00
Joas Schilling
5a514a9a41
Correctly replace all PHP placeholders with the parameters
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-20 16:42:05 +02:00
blizzz
92ca49d21d
save a whitespace today
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-04-20 14:03:01 +02:00
Arthur Schiwon
f8d1ee5cfa
ignore mail shares of related remote share results
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-04-20 14:02:35 +02:00
J0WI
ca7b37ce5a Make Security module strict
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2021-04-19 17:31:12 +02:00
Daniel Calviño Sánchez
4b376a107b Add automatic handling of "ElementNotInteractable" exceptions
In the WebDriver protocol, when a command fails because it can not
interact with the target element, an "element not interactable" error is
generated. It can be a transitive issue (for example, due to an
animation), so when the error is received the command should be tried
again, just like done, for example, with "ElementNotVisible" exceptions.

However, the last version of the "instaclick/php-webdriver" library
compatible with the Selenium Driver of Mink did not support yet that
WebDriver error. And even if Chrome is run using the old protocol an
unknown "element not interactable" error can be received anyway in some
cases. When an unknown error is received by the
"instaclick/php-webdriver" library it is thrown as a generic Exception
so, until the library can be updated, the message of generic exceptions
is checked and the command is retried if it matched.

For the time being "element not interactable" errors are handled like
"ElementNotVisible" exceptions; this may need to change once the error
is better understood.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-04-19 16:35:11 +02:00
Joas Schilling
751be29c73
Merge pull request #26555 from nextcloud/techdebt/noid/run-migrator-tests-on-OCI
Run migrator tests on OCI
2021-04-19 08:57:41 +02:00
Daniel Calviño Sánchez
9e1246eba5 Update acceptance tests to Selenium 3
The acceptance tests used the last Selenium 2 Docker container
available, which provides a rather old Firefox version (Firefox 47).
Nevertheless, despite some rendering issues, most things still worked as
expected due to the JavaScript files being built with support for older
browsers. However, now that support for Internet Explorer 11 and older
browsers will be dropped things could start to fail, so a newer browser
(and thus a newer Selenium version) should be used in the acceptance
tests.

Selenium has been standardized by the W3C, and the protocol to
communicate between the Selenium server and the browser has changed due
to that. Firefox >= 48 only supports the new W3C protocol, but the
Selenium driver for Mink does not support it yet.

The old protocol can still be used in recent Chromium/Chrome versions by
explicitly forcing it, so for the time being the acceptance tests will
need to be run on Chrome instead (although Firefox provides some
interesting features like the fake streams that would be needed to test
calls in Talk, so they should be moved again to Firefox once possible).

Finally, the default shm size of Docker is 64 MiB. This does not seem
enough to run newer Chrome releases and causes the browser to randomly
crash during the tests ("unknown error: session deleted because of page
crash" is shown in the logs). Due to this "disable-dev-shm-usage" needs
to be used so Chrome writes shared memory files into "/tmp" instead of
"/dev/shm" (the default shm size of Docker could have been increased
instead using "docker run --shm-size...", but that seems to be
problematic when the container is run in current Drone releases).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-04-16 20:00:15 +02:00
Daniel Calviño Sánchez
14b85f4eec Replace carriage return with WebDriver "ENTER" constant
When the value is set in some input fields a carriage return was sent to
simulate pressing the enter key and thus confirming the input. However,
different browsers use different keys (Firefox uses "\r", but Chrome
uses "\n"), so the carriage return was replaced with the WebDriver
"ENTER" constant which is common to both browsers.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-04-16 20:00:15 +02:00
Daniel Calviño Sánchez
38b88422a8 Do not send "enter" key when not needed
Sending the "enter" key is not needed in those input fields that auto
save while the user is typing or when the focus is lost (which since
version 1.4.0 the Selenium driver for Mink is automatically done after
setting the value).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-04-16 20:00:15 +02:00
Roeland Jago Douma
808e589035 Allow registering NotifierServices trough IBootstrap
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-04-16 13:56:28 +02:00
Joas Schilling
1670d00452 Integer 0 is not stored as Null and therefor works
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-16 09:57:27 +02:00
Joas Schilling
8b4ecdcc88 Test that oracle throws on EmptyValues in a NotNull columns
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-16 09:57:27 +02:00
Joas Schilling
e88bad4b0a Run migrator tests on OCI
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-04-16 09:57:27 +02:00
Roeland Jago Douma
b5ffca00f7 Fix unit test
* Fix namespace
* Fix test

Was broken after https://github.com/nextcloud/server/pull/26529

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-04-16 09:47:52 +02:00
Vincent Petry
af61486aea
Separate settings for remote share expiration
Added separate settings for default and enforced expiration date for
remote shares.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-04-15 10:06:09 +02:00
Roeland Jago Douma
789bb0d0ac
Merge pull request #26266 from nextcloud/future-proof-networking
Improve networking checks
2021-04-12 12:42:33 +02:00
Lukas Reschke
e5a4236e68 Increase subnet matcher
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-04-07 12:28:59 +00:00
Lukas Reschke
4b4971ab52
Merge pull request #24966 from nextcloud/jknockaert-patch-1
avoid fread on directories and unencrypted files
2021-04-06 13:45:10 +02:00
Lukas Reschke
9dab851931 Adjust test
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-04-06 11:37:47 +00:00
Lukas Reschke
5f3abffe6f Improve networking checks
Whilst we currently state that SSRF is generally outside of our threat model, this is something where we should invest to improve this.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-04-06 11:37:47 +00:00
Morris Jobke
5fb909faa5
Merge pull request #24055 from nextcloud/bugfix/noid/enfore-no-notnull-for-boolean-to-store-false
Enforce no notnull for boolean to store false
2021-04-01 18:30:26 +02:00
Julius Härtl
37591f05dc
Get the parent directory before creating a file from a template
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-04-01 13:48:21 +02:00
Joas Schilling
f9d4fa2d38
Rename the method to match what it does
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:18 +02:00
Joas Schilling
3696ef5b96
Don't allow Notnull for boolean columns
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-31 10:21:17 +02:00
kesselb
2212a67fbc
Merge pull request #25961 from nextcloud/enh/events/2fa_provider
Add real events for enabled 2fa providers for users
2021-03-30 23:13:36 +02:00
Roeland Jago Douma
f3738eeff7
Merge pull request #25280 from nextcloud/explicit-file-permissions
Set umask before operations that create local files
2021-03-30 21:55:50 +02:00
Arthur Schiwon
be3ae9a44b
gracefully handle deleteFromSelf when share is already gone
- handling race conditions

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-03-30 12:59:40 +02:00
Daniel Calviño Sánchez
f216b9307a
Update Mink from 1.7.1 to 1.8.1 in acceptance tests
Since version 1.8.0 of Mink "Mink::getSession()" no longer starts the
session automatically (see https://github.com/minkphp/Mink/pull/705), so
it now needs to be explicitly started.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-30 08:35:16 +02:00
Daniel Calviño Sánchez
7625a87412
Update Selenium driver for Mink from 1.3.1 to 1.4.0 in acceptance tests
Since version 1.4.0 the Selenium driver for Mink uses again the element
on which the value was set (see
https://github.com/minkphp/MinkSelenium2Driver/pull/286). When creating
a new folder or renaming one sending a new line ("\r") caused the
element on which the value was set to be removed, so the element was no
longer attached to the DOM when the driver tried to use it again, and
thus a "StaleElementReference" exception was thrown.

Due to this now it is needed to explicitly click the confirm button when
creating a new folder. In the case of the renaming, on the other hand,
nothing else besides not sending the new line is needed, as the Selenium
driver now unfocuses the element (that is why it uses again the element
after setting the value) which triggers the renaming.

Besides that, the Selenium driver for Mink uses a library to simulate
certain events, bitovi/syn. In version 1.4.0 that library was updated to
version 0.0.3, which seems to somehow break pressing the "escape" key.
Due to this now the sharing menu has to be closed by pressing "enter" on
the share menu button instead.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-30 08:35:16 +02:00
Daniel Calviño Sánchez
223b36e851
Update Behat from 3.7.0 to 3.8.1 in acceptance tests
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-30 08:35:16 +02:00
Daniel Calviño Sánchez
b53f49b940
Update PHPUnit from 4.X to 6.X in acceptance tests
The PHPUnit update also required an update of "symfony/yaml", so besides
the changes needed for PHPUnit the "behat.yml" file also had to be
adjusted.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-30 08:35:15 +02:00
Joas Schilling
8d3fdf24c8
Merge pull request #26353 from nextcloud/techdebt/noid/make-testcase-class-compatible-with-phpunit-9.5
Make Testcase class compatible with phpunit-9.5
2021-03-29 10:47:37 +02:00
Joas Schilling
cd35a5c71d
Make Testcase class compatible with phpunit-9.5
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-29 09:43:08 +02:00
J0WI
5f468c0248 Cleaner removePassword regex
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2021-03-27 18:42:58 +01:00
Vincent Petry
cc54f718f5
Add known user check in avatar when v2-private scope
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:10 +01:00
Vincent Petry
bb008be28a
Added PlaceholderAvatar with own cached images
When avatar scope is private, the PlaceholderAvatar is used to deliver a
placeholder avatar based on the user's initials.

This was implemented as a separate class for now to avoid messing with
the existing UserAvatar implementation and its generated vs
non-generated logic.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:09 +01:00
Vincent Petry
b73df5846c
Add property scope tests for AccountManager
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:09 +01:00
Vincent Petry
278a73789e
Map old account scope properties to new names
Use new scope values in settings page.
Adjust all consumers to use the new constants.
Map old scope values to new ones in account property getter.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:08 +01:00
Vincent Petry
b81a1c1bdb
Add new v2-private account scope
Added new v2-private account manager scope that restricts the scope
further by excluding public link access.

Avatars with v2-private account scope are now showing the guest avatar
instead of the real avatar.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:05 +01:00
Roeland Jago Douma
9fd29173cf
Merge pull request #26281 from hosting-de/fix/email
Change my email address
2021-03-26 09:59:35 +01:00
Morris Jobke
ab48d5e8cb
Cleanup unneeded code around database.xml
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-03-24 22:15:44 +01:00
Johannes Leuker
e9ca59ef0a Change my email address
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-03-24 15:13:56 +01:00
Vincent Petry
39a6d99526
Fix language codes test result order
Fixes issue with Oracle by enforcing the order of the results to check.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 10:26:06 +01:00
Vincent Petry
8b92776be4
Bring back forgotten tests
Remove "ocs-provider" test folder reference as it doesn't exist any
more.
Added back "Test" test subdir and fixed the tests inside.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 09:07:54 +01:00
Vincent Petry
95e03fba2d
Fix more controller tests in Core subdir
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 09:02:19 +01:00
Vincent Petry
9b8ca1697a
Fix more tests in the Core subdir
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 08:48:28 +01:00
Vincent Petry
c467f64848
Fix core tests command for app enabling/disabling
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-23 20:40:28 +01:00
Vincent Petry
e210e8e35a
Fix casing of core test folder
It seems Phpunit < 9 was case insensitive.
Fixed the phpunit config to target the correct name for the "Core" test
directory.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-23 18:12:46 +01:00
Robin Appelman
e5dc1a8085
Set umask before operations that create local files
this solves issues where "other php stuff" is messing with the umask

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-23 14:52:31 +01:00
Morris Jobke
1c074e7602
Merge pull request #26198 from nextcloud/unified-search-node
Handle limit offset and sorting in files search
2021-03-22 21:48:51 +01:00
Morris Jobke
268acd301d
Merge pull request #25529 from nextcloud/fix-non-lgc-glyphs-in-avatars-and-txt-file-previews
Fix non LGC glyphs in avatars and txt file previews
2021-03-22 21:06:22 +01:00
Roeland Jago Douma
3c5cf825b3 Add real events for enabled 2fa providers for users
* Shiny new events
* Listener to still emit the old event

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-22 20:57:10 +01:00
John Molakvoæ (skjnldsv)
15767643f2
Fix sharebymail tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-03-22 06:50:47 +01:00
Daniel Calviño Sánchez
f99876997a
Remove duplicated query for email shares
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-03-22 06:50:47 +01:00
Robin Appelman
bfe3712372
handle ordering in folder search
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 16:07:54 +01:00
Julius Härtl
76170a58eb
Log and continue when failing to update encryption keys during for individual files
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-03-19 14:12:07 +01:00
Robin Appelman
feed42dd6d
folder filtering in sql
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 13:41:00 +01:00
Roeland Jago Douma
1286848731
Merge pull request #23718 from nextcloud/already-shared-error-message
expand 'path is already shared' error message
2021-03-19 13:39:22 +01:00
Robin Appelman
de713967c0
cleanup fileinfo creation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 13:35:37 +01:00
Vincent Petry
7bf5adb1fa
Merge pull request #26200 from nextcloud/bugfix/26197/fix-expiration-validation-confusion
Update user share must use correct expiration validation
2021-03-19 10:51:21 +01:00
Robin Appelman
bd229e7548
handle limit and offset in folder file search
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 17:38:31 +01:00
Robin Appelman
50e374c12f
only require user to be set in a query that handles tags
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 17:16:28 +01:00
Vincent Petry
a9e3d2a10f
Update user share must use correct expiration validation
Updating a user or group share now uses the correct method for the
validation of the expiration date. Instead of using the one from links
it uses the one for internal shares.

To avoid future confusion, the method "validateExpirationDate" has been
renamed to "validateExpirationDateLink".

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-18 17:12:28 +01:00
Robin Appelman
9e3775618b
log full expection during repair step
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 08:45:17 +01:00
Julius Härtl
a2f3077ee8
Skip db migration simulation for core schema changes
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-03-17 21:08:22 +01:00
Joas Schilling
0d46fafd41
Merge pull request #26161 from nextcloud/bugfix/noid/improve-matching-of-phonebook-searches
Improve search results when only phonebook-matches can we autocompleted
2021-03-17 15:22:03 +01:00
Joas Schilling
cf434d5107
Also limit to user group in case enumeration is enabled for groups and phonenumbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 11:20:30 +01:00
Joas Schilling
9a189bc710
Improve search results when only phonebook-matches can we autocompleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 09:51:31 +01:00
Vincent Petry
e559afb8d4
Merge pull request #25136 from nextcloud/cachejail-search-filter
do cachejail search filtering in sql
2021-03-15 17:45:30 +01:00
Robin Appelman
a550649708
expand 'path is already shared' error message
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-15 15:55:08 +01:00
Robin Appelman
32551b9ff7
Merge pull request #25722 from nextcloud/objectstore-copy-cross
apply object store copy optimization when 'cross storage' copy is wit…
2021-03-12 16:10:18 +00:00
Joas Schilling
a609074c18
Fix Test class name
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-12 08:53:43 +01:00
Joas Schilling
cf8f9c16df
Change label also in the acceptance tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 18:55:01 +01:00
Joas Schilling
5b53b6f977
Add a setting to restrict returning a full match unless in phonebook or same group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:25:57 +01:00
Joas Schilling
236aa194e2
Restrict autocompletion also based on the phonebook known users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:19:55 +01:00
Robin Appelman
c87b1a50d9 apply object store copy optimization when 'cross storage' copy is within the same object store
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-09 20:31:27 +01:00
Roeland Jago Douma
30e096f3f5 Allow overwriting isAuthenticated
* Some implementations might check for different things
* IT will not change how the current ones work

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-09 09:17:30 +01:00
kesselb
2ddf3c9df0
Merge pull request #25990 from nextcloud/do-not-try-to-add-an-existing-user-again-in-acceptance-tests
Do not try to add an existing user again in acceptance tests
2021-03-08 10:18:46 +01:00
Roeland Jago Douma
615721df82
Merge pull request #25925 from nextcloud/techdept/psalm/ActionProviderStore
Pimp ActionProviderStore
2021-03-08 09:20:45 +01:00
Daniel Calviño Sánchez
c51c3c771f Remove unneeded steps to add already existing user
User "user1" is added when installing and configuring the server, so it
is already added in all tests.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-07 18:34:10 +01:00
Daniel Calviño Sánchez
0e6401933b Fix acceptance test for searching just added users in contacts menu
User "user1" is added when installing and configuring the server, so it
is already added in all tests. As the test verifies that just added
users can be searched in the contacts menu a new user should be actually
added.

The test did not fail because it assumed that "user1" did not exist and
just checked that it existed after "adding" it, but not whether adding
it failed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-07 18:27:45 +01:00
Daniel Calviño Sánchez
ee1f8104a0 Find directly the label instead of falling back to it
The input element is always hidden, so the check always ended falling
back to the label. Moreover, the label is the element that the user
interacts with, so it must be the one used.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez
7b6946d2d2 Assert also element visibility instead of just finding it
Although if the element could not be found an exception would be thrown
and the test aborted if an element is in the DOM but hidden it would be
found and the test would pass.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez
78faf0105d Add explicit locator for "Enable all" bundle button
Instead of looking for the bundle button and then checking its value now
the expected value is included in the locator and the button is checked
similarly to other elements.

No "Disable all" locator was added as it was not currently needed
anywhere.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez
f87473e410 Find elements through the actor rather than the driver
"Actor::find" is a more robust way to look for elements, as it handles
some exceptions that may be thrown. Therefore, even if the elements are
not actually used and it is only checked whether they exist or not using
the actor is the preferred way when possible (and it also makes it
consistent with the rest of the acceptance tests).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez
6d145ea54a Add locator for apps list
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:42 +01:00
Daniel Calviño Sánchez
4c23d24277 Fix identation
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:42 +01:00
Daniel Calviño Sánchez
bc084070c8 Fix delete user acceptance test
Adding some missing asserts showed that the "delete user" acceptance
test was silently failing, as the deletion was not being confirmed in
the dialog and thus the user was not being deleted.

The dialog button contains a single quote ("user0's"), so the XPath
expression had to be adjusted (it seems that it is not possible to
escape a single quote in a string enclosed in single quotes in XPath
1.0).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:29:54 +01:00
Daniel Calviño Sánchez
d5586ec437 Verify WaitFor::element... results with an assertion
WaitFor::element... calls only perform the waiting and return whether
the condition succeeded or not, but that result needs to be explicitly
checked to prevent further steps from being executed if the wait failed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-05 22:06:05 +01:00
Daniel Calviño Sánchez
caa2246568 Add missing waits when finding elements in the acceptance tests
As no timeout was specified the elements were tried to be found just
once. This caused the steps to fail if the elements did not appear yet
in the page when they were tried to be found.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-05 22:06:05 +01:00
Roeland Jago Douma
54cffefed4
Merge pull request #25660 from hosting-de/feature/add-backend-list-groups
Show group backends in occ group:list --info and group:info
2021-03-05 08:49:43 +01:00
Roeland Jago Douma
f04a2ce19f Pimp ActionProviderStore
* Fix paradoxale condition
* Add types
* Move away from ILogger

Makes psalm happy, and thus me happy

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 12:29:49 +01:00
Roeland Jago Douma
7b9ca4f7c2 Add some typing to SharedStorage
Makes psalm a bit more happy.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 10:49:42 +01:00
Roeland Jago Douma
5325c3002c
Merge pull request #25917 from nextcloud/techdept/kill_deprecated/ocp_api
Remove deprecated \OCP\API
2021-03-03 21:57:34 +01:00
Roeland Jago Douma
cc744740b7 Remove deprecated \OCP\API
Time to remove this forgood now.
Remaining constant moved over
The world is a tiny bit better

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 20:54:32 +01:00
Roeland Jago Douma
68ec18323d Fix types in the Group Manager
Psalm found an issue. However the issue found was because of lying
docblocks. Fixed those and did some typing to make it all better.

For #25839

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 14:52:47 +01:00
Daniel Calviño Sánchez
ee06780029 Include additional scripts in Noto fonts
Generated avatars as well as text file previews are rendered using the
"core/fonts/NotoSans-Regular.ttf" font. The file was the standard hinted
"NotoSans-Regular.ttf" file from https://www.google.com/get/noto/.
However that file does not cover some non LGC (Latin, Greek, Cyrillic)
scripts, like Arabic, Devanagari or Hebrew, to name a few.

Markdown file previews also use "core/fonts/NotoSans-Bold.ttf", which is
in the same situation as the regular one.

Due to limitations in the TTF format it is not possible to provide a
single file for each style that includes all Noto fonts. However, it is
possible to add more scripts to the standard "NotoSans-Regular.ttf" and
"NotoSans-Bold.ttf" files (although no CJK (Chinese, Japanese, Korean)
glyph can be included due to the aforementioned limitations).

This commit replaces the standard files with an extended version created
using the Noto Tools. The build script (as well as a patch for the Noto
Tools) is also included for reference and to be able to update the font
files in the future if needed.

Due to the additional scripts added the font files are now much larger,
although this does not seem to increase the time spent rendering LGC
scripts.

Note that the file for the bold style still contains less scripts than
the regular one, as not all scripts supported by Noto have a bold
weight.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-01 19:15:01 +01:00
Johannes Leuker
2796ef80ff Show group backends in occ group:list --info and group:info
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-03-01 16:02:08 +01:00
Christoph Wurst
5026d2cca1
Merge pull request #25086 from nextcloud/dependabot/composer/nextcloud/coding-standard-0.5.0
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
2021-02-18 14:05:54 +01:00
dependabot-preview[bot]
eb502c02ff
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 0.3.0 to 0.5.0.
- [Release notes](https://github.com/nextcloud/coding-standard/releases)
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/coding-standard/compare/v0.3.0...v0.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +01:00
Joas Schilling
6ed4aaeeea
Send emails on password reset to the displayname
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-18 12:38:43 +01:00
Roeland Jago Douma
644e6df02e
Merge pull request #25440 from nextcloud/bugfix/noid/cache-the-user-backend-info-for-30s
Cache the user backend info for 5mins
2021-02-17 08:56:55 +01:00
Christoph Wurst
b794fadbce
Merge pull request #25575 from k00ni/pr/add-tests-for-LoginFlowV2Service
Add tests for \OC\Core\Service\LoginFlowV2Service
2021-02-15 12:22:39 +01:00
Joas Schilling
645f83121e
Cache the user backend info for 300s
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-15 10:36:08 +01:00
Roeland Jago Douma
24d4c3eeab
Merge pull request #25577 from nextcloud/enhancement/app-code-checker-noop
Make the app code checker a NOOP
2021-02-13 15:51:41 +01:00
Konrad Abicht
330315f03e refined name of getOpenSSLEncryptedAndPrivateKey
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-12 13:01:37 +01:00
Konrad Abicht
0bc49d67cd added unit tests for LoginFlowV2Service::createTokens
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-12 12:57:24 +01:00
Christoph Wurst
883848b58a
Micro-optimize validation of empty email addresses
Then we don't have to construct any validators.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 15:15:38 +01:00
Christoph Wurst
e618ea83b5
Make the app code checker a NOOP
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 11:46:02 +01:00
Konrad Abicht
c755165dd4 added unit tests for LoginFlowV2Service::flowDone
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 10:45:47 +01:00
Roeland Jago Douma
d5dea10517
Merge pull request #25378 from nextcloud/bugfix/noid/mention-match-improvements
Improve mention matches
2021-02-11 10:33:15 +01:00
Konrad Abicht
d60dd8a208 added unit tests for LoginFlowV2Service::startLoginFlow
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 09:56:09 +01:00