Skip to content

Commit d2a2bc5

Browse files
author
Алексей Тихомиров
committed
fix: use WPQueue::clear() instead of deleting all wp_queue_% options in beforeEach
1 parent 256de14 commit d2a2bc5

3 files changed

Lines changed: 22 additions & 6 deletions

File tree

tests/Feature/CliIntegrationTest.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,13 @@
1515
define('WP_CLI', true);
1616
}
1717

18-
// Очистка всех очередей и статусов
18+
// Очистка очередей (но не счётчиков)
19+
WPQueue::clear('default');
20+
WPQueue::clear('emails');
21+
22+
// Очистка счётчиков и статусов
1923
global $wpdb;
20-
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%'");
24+
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%' AND option_name NOT LIKE 'wp_queue_jobs_%'");
2125

2226
// Явная очистка статуса паузы
2327
delete_site_option('wp_queue_status_default');

tests/Feature/QueueIntegrationTest.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,17 @@
1414
use WPQueue\WPQueue;
1515

1616
beforeEach(function (): void {
17-
// Очистка всех очередей перед каждым тестом
17+
// Очистка очередей (но не счётчиков)
18+
WPQueue::clear('default');
19+
WPQueue::clear('emails');
20+
21+
// Очистка счётчиков и статусов
1822
global $wpdb;
19-
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%'");
23+
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%' AND option_name NOT LIKE 'wp_queue_jobs_%'");
24+
25+
// Явная очистка статуса паузы
26+
delete_site_option('wp_queue_status_default');
27+
delete_site_option('wp_queue_status_emails');
2028
});
2129

2230
afterEach(function (): void {

tests/Feature/RestApiIntegrationTest.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,13 @@
99
use WPQueue\WPQueue;
1010

1111
beforeEach(function (): void {
12-
// Очистка всех очередей и статусов
12+
// Очистка очередей (но не счётчиков)
13+
WPQueue::clear('default');
14+
WPQueue::clear('emails');
15+
16+
// Очистка счётчиков и статусов
1317
global $wpdb;
14-
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%'");
18+
$wpdb->query("DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wp_queue_%' AND option_name NOT LIKE 'wp_queue_jobs_%'");
1519

1620
// Явная очистка статуса паузы
1721
delete_site_option('wp_queue_status_default');

0 commit comments

Comments
 (0)