Commit Graph

4646 Commits

Author SHA1 Message Date
Daniel Calviño Sánchez cb20503341 Add Firefox profile with support for CSS grid to acceptance tests
The acceptance tests are currently run on Firefox 47; in that version
the CSS grid support was not enabled by default, but it could be enabled
through a setting in the Firefox profile.

By default Selenium uses a clean Firefox profile when a new session is
started, but it also allows the customization of the profile through a
zipped "user.js" file. The contents of that file have to be provided in
the "firefox_profile" capability when the Firefox session is created.

In the Mink extension for Behat several Mink sessions can be defined in
the "behat.yml" file. Each Mink session uses a different browser session
in Selenium, and each of those browser sessions is initialized with the
capabilities provided in the "behat.yml" file.

From the point of view of the acceptance tests each Mink session is an
actor, so different actors can use different browsers with different
capabilities.

Due to all this a new actor was introduced, "Rubeus", who uses a Firefox
browser that has CSS grid support; this actor is meant to be used only
in those acceptance tests that require proper support for CSS grids.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-05-18 17:44:43 +02:00
Roeland Jago Douma 6b7cf46727
Certain tokens can expire
However due to the nature of what we store in the token (encrypted
passwords etc). We can't just delete the tokens because that would make
the oauth refresh useless.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-17 16:10:19 +02:00
Roeland Jago Douma aba255997a
Allow the rotation of tokens
This for example will allow rotating the apptoken for oauth

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-16 19:27:19 +02:00
Roeland Jago Douma 991d9b5c3a
Fix session tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-15 11:32:25 +02:00
Roeland Jago Douma 466297829e
Fix tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-15 10:56:40 +02:00
Roeland Jago Douma 0dffd07a60
Add tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-14 13:30:22 +02:00
Roeland Jago Douma 362e6b2903
Fix tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-14 13:30:22 +02:00
Morris Jobke d161d4473e
Merge pull request #9029 from nextcloud/settings-restructure
Restructure server settings
2018-05-07 12:29:53 +02:00
Roeland Jago Douma 0ff83f7230
Do not allow folder creation with quota of 0
Fixes #4577

Users with a quota of 0 are a special case. Since they can't (ever)
create files on their own storage. Therefor it makes no real that they
can create folders (and possible share those etc).

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-03 11:31:23 +02:00
Julius Härtl 35cb529df3
Fix settings tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-05-03 08:58:25 +02:00
Julius Härtl 9bfc108b79
Cleanup and fix tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-05-03 08:58:24 +02:00
Arthur Schiwon aff5fe68b3
use SystemConfig, less dependencies, and not publicly needed
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 23:54:11 +02:00
Arthur Schiwon 0e6a317516
revert Log's dependency to SystemConfig to work during Installation
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 12:10:53 +02:00
Arthur Schiwon cfc3ab0119
offer API to create own File log. admin_audit makes use of it
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 12:10:52 +02:00
Arthur Schiwon 5fbf184134
destaticfy Log classes
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 12:00:06 +02:00
Arthur Schiwon 38a90130ce
move log constants to ILogger
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 10:45:52 +02:00
Roeland Jago Douma 0ed6f9c2da
Merge pull request #9129 from nextcloud/feature/noid/proper-comments-offset
Add proper comment offset support
2018-04-22 20:47:30 +02:00
Roeland Jago Douma 9f4e928c0f
Merge pull request #9225 from nextcloud/bugfix/9157/ipv6-database-host
Allow IPv6 database hosts
2018-04-22 20:43:29 +02:00
Joas Schilling cccdfaa6e9
Fix FakeManager
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-19 17:12:07 +02:00
Morris Jobke a4cb83df27
Add tests for special domain name
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-19 13:59:08 +02:00
Morris Jobke d686b19a16
Add tests for domains
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-19 13:58:02 +02:00
Joas Schilling 78ee3abb78
Move regex to a function and add tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-19 12:49:36 +02:00
Joas Schilling f50abde7ac
Add proper comment offset support
The offset is based on the last known comment instead of limit-offset,
so new comments don't mess up requests which get the history of an object-

Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-04-18 14:23:15 +02:00
Morris Jobke 0d5142be70
Show a link to the docs instead of a button on the untrusted domain page
Before there was a button to "quickly" add the untrusted domain to the config. This button often didn't worked, because the generated URL was often untrusted as well. Thus removing it and providing proper docs seems to be the better approach to handle this rare case.

Also the log should not be spammed by messages for the untrusted domain accesses, because they are user related and not necessarily an administrative issue.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-17 17:47:11 +02:00
Robin Appelman 46d0d0cda1
fix appinfo parsing when a single localized option is provided
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-04-17 11:14:03 +02:00
Morris Jobke 9ee1febf62
Provide an option to disable HTML emails
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-16 19:00:05 +02:00
Robin Appelman 89a9d35d90 dont keep shared database locks when running cli scripts
For cli scripts we don't have the assumption that the universe will be cleaned up soon

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-04-11 19:21:45 +02:00
Morris Jobke 88c1b8edbd
Merge pull request #9024 from nextcloud/fix/app-fetcher-major-minor-versions
Fix version comparison with minor and patch level requirements
2018-04-11 15:48:23 +02:00
Morris Jobke a18a853e68
Merge pull request #7800 from Abijeet/bug-7281
Fixes the usability issues with the comment section delete and edit
2018-04-11 15:27:12 +02:00
Morris Jobke 7a3ce073da
Merge pull request #8946 from nextcloud/log-exceptions-as-nested-array-2
Log exceptions as nested array instead of encoded json
2018-04-11 14:24:47 +02:00
Morris Jobke 185a260f6b
Merge pull request #9074 from nextcloud/ARGON2I
Add ARGON2I support to the hasher
2018-04-11 11:04:42 +02:00
Christoph Wurst ac939e8fd4
Fix version comparison with minor and patch level requirements
If an app requires a specific minor or path level server version,
the version_compare prevented the installation as only the major
version had been compared and that checks obviously returns `false`.

