Use method createOrUpdate from SegmentRepository in tests

[MAILPOET-3167]
This commit is contained in:
Jan Lysý
2020-12-03 15:44:52 +01:00
committed by Veljko V
parent 79abec8f13
commit 83cb272555
7 changed files with 53 additions and 74 deletions

View File

@ -13,14 +13,18 @@ class SegmentSubscribersRepositoryTest extends \MailPoetTest {
/** @var SegmentSubscribersRepository */
private $repository;
/** @var SegmentsRepository */
private $segmentRepository;
public function _before() {
parent::_before();
$this->segmentRepository = $this->diContainer->get(SegmentsRepository::class);
$this->repository = $this->diContainer->get(SegmentSubscribersRepository::class);
$this->cleanup();
}
public function testItReturnsOnlySubscribedSubscribersForStaticSegment() {
$segment = $this->createSegmentEntity();
$segment = $this->segmentRepository->createOrUpdate('Segment' . rand(0, 10000));
$this->createSubscriberEntity(); // Subscriber without segment
@ -103,12 +107,6 @@ class SegmentSubscribersRepositoryTest extends \MailPoetTest {
return $subscriber;
}
private function createSegmentEntity(): SegmentEntity {
$segment = new SegmentEntity('Segment' . rand(0, 10000), SegmentEntity::TYPE_DEFAULT, 'Segment description');
$this->entityManager->persist($segment);
return $segment;
}
private function createSubscriberSegmentEntity(SegmentEntity $segment, SubscriberEntity $subscriber): SubscriberSegmentEntity {
$subscriberSegment = new SubscriberSegmentEntity($segment, $subscriber, SubscriberEntity::STATUS_SUBSCRIBED);
$this->entityManager->persist($subscriberSegment);