Since many functions in session.php have global variables inside the function,
this exposes those functions through a testable facade that uses testable_factory's
mock global variables to modify global variables used in the functions.
This is using the facade pattern to provide a testable "front" to the functions in sessions.php.
PHPBB3-11620
* Hardolaf/feature/auth-refactor: (44 commits)
[feature/auth-refactor] Fix code style issue
[feature/auth-refactor] Fix comment grammar
[feature/auth-refactor] Fix the actual cause of test failures
[feature/auth-refactor] A possible fix for the functional test failures
[feature/auth-refactor] Forgot @inheritdoc on methods
[feature/auth-refactor] Finish and clean up documentation
[feature/auth-refactor] Change phpEx to php_ext in new classes
[feature/auth-refactor] Fix two session tests broken by changes
[feature/auth-refactor] Removed no longer used variable
[feature/auth-refactor] Fix errors in acp_board
[feature/auth-refactor] Fix indentation on acp_board
[feature/auth-refactor] Refactor auth in acp_board
[feature/auth-refactor] Don't truncate name then reattach same thing
[feature/auth-refactor] Remove old auth plugins
[feature/auth-refactor] Remove references to old auth plugins
[feature/auth-refactor] Fix auth tests to use mock objects correctly
[feature/auth-refactor] Test validate_session on provider_apache
[feature/auth-refactor] Test autologin() on provider_apache
[feature/auth-refactor] Test login() for provider_apache
[feature/auth-refactor] Test for init on provider_apache
...
* develop-olympus:
[ticket/11615] Fix typo in creation_test
[ticket/11615] Remove magic number in creation_test
[ticket/11615] Rename class in file to match
[ticket/11615] Rename init_test to creation_test for clarity
* upstream/develop: (666 commits)
[ticket/11077] Remove code from old global announcements system
[ticket/11189] Replace DEBUG_EXTRA with DEBUG
[ticket/11189] Always log critical errors when in cron or in image output
[ticket/11187] Added a blank array to fix errors in functional tests
[ticket/10780] Make L_COLON available in the installer.
[ticket/11183] Remove $load_extensions and weird dl() calls
[ticket/10970] Added extra documentation to parse_dynamic_path.
[ticket/10939] Added documentation for phpbb_request::file
[ticket/10865] Use code tags for install/database_update.php.
[ticket/10865] Should have been a slash.
[ticket/10780] Use L_COLON on LDAP page.
[ticket/10780] Use L_COLON on search backend ACP pages.
[ticket/10780] Use L_COLON for "download all attachments".
[ticket/10780] Use colon from language in ucp_pm_compose.php where possible.
[ticket/10780] Replace colons in phpBB/adm/style/acp_ext_details.html.
[ticket/10780] Replace colon usage in adm template output with {L_COLON}
[ticket/10780] Replace colon usage in template output with {L_COLON}
[ticket/11181] Bump PHP requirement to 5.3.3 (from 5.3.2) [develop-olympus]
[ticket/11181] Bump PHP requirement to 5.3.3 (from 5.3.2)
[ticket/10172] Show prosilver birthday list even if there are no birthdays.
...
Conflicts:
phpBB/common.php
phpBB/download/file.php
phpBB/includes/db/dbal.php
phpBB/includes/db/firebird.php
phpBB/includes/db/mssql.php
phpBB/includes/db/mssql_odbc.php
phpBB/includes/db/mssqlnative.php
phpBB/includes/db/mysql.php
phpBB/includes/db/mysqli.php
phpBB/includes/db/oracle.php
phpBB/includes/db/postgres.php
phpBB/includes/db/sqlite.php
phpBB/includes/extension/manager.php
phpBB/install/database_update.php
PHPBB3-11015
This allows us to just create the object without having to include the
driver first. However, it also means that users must specify the full
class name in config.php
cd694e9b9dfd59c8be00a52b30db8e6c280b97a9 renamed
assertResultEquals to assertSqlResultEquals. However, since the
session tests were never executed calls in them were never
updated.
Parameter order also changed; chase that too.
PHPBB3-10049
Two first simple tests to check functionality of session_begin and
session_create.
Added a mock class for the cache as well as a subclass of session
which has its cookie handling function mocked out to avoid header
sending problems.
PHPBB3-9732
* develop-olympus:
[task/session-tests] Make result check independent of returned row order.
[task/session-tests] By default the cache check now skips over db server info
[task/session-tests] Correctly display message on session continue test failure
[task/session-tests] Make the session id replacement of dataset values clearer
Conflicts:
tests/mock/cache.php
* develop-olympus:
[ticket/10052] Add comments to the session testable factory.
[ticket/10052] Correct session tests, and separate session factory from tests