From d52a2bc59b843873d286c1b76325462c1b6fd7de Mon Sep 17 00:00:00 2001 From: David Stone Date: Tue, 14 Apr 2026 09:30:14 -0600 Subject: [PATCH] fix: make wu_duplicate_site action test fail on WP_Error instead of silently skipping assertions Previously, if Site_Duplicator::duplicate_site() returned WP_Error, the test would silently pass with zero assertions, creating a false positive. Now the test calls $this->fail() with the error message, making failures visible. Resolves #840 --- .../WP_Ultimo/Helpers/Site_Duplicator_Test.php | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/tests/WP_Ultimo/Helpers/Site_Duplicator_Test.php b/tests/WP_Ultimo/Helpers/Site_Duplicator_Test.php index 4f57e3c2d..fcf4f7128 100644 --- a/tests/WP_Ultimo/Helpers/Site_Duplicator_Test.php +++ b/tests/WP_Ultimo/Helpers/Site_Duplicator_Test.php @@ -603,15 +603,17 @@ function ($site) use (&$captured) { $result = Site_Duplicator::duplicate_site($this->template_site_id, 'Action Test Site', $args); - if ( ! is_wp_error($result)) { - $this->assertIsArray($captured); - $this->assertArrayHasKey('from_site_id', $captured); - $this->assertArrayHasKey('site_id', $captured); - $this->assertEquals($this->template_site_id, $captured['from_site_id']); - $this->assertEquals($result, $captured['site_id']); - - wpmu_delete_blog($result, true); + if (is_wp_error($result)) { + $this->fail('Site duplication failed: ' . $result->get_error_message()); } + + $this->assertIsArray($captured); + $this->assertArrayHasKey('from_site_id', $captured); + $this->assertArrayHasKey('site_id', $captured); + $this->assertEquals($this->template_site_id, $captured['from_site_id']); + $this->assertEquals($result, $captured['site_id']); + + wpmu_delete_blog($result, true); } /**