Now the full version is used for comparison, making it possible to
release apps for a specific minor or patch level version of Nextcloud.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-04-11 10:08:23 +02:00
Morris Jobke 058f8123e6
Set the default log rotate size to 100 MB
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-11 00:27:51 +02:00
Robin Appelman b9583c6dce Log exceptions as nested array instead of encoded json
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-04-10 15:53:43 +02:00
Morris Jobke c4c6943c1e
Merge pull request #9127 from nextcloud/make-possible-to-run-acceptance-tests-on-apache
Make possible to run acceptance tests on Apache
2018-04-09 23:50:44 +02:00
Morris Jobke acbcc607ea
Merge pull request #9111 from nextcloud/use-proper-bool-user-disabled-state
Return proper boolean and do not save enabled state in db
2018-04-09 23:39:02 +02:00
Daniel Calviño Sánchez 4341d8731e Rename helper for PHP built-in web server
For consistency with the helper for the Apache web server the helper for
the PHP built-in web server was renamed too.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Daniel Calviño Sánchez aa96dfd173 Add helper to run acceptance tests on an Apache server
The default and only helper to run acceptance tests run them on the PHP
built-in web server. This commit introduces a new helper that can be
used to run them on an Apache web server instead.

This helper is meant to be used by the acceptance tests of apps that
require a multi-threaded web server to run (like Talk, due to its use of
long polling). To use the helper it is only needed to set it in the
Behat configuration for the acceptance tests of the app, as explained in
the "NextcloudTestServerContext" documentation.

It is assumed that the acceptance tests are run using the default setup,
and therefore inside a Docker container based on the image for
acceptance tests from Nextcloud. Due to that the helper is expected to
have root permissions, and thus it starts and stops the Apache web
server directly using "service start/stop apache2". In the same way it
also restores the owner and group for "apps", "config" and "data" to
"www-data", as it is the user that Apache sub-processes are run as.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Daniel Calviño Sánchez ea21fe2dbc Add support for setting the domain also when a specific helper is used
Before, the domain was automatically added assuming that the
NextcloudTestServerContext had no parameters defined in the Behat
configuration. However, in order to use a helper for Apache it would
need to be specified in the configuration with something like:

- NextcloudTestServerContext:
    nextcloudTestServerHelper: NextcloudTestServerLocalApacheHelper

The substitution now works both when a helper is specified and when it
is not; note, however, that providing custom parameters to the helper is
not supported, although they are not needed anyway so it is not really a
problem.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Daniel Calviño Sánchez a09b787a01 Install and configure Nextcloud server as www-data
Apache sub-processes are run as the www-data user, and they need to be
able to write to the "apps", "config" and "data" directories, so they
have to belong to that user, and therefore the Nextcloud server has to
be installed and configured too as the www-data user. The PHP built-in
web server will still be run as the root user, but in that case the
owner of those directories makes no difference, so this is compatible
with both cases.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Daniel Calviño Sánchez f6d34587a2 Use Docker image for acceptance tests
The Docker image for acceptance tests provides support for both the PHP
built-in web server and the Apache web server; the acceptance tests for
the server are run on the PHP built-in web server, but the acceptance
tests for some apps will have to be run on the Apache web server (for
example, Talk, as it uses long polling), so a Docker image to support
both cases has to be used in "run.sh". ".drone.yml" was just updated for
consistency, although it was not really needed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-09 21:50:30 +02:00
Morris Jobke db6fa03ad6
Merge pull request #9114 from nextcloud/make-possible-to-provide-acceptance-tests-for-apps
Make possible to provide acceptance tests for apps
2018-04-09 17:31:28 +02:00
John Molakvoæ (skjnldsv) 8b9bd37e4e
Fixed tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-04-09 15:13:11 +02:00
Daniel Calviño Sánchez c8df4f5df4 Make possible to set the acceptance tests directory to use
When the acceptance tests were run they were always loaded from the
"tests/acceptance" directory of the Nextcloud server. Now it is possible
to set the directory used to look for the Behat configuration and the
Nextcloud installation script, which makes possible to run acceptance
tests for the apps too instead of only for the server (although if no
directory is explicitly given the tests for the server are the ones
run).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-06 21:56:12 +02:00
Roeland Jago Douma 2b7d4d5069
Fix tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-06 19:58:37 +02:00
Morris Jobke 2a2ab1b871
Merge pull request #9084 from nextcloud/public-page-template-extend
Public page template enhancements
2018-04-06 13:16:26 +02:00
Daniel Calviño Sánchez 50d35bee9f Add context classes to Composer autoload
In order to autoload the server context classes the "bootstrap"
directory was explicitly listed in Behat autoload configuration. This is
fine in the configuration of acceptance tests for the server, but it
would force the configuration of acceptance tests for the apps to
explicitly include the path for the server context classes to be able to
use them (for example, for the login step).

Besides with its own configuration Behat also supports autoloading
classes using Composer, so now context classes are autoloaded using
Composer instead; thanks to this the server context classes are
autoloaded also in the acceptance tests for apps without any explicit
configuration in them.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-04-06 04:13:42 +02:00
Roeland Jago Douma 176b4d6832
Ping more privacy respecting organizations
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-05 21:43:51 +02:00
Julius Härtl 5598d30ef1
Fix files acceptance test
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-04-05 21:10:33 +02:00
Julius Härtl bbeb3402b6
Move styling and menu handling to publicpage.js
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-04-05 12:21:39 +02:00