diff --git a/tests/DataFactories/Newsletter.php b/tests/DataFactories/Newsletter.php index 590e279b72..bb77cc837a 100644 --- a/tests/DataFactories/Newsletter.php +++ b/tests/DataFactories/Newsletter.php @@ -44,7 +44,9 @@ class Newsletter { * @return Newsletter */ public function loadBodyFrom($filename) { - $this->data['body'] = json_decode(file_get_contents(__DIR__ . '/../_data/' . $filename), true); + $body = file_get_contents(__DIR__ . '/../_data/' . $filename); + assert(is_string($body)); + $this->data['body'] = json_decode($body, true); return $this; } diff --git a/tests/_support/Helper/Database.php b/tests/_support/Helper/Database.php index cc45083755..bc720bbc19 100644 --- a/tests/_support/Helper/Database.php +++ b/tests/_support/Helper/Database.php @@ -20,6 +20,7 @@ class Database extends \Codeception\Module { $db = ORM::getDb(); $fullFilename = Env::$path . '/tests/_data/' . $filename . '.sql'; $sql = file_get_contents($fullFilename); + assert(is_string($sql)); $sql = preg_replace('/`wp_/', '`' . $wpdb->prefix, $sql); // Use the current database prefix if (!is_string($sql)) { throw new \RuntimeException('Empty or missing ' . $fullFilename); diff --git a/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartPageVisitTrackerTest.php b/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartPageVisitTrackerTest.php index 569e71887d..092b50744d 100644 --- a/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartPageVisitTrackerTest.php +++ b/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartPageVisitTrackerTest.php @@ -28,6 +28,7 @@ class AbandonedCartPageVisitTrackerTest extends \MailPoetTest { $this->currentTime = Carbon::now(); Carbon::setTestNow($this->currentTime); + // @phpstan-ignore-next-line $this->wp = $this->makeEmpty(WPFunctions::class, [ 'currentTime' => $this->currentTime->getTimestamp(), ]); diff --git a/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartTest.php b/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartTest.php index 4c071e071a..233c7cd3ad 100644 --- a/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartTest.php +++ b/tests/integration/AutomaticEmails/WooCommerce/Events/AbandonedCartTest.php @@ -49,6 +49,7 @@ class AbandonedCartTest extends \MailPoetTest { $this->currentTime = Carbon::createFromTimestamp((new WPFunctions())->currentTime('timestamp')); Carbon::setTestNow($this->currentTime); + // @phpstan-ignore-next-line $this->wp = $this->makeEmpty(WPFunctions::class, [ 'currentTime' => function ($arg) { if ($arg === 'timestamp') { @@ -63,11 +64,12 @@ class AbandonedCartTest extends \MailPoetTest { $this->wooCommerceMock = $this->mockWooCommerceClass(WooCommerce::class, []); $this->wooCommerceCartMock = $this->mockWooCommerceClass(WC_Cart::class, ['is_empty', 'get_cart']); $this->wooCommerceMock->cart = $this->wooCommerceCartMock; + // @phpstan-ignore-next-line $this->wooCommerceHelperMock = $this->make(WooCommerceHelper::class, [ 'isWooCommerceActive' => true, 'WC' => $this->wooCommerceMock, ]); - + // @phpstan-ignore-next-line $this->pageVisitTrackerMock = $this->makeEmpty(AbandonedCartPageVisitTracker::class); } @@ -222,9 +224,11 @@ class AbandonedCartTest extends \MailPoetTest { expect(ScheduledTask::findMany())->count(2); $completed = ScheduledTask::where('status', ScheduledTask::STATUS_COMPLETED)->findOne(); + assert($completed instanceof ScheduledTask); expect($completed->scheduledAt)->same($scheduledInPast->format('Y-m-d H:i:s')); $scheduled = ScheduledTask::where('status', ScheduledTask::STATUS_SCHEDULED)->findOne(); + assert($scheduled instanceof ScheduledTask); expect($scheduled->scheduledAt)->same($expectedTime->format('Y-m-d H:i:s')); } diff --git a/tests/integration/Logging/LogHandlerTest.php b/tests/integration/Logging/LogHandlerTest.php index 9d317f5a86..efc8f360d7 100644 --- a/tests/integration/Logging/LogHandlerTest.php +++ b/tests/integration/Logging/LogHandlerTest.php @@ -19,6 +19,7 @@ class LogHandlerTest extends \MailPoetTest { ]); $log = Log::where('name', 'name')->orderByDesc('id')->findOne(); + assert($log instanceof Log); expect($log->createdAt)->equals($time->format('Y-m-d H:i:s')); } diff --git a/tests/integration/Segments/WooCommerceTest.php b/tests/integration/Segments/WooCommerceTest.php index 675d3c622d..d40398f1be 100644 --- a/tests/integration/Segments/WooCommerceTest.php +++ b/tests/integration/Segments/WooCommerceTest.php @@ -483,6 +483,8 @@ class WooCommerceTest extends \MailPoetTest { $association1AfterUpdate = SubscriberSegment::findOne($association1->id); $association2AfterUpdate = SubscriberSegment::findOne($association2->id); + assert($association1AfterUpdate instanceof SubscriberSegment); + assert($association2AfterUpdate instanceof SubscriberSegment); expect($association1AfterUpdate->status)->equals(Subscriber::STATUS_SUBSCRIBED); expect($association2AfterUpdate->status)->equals(Subscriber::STATUS_UNSUBSCRIBED); } @@ -525,6 +527,8 @@ class WooCommerceTest extends \MailPoetTest { $association1AfterUpdate = SubscriberSegment::findOne($association1->id); $association2AfterUpdate = SubscriberSegment::findOne($association2->id); + assert($association1AfterUpdate instanceof SubscriberSegment); + assert($association2AfterUpdate instanceof SubscriberSegment); expect($association1AfterUpdate->status)->equals(Subscriber::STATUS_UNSUBSCRIBED); expect($association2AfterUpdate->status)->equals(Subscriber::STATUS_SUBSCRIBED); } diff --git a/tests/integration/Settings/UserFlagsControllerTest.php b/tests/integration/Settings/UserFlagsControllerTest.php index 231a1d1877..93f5bcdda3 100644 --- a/tests/integration/Settings/UserFlagsControllerTest.php +++ b/tests/integration/Settings/UserFlagsControllerTest.php @@ -71,6 +71,7 @@ class UserFlagsControllerTest extends \MailPoetTest { 'userId' => $this->currentUserId, 'name' => 'flag_1', ]); + assert($flag instanceof UserFlagEntity); expect($flag->getValue())->equals('updated_value'); } diff --git a/tests/integration/Statistics/Track/WooCommercePurchasesTest.php b/tests/integration/Statistics/Track/WooCommercePurchasesTest.php index 42b22cad03..72b05f65d1 100644 --- a/tests/integration/Statistics/Track/WooCommercePurchasesTest.php +++ b/tests/integration/Statistics/Track/WooCommercePurchasesTest.php @@ -91,11 +91,13 @@ class WooCommercePurchasesTest extends \MailPoetTest { expect(count($purchaseStats))->equals(2); $stats1 = StatisticsWooCommercePurchases::where('newsletter_id', $this->newsletter->id)->findOne(); + assert($stats1 instanceof StatisticsWooCommercePurchases); expect($stats1->clickId)->equals($click1->id); expect($stats1->subscriberId)->equals($this->subscriber->id); expect($stats1->queueId)->equals($this->queue->id); $stats2 = StatisticsWooCommercePurchases::where('newsletter_id', $newsletter->id)->findOne(); + assert($stats2 instanceof StatisticsWooCommercePurchases); expect($stats2->clickId)->equals($click2->id); expect($stats2->subscriberId)->equals($this->subscriber->id); expect($stats2->queueId)->equals($queue->id); diff --git a/tests/integration/Subscribers/ImportExport/Export/ExportTest.php b/tests/integration/Subscribers/ImportExport/Export/ExportTest.php index 908307396e..77167dc69e 100644 --- a/tests/integration/Subscribers/ImportExport/Export/ExportTest.php +++ b/tests/integration/Subscribers/ImportExport/Export/ExportTest.php @@ -149,6 +149,7 @@ class ExportTest extends \MailPoetTest { public function testItCanGetSubscriberCustomFields() { $source = CustomField::where('name', $this->customFieldsData[0]['name']) ->findOne(); + assert($source instanceof CustomField); $target = $this->export->getSubscriberCustomFields(); expect($target)->equals([$source->id => $source->name]); } diff --git a/tests/integration/WooCommerce/TransactionalEmailsTest.php b/tests/integration/WooCommerce/TransactionalEmailsTest.php index 6408d2b3ae..bf776467de 100644 --- a/tests/integration/WooCommerce/TransactionalEmailsTest.php +++ b/tests/integration/WooCommerce/TransactionalEmailsTest.php @@ -59,6 +59,7 @@ class TransactionalEmailsTest extends \MailPoetTest { public function testInitCreatesTransactionalEmailAndSavesItsId() { $this->transactionalEmails->init(); $email = $this->newslettersRepository->findOneBy(['type' => Newsletter::TYPE_WC_TRANSACTIONAL_EMAIL]); + assert($email instanceof NewsletterEntity); $id = $this->settings->get(TransactionalEmails::SETTING_EMAIL_ID, null); expect($email)->notEmpty(); expect($id)->notNull(); @@ -89,6 +90,7 @@ class TransactionalEmailsTest extends \MailPoetTest { $email = $this->newslettersRepository->findOneBy([ 'type' => NewsletterEntity::TYPE_WC_TRANSACTIONAL_EMAIL, ]); + assert($email instanceof NewsletterEntity); expect($email)->notEmpty(); expect(json_encode($email->getBody()))->stringContainsString('my-awesome-image-url'); } diff --git a/tests/unit/WP/ReadmeTest.php b/tests/unit/WP/ReadmeTest.php index 527e8051d1..446b015cd0 100644 --- a/tests/unit/WP/ReadmeTest.php +++ b/tests/unit/WP/ReadmeTest.php @@ -10,7 +10,7 @@ class ReadmeTest extends \MailPoetUnitTest { public function _before() { // Sample taken from https://wordpress.org/plugins/about/readme.txt - $this->data = file_get_contents(dirname(__FILE__) . '/ReadmeTestData.txt'); + $this->data = (string)file_get_contents(dirname(__FILE__) . '/ReadmeTestData.txt'); } public function testItParsesChangelog() {