cleanup(); } public function testGetSubscribedSegments() { $segment1 = (new SegmentFactory())->create(); $segment2 = (new SegmentFactory())->create(); $subscriber = (new SubscriberFactory())->withSegments([$segment1, $segment2])->create(); $subscriberSegment1 = $subscriber->getSubscriberSegments()->first(); $this->assertInstanceOf(SubscriberSegmentEntity::class, $subscriberSegment1); $subscriberSegment1->setStatus(SubscriberEntity::STATUS_UNSUBSCRIBED); $this->entityManager->persist($subscriberSegment1); $this->entityManager->flush(); $subscriberSegment2 = $subscriber->getSubscriberSegments()->last(); $this->assertSame([1 => $subscriberSegment2], $subscriber->getSubscribedSegments()->toArray()); } protected function _after() { parent::_after(); $this->cleanup(); } protected function cleanup() { $this->truncateEntity(SegmentEntity::class); $this->truncateEntity(SubscriberEntity::class); $this->truncateEntity(SubscriberSegmentEntity::class); } }