wordpress-develop/tests/phpunit/tests/option/siteTransient.php
Sergey Biryukov a5463b4500 Tests: Make the message for skipping some tests with an external object cache more consistent.
Follow-up to [33702], [34767], [49857], [53821].

See #56793.

git-svn-id: https://develop.svn.wordpress.org/trunk@54668 602fd350-edb4-49c9-b593-d223f7449a82
2022-10-23 12:36:58 +00:00

75 lines
1.9 KiB
PHP

<?php
/**
* @group option
*/
class Tests_Option_SiteTransient extends WP_UnitTestCase {
public function set_up() {
parent::set_up();
if ( wp_using_ext_object_cache() ) {
$this->markTestSkipped( 'This test requires that an external object cache is not in use.' );
}
}
/**
* @covers ::get_site_transient
* @covers ::set_site_transient
* @covers ::delete_site_transient
*/
public function test_the_basics() {
$key = 'key1';
$value = 'value1';
$value2 = 'value2';
$this->assertFalse( get_site_transient( 'doesnotexist' ) );
$this->assertTrue( set_site_transient( $key, $value ) );
$this->assertSame( $value, get_site_transient( $key ) );
$this->assertFalse( set_site_transient( $key, $value ) );
$this->assertTrue( set_site_transient( $key, $value2 ) );
$this->assertSame( $value2, get_site_transient( $key ) );
$this->assertTrue( delete_site_transient( $key ) );
$this->assertFalse( get_site_transient( $key ) );
$this->assertFalse( delete_site_transient( $key ) );
}
/**
* @covers ::get_site_transient
* @covers ::set_site_transient
* @covers ::delete_site_transient
*/
public function test_serialized_data() {
$key = __FUNCTION__;
$value = array(
'foo' => true,
'bar' => true,
);
$this->assertTrue( set_site_transient( $key, $value ) );
$this->assertSame( $value, get_site_transient( $key ) );
$value = (object) $value;
$this->assertTrue( set_site_transient( $key, $value ) );
$this->assertEquals( $value, get_site_transient( $key ) );
$this->assertTrue( delete_site_transient( $key ) );
}
/**
* @ticket 22846
* @group ms-excluded
*
* @covers ::set_site_transient
* @covers ::wp_load_alloptions
*/
public function test_set_site_transient_is_not_stored_as_autoload_option() {
$key = 'not_autoloaded';
set_site_transient( $key, 'Not an autoload option' );
$options = wp_load_alloptions();
$this->assertArrayNotHasKey( '_site_transient_' . $key, $options );
}
}