diff --git a/lib/Subscribers/SubscribersRepository.php b/lib/Subscribers/SubscribersRepository.php index a98d6365fe..048fb75ff1 100644 --- a/lib/Subscribers/SubscribersRepository.php +++ b/lib/Subscribers/SubscribersRepository.php @@ -116,6 +116,7 @@ class SubscribersRepository extends Repository { $count = $queryBuilder->delete(SubscriberEntity::class, 's') ->where('s.id IN (:ids)') ->andWhere('s.wpUserId IS NULL') + ->andWhere('s.isWoocommerceUser = false') ->setParameter('ids', $ids) ->getQuery()->execute(); }); diff --git a/tests/integration/Segments/WooCommerceTest.php b/tests/integration/Segments/WooCommerceTest.php index 467c945a90..0ddc9bc959 100644 --- a/tests/integration/Segments/WooCommerceTest.php +++ b/tests/integration/Segments/WooCommerceTest.php @@ -269,7 +269,7 @@ class WooCommerceTest extends \MailPoetTest { expect($subscribers->count())->equals(4); } - public function testItRemovesRegisteredCustomersFromTrash() { + public function testItDoesntRemoveRegisteredCustomersFromTrash() { $user = $this->insertRegisteredCustomer(); $this->woocommerceSegment->synchronizeCustomers(); $subscriber = Subscriber::where("email", $user->user_email) // phpcs:ignore Squiz.NamingConventions.ValidVariableName.NotCamelCaps @@ -281,10 +281,10 @@ class WooCommerceTest extends \MailPoetTest { $subscriber = Subscriber::where("email", $user->user_email) // phpcs:ignore Squiz.NamingConventions.ValidVariableName.NotCamelCaps ->where('is_woocommerce_user', 1) ->findOne(); - expect($subscriber->deletedAt)->null(); + expect($subscriber->deletedAt)->notNull(); } - public function testItRemovesGuestCustomersFromTrash() { + public function testItDoesntRemoveGuestCustomersFromTrash() { $guest = $this->insertGuestCustomer(); $this->woocommerceSegment->synchronizeCustomers(); $subscriber = Subscriber::where("email", $guest['email']) @@ -296,7 +296,7 @@ class WooCommerceTest extends \MailPoetTest { $subscriber = Subscriber::where("email", $guest['email']) ->where('is_woocommerce_user', 1) ->findOne(); - expect($subscriber->deletedAt)->null(); + expect($subscriber->deletedAt)->notNull(); } public function testItRemovesOrphanedSubscribers() {