* develop-olympus:
[ticket/11542] Use Czech as example as it contains non-latin characters
[ticket/11547] Set MySQL charset to UTF8 in database_test_connection_manager.
Remove dependency of extension manager for migrator.
Keeping load_migrations function for others to use if they desire
but requiring the finder be sent to it in order to use it.
PHPBB3-11386
* develop-olympus:
[ticket/11295] Drop tables rather than database for postgres in test suite.
Conflicts:
tests/test_framework/phpbb_database_test_connection_manager.php
create_user has calls to fetch the cache driver from the container. This
PR mocks the container and returns a null cache driver in that case.
PHPBB3-11305
Doing so allows:
1. User running the tests no longer needs create database privilege.
2. Test database may be located in a non-default tablespace and generally
have site-specific options applied to it.
PHPBB3-11295
* p/ticket/10758:
[ticket/10758] Add return to the other compat function.
[ticket/10758] Add periods.
[ticket/10758] Yes, only one empty line.
[ticket/10758] Add deprecated tags.
[ticket/10758] Add compat functions.
[ticket/10758] Admin is not working yet.
[ticket/10758] Test moderator and admin permissions.
[ticket/10758] Check that acl was changed in the test.
[ticket/10758] Extract obtain_user_data for the benefit of tests.
[ticket/10758] Functional test for changing a user's permission.
[ticket/10758] Spelling fix.
[ticket/10758] Add a test for acp login.
[ticket/10758] Dependency inject parameters into update_foes.
[ticket/10758] Dependency inject parameters into cache_moderators.
* upstream/develop:
[ticket/11262] Add .lock in cache directory to .gitignore
[ticket/11265] Add assertions for board installation success.
[ticket/11263] Fix PHP Notice: Undefined variable: extension_manager
[ticket/10975] Add a test for viewing a profile.
[ticket/10975] Test restricting by first character.
[ticket/10975] Avoid rewriting global config twice.
[ticket/10975] Test memberlist, not user creation.
[ticket/10975] Some quick tests to check the memberlist behaviour
* upstream/develop: (101 commits)
[ticket/10491] Make recreate_database static.
[ticket/11088] Pass required objects in as arguments
[ticket/11088] Globalize objects in new permission function
[ticket/11088] Move permission creation to a function
[ticket/11088] Copy a_styles permission for a_extensions
[ticket/11088] Remove extraneous word from sentence in comment
[ticket/11088] Changed "file extensions" to "attachment extensions"
[ticket/11088] Fix the database updater to correctly manipulate the modules
[ticket/11088] Put language pack module move below extension module creation
[ticket/11088] Untested, progress on update script
[ticket/11088] Fix typo (period instead of comma)
[ticket/11088] Untested progress for update script
[ticket/11088] Added missing comma
[ticket/11088] Removed added space
[ticket/11088] Move style, extension and language pack management to customise
[ticket/11243] Show download all link on all pages of topic with attachments
[feature/template-events] Pass arguments in correct order.
[feature/template-events] Pass arguments in correct order.
[ticket/10491] Install board once per test run.
[ticket/11257] Do not require set_name() method to exist
...
While merging into develop, also move self::$config['table_prefix']
initialization into setup before class from install_board, as
install_board is only called to install the board and not for each test case.
* develop-olympus:
[ticket/10491] Make recreate_database static.
[ticket/10491] Install board once per test run.
[ticket/10491] Move board installation into setup before class.
[ticket/10491] Set up functional tests sensibly.
Conflicts:
tests/test_framework/phpbb_functional_test_case.php
* p/ticket/10491:
[ticket/10491] Make recreate_database static.
[ticket/10491] Install board once per test run.
[ticket/10491] Move board installation into setup before class.
[ticket/10491] Set up functional tests sensibly.
This is how things used to be. Installing for each test class brings
3-4x performance penalty compared to installing once for the entire
test run. However, with a single installation for all tests an
individual test can see different data when it is invoked by itself
vs when it is executed as part of the entire test suite.
PHPBB3-10491
Users should not be deleted in tests that test user creation.
Tests should use unique user names to avoid collisions.
User deletion should use user_remove anyway.
PHPBB3-10972
Always add users, do not keep track of which users have been added.
The tests should know whether users they want exist or not.
Use more unique user names in tests for robustness.
Added some more assertions here and there.
PHPBB3-10972