Changeset 57920 for trunk/tests/phpunit/tests/option/option.php
- Timestamp:
- 04/03/2024 09:29:13 PM (15 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/option/option.php
r56946 r57920 309 309 'string 123' => array( '123' ), 310 310 'integer 123' => array( 123 ), 311 'integer -123' => array( - 123 ),311 'integer -123' => array( - 123 ), 312 312 'float 12.3' => array( 12.3 ), 313 'float -1.23' => array( - 1.23 ),313 'float -1.23' => array( - 1.23 ), 314 314 'boolean true' => array( true ), 315 315 ); … … 360 360 public function data_option_autoloading() { 361 361 return array( 362 array( 'autoload_yes', 'yes', 'yes' ), 363 array( 'autoload_true', true, 'yes' ), 364 array( 'autoload_string', 'foo', 'yes' ), 365 array( 'autoload_int', 123456, 'yes' ), 366 array( 'autoload_array', array(), 'yes' ), 367 array( 'autoload_no', 'no', 'no' ), 368 array( 'autoload_false', false, 'no' ), 369 ); 362 // Supported values. 363 array( 'autoload_yes', 'yes', 'on' ), 364 array( 'autoload_true', true, 'on' ), 365 array( 'autoload_no', 'no', 'off' ), 366 array( 'autoload_false', false, 'off' ), 367 array( 'autoload_null', null, 'auto' ), 368 369 // Technically unsupported values. 370 array( 'autoload_string', 'foo', 'auto' ), 371 array( 'autoload_int', 123456, 'auto' ), 372 array( 'autoload_array', array(), 'auto' ), 373 ); 374 } 375 376 /** 377 * @ticket 42441 378 * 379 * @covers ::update_option 380 * 381 * @dataProvider data_option_autoloading_large_option 382 */ 383 public function test_update_option_autoloading_large_option( $autoload, $expected ) { 384 global $wpdb; 385 $name = 'foo'; 386 add_option( $name, 'bar' ); 387 add_filter( 'wp_max_autoloaded_option_size', array( $this, 'filter_max_option_size' ) ); 388 $value = file( DIR_TESTDATA . '/formatting/entities.txt' ); 389 $updated = update_option( $name, $value, $autoload ); 390 $this->assertTrue( $updated ); 391 392 $actual = $wpdb->get_row( $wpdb->prepare( "SELECT autoload FROM $wpdb->options WHERE option_name = %s LIMIT 1", $name ) ); 393 $this->assertSame( $expected, $actual->autoload ); 394 } 395 396 public function data_option_autoloading_large_option() { 397 return array( 398 'on' => array( 399 'autoload' => 'on', 400 'expected' => 'on', 401 ), 402 'off' => array( 403 'autoload' => 'off', 404 'expected' => 'off', 405 ), 406 'yes' => array( 407 'autoload' => 'yes', 408 'expected' => 'on', 409 ), 410 'true' => array( 411 'autoload' => true, 412 'expected' => 'on', 413 ), 414 'no' => array( 415 'autoload' => 'no', 416 'expected' => 'off', 417 ), 418 'false' => array( 419 'autoload' => false, 420 'expected' => 'off', 421 ), 422 'null' => array( 423 'autoload' => null, 424 'expected' => 'auto-off', 425 ), 426 ); 427 } 428 429 public function filter_max_option_size( $current ) { 430 return 1000; 431 } 432 433 /** 434 * @ticket 42441 435 * 436 * @covers ::update_option 437 */ 438 public function test_update_option_autoloading_small_option_auto() { 439 global $wpdb; 440 441 $name = 'foo'; 442 add_option( $name, 'bar' ); 443 $updated = update_option( $name, 'small_option_data' ); 444 $this->assertTrue( $updated ); 445 446 $actual = $wpdb->get_row( $wpdb->prepare( "SELECT autoload FROM $wpdb->options WHERE option_name = %s LIMIT 1", $name ) ); 447 $this->assertSame( 'auto', $actual->autoload ); 370 448 } 371 449
Note: See TracChangeset
for help on using the changeset viewer.