Changeset 44693 for trunk/tests/phpunit/tests/cron.php
- Timestamp:
- 01/23/2019 11:07:39 PM (7 years ago)
- File:
-
- 1 edited
-
trunk/tests/phpunit/tests/cron.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/cron.php
r43571 r44693 459 459 function test_pre_scheduled_event_hooks() { 460 460 add_filter( 'pre_get_scheduled_event', array( $this, 'filter_pre_scheduled_event_hooks' ) ); 461 add_filter( 'pre_next_scheduled', array( $this, 'filter_pre_scheduled_event_hooks' ) );462 461 463 462 $actual = wp_get_scheduled_event( 'preflight_event', array(), $this->plus_thirty_minutes ); … … 472 471 473 472 $this->assertEquals( $expected, $actual ); 474 $this->assertEquals( $expected , $actual2 );473 $this->assertEquals( $expected->timestamp, $actual2 ); 475 474 } 476 475 … … 483 482 ); 484 483 } 484 485 /** 486 * Ensure wp_get_scheduled_event() returns the expected one off events. 487 * 488 * When no timestamp is specified, the next event should be returned. 489 * When a timestamp is specified, a particular event should be returned. 490 * 491 * @ticket 45976. 492 */ 493 function test_get_scheduled_event_singles() { 494 $hook = __FUNCTION__; 495 $args = array( 'arg1' ); 496 $ts_late = strtotime( '+30 minutes' ); 497 $ts_next = strtotime( '+3 minutes' ); 498 499 $expected1 = (object) array( 500 'hook' => $hook, 501 'timestamp' => $ts_late, 502 'schedule' => false, 503 'args' => $args, 504 ); 505 506 $expected2 = (object) array( 507 'hook' => $hook, 508 'timestamp' => $ts_next, 509 'schedule' => false, 510 'args' => $args, 511 ); 512 513 // Schedule late running event. 514 wp_schedule_single_event( $ts_late, $hook, $args ); 515 // Schedule next running event. 516 wp_schedule_single_event( $ts_next, $hook, $args ); 517 518 // Late running, timestamp specified. 519 $this->assertEquals( $expected1, wp_get_scheduled_event( $hook, $args, $ts_late ) ); 520 521 // Next running, timestamp specified. 522 $this->assertEquals( $expected2, wp_get_scheduled_event( $hook, $args, $ts_next ) ); 523 524 // Next running, no timestamp specified. 525 $this->assertEquals( $expected2, wp_get_scheduled_event( $hook, $args ) ); 526 } 527 528 /** 529 * Ensure wp_get_scheduled_event() returns the expected recurring events. 530 * 531 * When no timestamp is specified, the next event should be returned. 532 * When a timestamp is specified, a particular event should be returned. 533 * 534 * @ticket 45976. 535 */ 536 function test_get_scheduled_event_recurring() { 537 $hook = __FUNCTION__; 538 $args = array( 'arg1' ); 539 $ts_late = strtotime( '+30 minutes' ); 540 $ts_next = strtotime( '+3 minutes' ); 541 $schedule = 'hourly'; 542 $interval = HOUR_IN_SECONDS; 543 544 $expected1 = (object) array( 545 'hook' => $hook, 546 'timestamp' => $ts_late, 547 'schedule' => $schedule, 548 'args' => $args, 549 'interval' => $interval, 550 ); 551 552 $expected2 = (object) array( 553 'hook' => $hook, 554 'timestamp' => $ts_next, 555 'schedule' => $schedule, 556 'args' => $args, 557 'interval' => $interval, 558 ); 559 560 // Schedule late running event. 561 wp_schedule_event( $ts_late, $schedule, $hook, $args ); 562 // Schedule next running event. 563 wp_schedule_event( $ts_next, $schedule, $hook, $args ); 564 565 // Late running, timestamp specified. 566 $this->assertEquals( $expected1, wp_get_scheduled_event( $hook, $args, $ts_late ) ); 567 568 // Next running, timestamp specified. 569 $this->assertEquals( $expected2, wp_get_scheduled_event( $hook, $args, $ts_next ) ); 570 571 // Next running, no timestamp specified. 572 $this->assertEquals( $expected2, wp_get_scheduled_event( $hook, $args ) ); 573 } 574 575 /** 576 * Ensure wp_get_scheduled_event() returns false when expected. 577 * 578 * @ticket 45976. 579 */ 580 function test_get_scheduled_event_false() { 581 $hook = __FUNCTION__; 582 $args = array( 'arg1' ); 583 $ts = strtotime( '+3 minutes' ); 584 585 // No scheduled events. 586 // - With timestamp 587 $this->assertFalse( wp_get_scheduled_event( $hook, $args, $ts ) ); 588 // - Get next, none scheduled. 589 $this->assertFalse( wp_get_scheduled_event( $hook, $args ) ); 590 591 // Schedule an event. 592 wp_schedule_event( $ts, $hook, $args ); 593 // - unregistered timestamp 594 $this->assertFalse( wp_get_scheduled_event( $hook, $args, strtotime( '+30 minutes' ) ) ); 595 // - invalid timestamp. 596 $this->assertFalse( wp_get_scheduled_event( $hook, $args, 'Words Fail!' ) ); 597 598 } 485 599 }
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)