@@ -37,7 +37,7 @@ Feature: Manage WP-Cron events and schedules
3737 When I run `wp cron event delete wp_cli_test_event_1`
3838 Then STDOUT should contain:
3939 """
40- Success: Deleted the cron event 'wp_cli_test_event_1'
40+ Success: Deleted a total of 1 cron event.
4141 """
4242
4343 When I run `wp cron event list`
@@ -123,7 +123,7 @@ Feature: Manage WP-Cron events and schedules
123123 When I run `wp cron event delete wp_cli_test_event_5`
124124 Then STDOUT should be:
125125 """
126- Success: Deleted 2 instances of the cron event 'wp_cli_test_event_5' .
126+ Success: Deleted a total of 2 cron events .
127127 """
128128
129129 When I run `wp cron event list`
@@ -135,7 +135,7 @@ Feature: Manage WP-Cron events and schedules
135135 When I try `wp cron event delete wp_cli_test_event_5`
136136 Then STDERR should be:
137137 """
138- Error: Invalid cron event 'wp_cli_test_event_5'.
138+ Error: Invalid cron event 'wp_cli_test_event_5'
139139 """
140140 Scenario : Cron event with missing recurrence should be non-repeating.
141141 Given a wp-content/mu-plugins/schedule.php file:
@@ -208,7 +208,7 @@ Feature: Manage WP-Cron events and schedules
208208 When I run `wp cron event delete wp_cli_test_event_2`
209209 Then STDOUT should contain:
210210 """
211- Success: Deleted the cron event 'wp_cli_test_event_2'
211+ Success: Deleted a total of 1 cron event.
212212 """
213213
214214 When I run `wp cron event list`
@@ -432,3 +432,120 @@ Feature: Manage WP-Cron events and schedules
432432 """
433433 Warning: Ignoring incorrectly registered cron event "wp_batch_split_terms".
434434 """
435+
436+ Scenario : Delete multiple cron events
437+ When I run `wp cron event schedule wp_cli_test_event_1 '+1 hour 5 minutes' hourly`
438+ Then STDOUT should not be empty
439+
440+ When I run `wp cron event schedule wp_cli_test_event_2 '+1 hour 5 minutes' hourly`
441+ Then STDOUT should not be empty
442+
443+ When I try `wp cron event delete`
444+ Then STDERR should be:
445+ """
446+ Error: Please specify one or more cron events, or use --due-now/--all.
447+ """
448+
449+ # WP throws a notice here for older versions of core.
450+ When I try `wp cron event delete --all`
451+ Then STDOUT should contain:
452+ """
453+ Success: Deleted a total of
454+ """
455+
456+ When I try `wp cron event list`
457+ Then STDOUT should not contain:
458+ """
459+ wp_cli_test_event_1
460+ """
461+ And STDOUT should not contain:
462+ """
463+ wp_cli_test_event_2
464+ """
465+
466+ When I run `wp cron event schedule wp_cli_test_event_1 now hourly`
467+ Then STDOUT should contain:
468+ """
469+ Success: Scheduled event with hook 'wp_cli_test_event_1'
470+ """
471+
472+ When I run `wp cron event schedule wp_cli_test_event_2 now hourly`
473+ Then STDOUT should contain:
474+ """
475+ Success: Scheduled event with hook 'wp_cli_test_event_2'
476+ """
477+
478+ When I run `wp cron event schedule wp_cli_test_event_2 '+1 hour 5 minutes' hourly`
479+ Then STDOUT should contain:
480+ """
481+ Success: Scheduled event with hook 'wp_cli_test_event_2'
482+ """
483+
484+ When I run `wp cron event delete wp_cli_test_event_2 --due-now`
485+ Then STDOUT should contain:
486+ """
487+ Deleted a total of 1 cron event
488+ """
489+
490+ When I try `wp cron event list`
491+ Then STDOUT should contain:
492+ """
493+ wp_cli_test_event_2
494+ """
495+
496+ When I run `wp cron event list --hook=wp_cli_test_event_2 --format=count`
497+ Then STDOUT should be:
498+ """
499+ 1
500+ """
501+
502+ When I run `wp cron event delete --due-now`
503+ Then STDOUT should contain:
504+ """
505+ Success: Deleted a total of
506+ """
507+
508+ When I try `wp cron event list`
509+ Then STDOUT should not contain:
510+ """
511+ wp_cli_test_event_1
512+ """
513+ And STDOUT should contain:
514+ """
515+ wp_cli_test_event_2
516+ """
517+
518+ When I run `wp cron event schedule wp_cli_test_event_1 '+1 hour 5 minutes' hourly`
519+ Then STDOUT should not be empty
520+
521+ When I run `wp cron event schedule wp_cli_test_event_2 '+1 hour 5 minutes' hourly`
522+ Then STDOUT should not be empty
523+
524+ When I run `wp cron event delete --all --exclude=wp_cli_test_event_1`
525+ Then STDOUT should contain:
526+ """
527+ Success: Deleted a total of
528+ """
529+
530+ When I try `wp cron event list`
531+ Then STDOUT should not contain:
532+ """
533+ wp_cli_test_event_2
534+ """
535+ And STDOUT should contain:
536+ """
537+ wp_cli_test_event_1
538+ """
539+
540+ Scenario : A valid combination of parameters should be present
541+ When I try `wp cron event delete --due-now --all`
542+ Then STDERR should be:
543+ """
544+ Error: Please use either --due-now or --all.
545+ """
546+
547+ When I try `wp cron event delete wp_cli_test_event_1 --all`
548+ Then STDERR should be:
549+ """
550+ Error: Please either specify cron events, or use --all.
551+ """
0 commit comments