示例#1
0
 /**
  * @covers DmMailer\Manager\Subscribe
  */
 protected function setUp()
 {
     $this->entityManagerMock = $this->getMockBuilder('Doctrine\\Orm\\EntityManager')->disableOriginalConstructor()->setMethods(['persist', 'flush'])->getMock();
     $this->requestMock = $this->getMockBuilder('Zend\\Http\\PhpEnvironment\\Request')->disableOriginalConstructor()->setMethods([])->getMock();
     $this->formMock = $this->getMockBuilder('DmMailer\\Form\\SubscribeForm')->disableOriginalConstructor()->setMethods(['getData', 'isValid', 'bind', 'build', 'setData'])->getMock();
     $this->sut = new Subscribe($this->entityManagerMock, $this->requestMock, null, $this->formMock);
     $this->messageRepoMock = $this->getMockBuilder('DmMailer\\Repository\\Message')->disableOriginalConstructor()->setMethods(['getSystemMessage'])->getMock();
     $this->sut->setMessageRepository($this->messageRepoMock);
     $this->subscriberMock = $this->getMockBuilder('DmMailer\\Entity\\Subscriber')->disableOriginalConstructor()->setMethods(['populate', 'addCampaign', 'hasCampaign'])->getMock();
     $this->campaignMock = $this->getMockBuilder('DmMailer\\Entity\\Campaign')->disableOriginalConstructor()->setMethods(['populate', 'getData', 'getId'])->getMock();
 }
示例#2
0
 /**
  * @param ServiceLocatorInterface $serviceLocator
  *
  * @return SubscribeManager
  */
 public function createService(ServiceLocatorInterface $serviceLocator)
 {
     /** @var EntityManager $entityManager */
     $entityManager = $serviceLocator->get('Doctrine\\ORM\\EntityManager');
     /** @var PhpRequest $request */
     $request = $serviceLocator->get('request');
     /** @var SubscribeForm $form */
     $form = $serviceLocator->get('DmMailer\\Form\\SubscribeForm');
     /** @var Paginator $paginatorFactory */
     $paginatorFactory = $serviceLocator->get('DmMailer\\Service\\Factory\\Paginator');
     $manager = new SubscribeManager($entityManager, $request, null, $form, $paginatorFactory);
     /** @var QueueItemRepository $queueItemRepository */
     $queueItemRepository = $serviceLocator->get('DmMailer\\Repository\\QueueItem');
     /** @var MessageRepository $messageRepository */
     $messageRepository = $serviceLocator->get('DmMailer\\Repository\\Message');
     $manager->setQueueItemRepository($queueItemRepository);
     $manager->setMessageRepository($messageRepository);
     return $manager;
 }