Skip to content
Snippets Groups Projects
Commit 5a3878e7 authored by Erick Hitter's avatar Erick Hitter
Browse files

Add scheduling tests

parent f16eee49
No related branches found
No related tags found
No related merge requests found
...@@ -10,9 +10,29 @@ use Automattic\WP\WP_CLI_Cron_Control_Offload; ...@@ -10,9 +10,29 @@ use Automattic\WP\WP_CLI_Cron_Control_Offload;
use WP_UnitTestCase; use WP_UnitTestCase;
/** /**
* Sample test case. * Core function tests
*/ */
class SampleTest extends WP_UnitTestCase { class Plugin_Functions extends WP_UnitTestCase {
/**
* Prepare test environment
*/
function setUp() {
parent::setUp();
// make sure the schedule is clear.
_set_cron_array( array() );
}
/**
* Clean up after our tests
*/
function tearDown() {
// make sure the schedule is clear.
_set_cron_array( array() );
parent::tearDown();
}
/** /**
* Test whitelisted commands * Test whitelisted commands
*/ */
...@@ -42,4 +62,18 @@ class SampleTest extends WP_UnitTestCase { ...@@ -42,4 +62,18 @@ class SampleTest extends WP_UnitTestCase {
$this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\validate_command( 'wp cli info' ) ) ); $this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\validate_command( 'wp cli info' ) ) );
$this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\validate_command( 'cli info' ) ) ); $this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\validate_command( 'cli info' ) ) );
} }
/**
* Test event scheduling
*/
function test_event_scheduling() {
// Should succeed, returning a timestamp.
$this->assertTrue( is_int( WP_CLI_Cron_Control_Offload\schedule_cli_command( 'wp cli info' ) ) );
// Should be blocked as a duplicate, thanks to Core's 10-minute lookahead.
$this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\schedule_cli_command( 'wp cli info' ) ) );
// Should also fail as normalization makes it a duplicate.
$this->assertTrue( is_wp_error( WP_CLI_Cron_Control_Offload\schedule_cli_command( 'cli info' ) ) );
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment