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
* nickvergessen/ticket/11278:
[ticket/11278] Comment out the code for dropping the Q&A tables
[ticket/11278] Fix not running queries from db tools in database update
Due to a bug, vanilla phpbb could not create captcha tables in 3.0.8 on
firebird. It was possible for board administrators to adjust the code to
work. If code was manually adjusted by board administrators, index names
would not be the same as what 3.0.9 and newer expect. This code fragment
drops captcha tables, destroying all entered Q&A captcha configuration,
such that when Q&A is configured next the respective tables will be
created with corrent index names.
If you wish to preserve your Q&A captcha configuration, you can manually
rename indexes to the currently expected name:
phpbb_captcha_questions_lang_iso => phpbb_captcha_question_lang
phpbb_captcha_answers_question_id => phpbb_captcha_answers_qid
Again, this needs to be done only if a board was manually modified to fix
broken captcha code.
PHPBB3-11278
The db_tools class is running in return mode, which means that the queries
are not run, but just returned. Therefor the broken tables were not
removed from the database.
PHPBB3-11278
* EXreaction/ticket/8610:
[ticket/8610] Update comment
[ticket/8610] Do not use requests to submit posts except in posting_test.php
[ticket/8610] Move posting helpers to separate file
[ticket/8610] Create helper functions to create topic/post in functional tests
[ticket/8610] Use phpbb_update_rows_avoiding_duplicates
[ticket/8610] Revert some funky merging I did from rebase
[ticket/8610] Add some comments
[ticket/8610] Update Bookmarks and Subscriptions when splitting topics
[ticket/8610] Update Bookmarks when merging posts into another topic
[ticket/8610] Update Bookmarks when forking topics
[ticket/8610] Update Bookmarks when merging topics
Moving my functional test functions from posting_helpers.php to
posting_test.php since it is a bit nicer and more reusable if
posting_test.php is to be expanded in the future.
PHPBB3-8610
This will be used to test splitting/copying/merging/etc in functional tests
Also convert functional posting_test.php to use these functions
PHPBB3-8610
# By Oleg Pudeyev (29) and others
# Via Andreas Fischer (3) and others
* 'develop-olympus' of github.com:phpbb/phpbb3: (36 commits)
[ticket/11262] Add .lock in cache directory to .gitignore
[ticket/11265] Add assertions for board installation success.
[ticket/11162] Reformat.
[ticket/10491] Make recreate_database static.
[ticket/11162] Rename tricky updates to database helper.
[ticket/10491] Install board once per test run.
[ticket/10972] Drop user deletion.
[ticket/10972] Tweak user addition.
[ticket/10972] Add destroy method to mock cache.
[ticket/10972] Add mock null cache.
[ticket/10972] Backport get_db from develop.
[ticket/10972] Added explicit checks for creating duplicate users.
[ticket/10972] Moved tests into appropriate places and added comments
[ticket/10972] Added methods for creating and deleting basic users
[ticket/11162] Use empty($queries).
[ticket/11162] Review comments fixed.
[ticket/11162] Reformat.
[ticket/11162] Newlines to LF.
[ticket/11162] Use correct functions.
[ticket/11162] Account for notify_status.
...
Conflicts:
phpBB/includes/mcp/mcp_topic.php
* p/ticket/11162: (22 commits)
[ticket/11162] Reformat.
[ticket/11162] Rename tricky updates to database helper.
[ticket/11162] Use empty($queries).
[ticket/11162] Review comments fixed.
[ticket/11162] Reformat.
[ticket/11162] Newlines to LF.
[ticket/11162] Use correct functions.
[ticket/11162] Account for notify_status.
[ticket/11162] This test really only works for bookmarks.
[ticket/11162] The test is not at all trivial.
[ticket/11162] Add includes.
[ticket/11162] Move to a separate file to avoid blowing out functions.php.
[ticket/11162] No whitespace changes in olympus.
[ticket/11162] Fix inaccurately copy pasted comment.
[ticket/11162] Use phpbb_update_rows_avoiding_duplicates in mcp.
[ticket/11162] Clarify that only the two tables actually work.
[ticket/11162] Uncomment transactions.
[ticket/11162] An implementation that actually works.
[ticket/11162] Make count function upper case.
[ticket/11162] Rename count variable name to remaining_rows.
...
* 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
* p/ticket/10972:
[ticket/10972] Drop user deletion.
[ticket/10972] Tweak user addition.
[ticket/10972] Add destroy method to mock cache.
[ticket/10972] Add mock null cache.
[ticket/10972] Backport get_db from develop.
[ticket/10972] Added explicit checks for creating duplicate users.
[ticket/10972] Moved tests into appropriate places and added comments
[ticket/10972] Added methods for creating and deleting basic users
* p/ticket/10205:
[ticket/10205] Reduce nesting in mysql drivers.
[ticket/10205] Rewrite _sql_error implementations to have a single return.
[ticket/10205] Cosmetic changes.
[ticket/10205] Add some columns to the empty fixture file for mssqlnative.
[ticket/10205] Delete stray return.
[ticket/10205] Test failed connection attempts.
[ticket/10205] Check for function existence in mssql connect method.
[ticket/10205] Convert mssqlnative driver to the same logic.
[ticket/10205] Fix a parse error in oracle driver.
[ticket/10205] Fix remaining db drivers.
[ticket/10205] Avoid calling mysqli functions when mysqli is missing.
[ticket/10205] Account for potentially missing extensions in dbal.
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
I actually needed the version that destroys tables, therefore
I ended up writing a mock null cache. This code is currently unused
but will probably be handy at some point.
PHPBB3-10972
The mock cache has instrumentation methods and therefore is non-trivial
to implement. For those times when we don't care that the cache caches,
null cache is a simpler implementation.
PHPBB3-10972
* Noxwizard/ticket/11219:
[ticket/11219] Coding guidelines and naming consistency changes
[ticket/11219] Only update sequences that are affected by a fixture
[ticket/11219] Recreate Oracle sequences instead of altering them
[ticket/11219] Add unit test for inserting into a sequence column
[ticket/11219] Update sequence values after loading fixtures
* p/ticket/10841:
[ticket/10841] Revert more whitespace changes.
[ticket/10841] Revert whitespace changes.
[ticket/10841] adding space after if
[ticket/10841] removing unnecessary spacing
[ticket/10841] changing affectedrows check to COUNT in sql
[ticket/10841] Modifying style and language selectors in UCP