Wordpress/tests/phpunit/includes
Dominik Schilling 9e83d04f84 I18N: Introduce WP_Textdomain_Registry to store text domains and their language directory paths.
Previously, when using `switch_to_locale()` all current loaded text domains were unloaded and added to the `$l10n_unloaded` global. This prevented the just-in-time loading for text domains after a switch. The just-in-time loading was also only possible if the translations were stored in `WP_LANG_DIR`. Both issues have been fixed.

* Adds `WP_Textdomain_Registry` to keep track of the language directory paths for all plugins and themes.
* Updates all `load_*_textdomain()`  functions to store the path in `WP_Textdomain_Registry`.
* Adds `$reloadable` parameter to `unload_textdomain()` to define whether a text domain can be loaded just-in-time again. This is used by `WP_Locale_Switcher::load_translations()`.
* Extends `_load_textdomain_just_in_time()` to also support text domains of plugins and themes with custom language directories.
* Fixes the incorrect `test_plugin_translation_after_switching_locale_twice()` test which should have catch this issue earlier.
* Adds a new test plugin/theme to test the loading of translations with a custom language directory.
* Deprecates the now unused and private `_get_path_to_translation()` and `_get_path_to_translation_from_lang_dir()` functions.

Props yoavf, swissspidy, dd32, ocean90.
See #26511.
Fixes #39210.

git-svn-id: https://develop.svn.wordpress.org/trunk@49236 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 16:03:58 +00:00
..
factory Code Modernization: Use explicit visibility for class property declarations. 2020-10-17 16:24:35 +00:00
phpunit6 Tests: Add a polyfill for assertEqualsWithDelta() to WP_UnitTestCase and use it where appropriate. 2020-09-07 03:12:17 +00:00
phpunit7 Tests: Backport two changes from PHPUnit 9.3: 2020-09-23 13:52:02 +00:00
abstract-testcase.php Tests: Simplify the logic in WP_UnitTestCase_Base::setUpBeforeClass() and ::tearDownAfterClass(). 2020-09-19 09:11:23 +00:00
bootstrap.php I18N: Introduce WP_Textdomain_Registry to store text domains and their language directory paths. 2020-10-20 16:03:58 +00:00
class-basic-object.php REST API: Support 'object' and 'array' types in register_meta() schemas. 2019-08-15 17:16:21 +00:00
class-basic-subclass.php Build/Test tools: Remove unnecessary PHP functionality tests from the test suite. 2017-12-09 23:08:24 +00:00
class-jsonserializable-object.php REST API: Add test class file incorrectly omitted from [45807]. 2019-08-15 17:20:02 +00:00
class-wp-fake-block-type.php Blocks: Introduce WP_Block_Type and WP_Block_Type_Registry classes. 2018-12-13 09:43:29 +00:00
class-wp-rest-test-configurable-controller.php REST API: Don't assume all item schemas have properties. 2020-02-20 16:56:17 +00:00
class-wp-rest-test-search-handler.php REST API: Introduce controller for searching across post types. 2018-12-13 09:37:05 +00:00
class-wp-sitemaps-empty-test-provider.php Sitemaps: Add XML sitemaps functionality to WordPress. 2020-06-17 15:22:49 +00:00
class-wp-sitemaps-large-test-provider.php Sitemaps: Correctly enforce maximum number of sitemaps in index. 2020-07-21 13:55:45 +00:00
class-wp-sitemaps-test-provider.php Sitemaps: Add XML sitemaps functionality to WordPress. 2020-06-17 15:22:49 +00:00
class-wp-test-stream.php Media: Support Stream Wrappers In WP_Image_Editor_Imagick 2020-10-20 14:35:10 +00:00
exceptions.php Docs: Improve documentation for tests/phpunit/includes/testcase-ajax.php. 2020-01-05 15:31:10 +00:00
factory.php Code Modernization: Replace dirname( __FILE__ ) calls with __DIR__ magic constant. 2020-02-06 06:31:22 +00:00
functions.php Editor: Move core blocks registration to init hook 2020-07-02 17:20:28 +00:00
install.php Build/Test: Die with an error if populate_network fails 2020-06-03 21:02:42 +00:00
listener-loader.php Code Modernization: Replace dirname( __FILE__ ) calls with __DIR__ magic constant. 2020-02-06 06:31:22 +00:00
mock-fs.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:43:23 +00:00
mock-image-editor.php REST API: Introduce endpoint for editing images. 2020-07-04 04:13:17 +00:00
mock-mailer.php Code Modernization: Use explicit visibility for class property declarations. 2020-10-17 16:24:35 +00:00
normalize-xml.xsl Sitemaps: Add XML sitemaps functionality to WordPress. 2020-06-17 15:22:49 +00:00
object-cache.php Docs: Improve DocBlocks in phpunit/includes/object-cache.php per the documentation standards. 2020-01-29 00:36:17 +00:00
plural-form-function.php Code Modernization: Change create_function() in phpunit/includes/plural-form-function.php to closure. 2020-08-13 12:32:03 +00:00
speed-trap-listener.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:43:23 +00:00
spy-rest-server.php Docs: Improve documentation for tests/phpunit/includes/spy-rest-server.php. 2020-02-11 00:18:28 +00:00
testcase-ajax.php Docs: Update the code example in WP_Ajax_UnitTestCase::dieHandler() DocBlock to use expectException(). 2020-09-18 13:53:31 +00:00
testcase-block-supports.php Block Editor: Update the WordPress Packages to the latest version. 2020-10-20 13:33:02 +00:00
testcase-canonical.php Code Modernization: Use explicit visibility for class property declarations. 2020-10-17 16:24:35 +00:00
testcase-rest-api.php REST API: Introduce baby API to the world. 2015-10-08 02:30:18 +00:00
testcase-rest-controller.php REST API: Include permalink_template/generated_slug for Posts 2018-12-12 02:11:22 +00:00
testcase-rest-post-type-controller.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:43:23 +00:00
testcase-xml.php Sitemaps: Add XML sitemaps functionality to WordPress. 2020-06-17 15:22:49 +00:00
testcase-xmlrpc.php Code Modernization: Replace dirname( __FILE__ ) calls with __DIR__ magic constant. 2020-02-06 06:31:22 +00:00
testcase.php Tests: Remove the polyfill for assertNotFalse(). 2020-09-07 03:26:24 +00:00
trac.php I18N: Restore the "Error:" prefix for error messages. 2020-06-21 13:58:46 +00:00
utils.php Coding Standards: Replace alias PHP functions with the canonical names. 2020-10-18 17:25:10 +00:00
wp-profiler.php Docs: Improve inline comments per the documentation standards. 2020-01-29 00:43:23 +00:00