Changeset 39125 for trunk/tests/phpunit/tests/l10n.php
- Timestamp:
- 11/03/2016 07:56:53 PM (10 years ago)
- File:
-
- 1 edited
-
trunk/tests/phpunit/tests/l10n.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/l10n.php
r38930 r39125 34 34 } 35 35 36 function test_load_unload_textdomain() {37 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );38 $this->assertFalse( unload_textdomain( 'wp-tests-domain' ) );39 40 $file = DIR_TESTDATA . '/pomo/simple.mo';41 $this->assertTrue( load_textdomain( 'wp-tests-domain', $file ) );42 $this->assertTrue( is_textdomain_loaded( 'wp-tests-domain' ) );43 $this->assertTrue( unload_textdomain( 'wp-tests-domain' ) );44 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );45 }46 47 36 /** 48 37 * @ticket 35073 … … 52 41 $this->assertEquals( 'before-last-bar', before_last_bar( 'before-last-bar|after-bar' ) ); 53 42 $this->assertEquals( 'first-before-bar|second-before-bar', before_last_bar( 'first-before-bar|second-before-bar|after-last-bar' ) ); 54 }55 56 /**57 * @ticket 2131958 */59 function test_is_textdomain_loaded_for_no_translations() {60 $this->assertFalse( load_textdomain( 'wp-tests-domain', DIR_TESTDATA . '/non-existent-file' ) );61 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );62 $this->assertInstanceOf( 'NOOP_Translations', get_translations_for_domain( 'wp-tests-domain' ) );63 // Ensure that we don't confuse NOOP_Translations to be a loaded text domain.64 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );65 $this->assertFalse( unload_textdomain( 'wp-tests-domain' ) );66 }67 68 /**69 * @ticket 2131970 */71 function test_is_textdomain_is_not_loaded_after_gettext_call_with_no_translations() {72 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );73 __( 'just some string', 'wp-tests-domain' );74 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );75 43 } 76 44 … … 177 145 $this->assertNotEmpty( $array['X-Generator'] ); 178 146 } 179 180 function test_override_load_textdomain_noop() {181 add_filter( 'override_load_textdomain', '__return_true' );182 $load_textdomain = load_textdomain( 'wp-tests-domain', DIR_TESTDATA . '/non-existent-file' );183 remove_filter( 'override_load_textdomain', '__return_true' );184 185 $this->assertTrue( $load_textdomain );186 $this->assertFalse( is_textdomain_loaded( 'wp-tests-domain' ) );187 }188 189 function test_override_load_textdomain_non_existent_mofile() {190 add_filter( 'override_load_textdomain', array( $this, '_override_load_textdomain_filter' ), 10, 3 );191 $load_textdomain = load_textdomain( 'wp-tests-domain', WP_LANG_DIR . '/non-existent-file.mo' );192 remove_filter( 'override_load_textdomain', array( $this, '_override_load_textdomain_filter' ) );193 194 $is_textdomain_loaded = is_textdomain_loaded( 'wp-tests-domain' );195 unload_textdomain( 'wp-tests-domain' );196 $is_textdomain_loaded_after = is_textdomain_loaded( 'wp-tests-domain' );197 198 $this->assertFalse( $load_textdomain );199 $this->assertFalse( $is_textdomain_loaded );200 $this->assertFalse( $is_textdomain_loaded_after );201 }202 203 function test_override_load_textdomain_custom_mofile() {204 add_filter( 'override_load_textdomain', array( $this, '_override_load_textdomain_filter' ), 10, 3 );205 $load_textdomain = load_textdomain( 'wp-tests-domain', WP_LANG_DIR . '/plugins/internationalized-plugin-de_DE.mo' );206 remove_filter( 'override_load_textdomain', array( $this, '_override_load_textdomain_filter' ) );207 208 $is_textdomain_loaded = is_textdomain_loaded( 'wp-tests-domain' );209 unload_textdomain( 'wp-tests-domain' );210 $is_textdomain_loaded_after = is_textdomain_loaded( 'wp-tests-domain' );211 212 $this->assertTrue( $load_textdomain );213 $this->assertTrue( $is_textdomain_loaded );214 $this->assertFalse( $is_textdomain_loaded_after );215 }216 217 /**218 * @param bool $override Whether to override the .mo file loading. Default false.219 * @param string $domain Text domain. Unique identifier for retrieving translated strings.220 * @param string $mofile Path to the MO file.221 * @return bool222 */223 function _override_load_textdomain_filter( $override, $domain, $file ) {224 global $l10n;225 226 if ( ! is_readable( $file ) ) {227 return false;228 }229 230 $mo = new MO();231 232 if ( ! $mo->import_from_file( $file ) ) {233 return false;234 }235 236 if ( isset( $l10n[ $domain ] ) ) {237 $mo->merge_with( $l10n[ $domain ] );238 }239 240 $l10n[ $domain ] = &$mo;241 242 return true;243 }244 147 }
Note: See TracChangeset
for help on using the changeset viewer.