public function setUp()
 {
     parent::setUp();
     $subscriptionModel = new Subscription();
     $subscriptionModel->setSubscriptionId(1)->setNewsletterId(1)->setSubscriberId(1);
     $subscriptions = [$subscriptionModel];
     $subscriber = new SubscriberModel();
     $subscriber->setSubscriberId(1)->setEmail('*****@*****.**')->setName('Joe Bloggs')->setSubscriptions($subscriptions);
     $subscriberMapperMock = $this->getMock('UthandoNewsletter\\Mapper\\Subscriber');
     $subscriberMapperMock->expects($this->any())->method('getById')->willReturn($subscriber);
     $subscriberMapperMock->expects($this->any())->method('getByEmail')->willReturn($subscriber);
     $subscriberMapperMock->expects($this->any())->method('getPrimaryKey')->willReturn('subscriberId');
     $subscriberMapperMock->expects($this->any())->method('delete')->willReturn(1);
     $this->serviceManager->get('UthandoMapperManager')->setAllowOverride(true);
     $this->serviceManager->get('UthandoMapperManager')->setService('UthandoNewsletterSubscriber', $subscriberMapperMock);
     $subscriptionServiceMock = $this->getMock('UthandoNewsletter\\Service\\Subscription');
     $subscriptionServiceMock->expects($this->any())->method('getSubscriptionsBySubscriberId')->willReturn($subscriptions);
     $subscriptionServiceMock->expects($this->any())->method('delete')->willReturn(1);
     $this->serviceManager->get('UthandoServiceManager')->setAllowOverride(true);
     $this->serviceManager->get('UthandoServiceManager')->setService('UthandoNewsletterSubscription', $subscriptionServiceMock);
     $newsletterModel = new Newsletter();
     $newsletterModel->setNewsletterId(1);
     $newsletterServiceMock = $this->getMock('UthandoNewsletter\\Service\\Newsletter');
     $newsletterServiceMock->expects($this->any())->method('fetchAll')->willReturn([$newsletterModel]);
     $this->serviceManager->get('UthandoServiceManager')->setService('UthandoNewsletter', $newsletterServiceMock);
 }
 public function testGetNewsletters()
 {
     $model = new Newsletter();
     $model->setNewsletterId(1)->setName('Test');
     $mapperMock = $this->getMockBuilder('UthandoNewsletter\\Mapper\\Newsletter')->disableOriginalConstructor()->getMock();
     $serviceManagerMock = $this->getMockBuilder('UthandoCommon\\Service\\ServiceManager')->disableOriginalConstructor()->getMock();
     $mapperMock->expects($this->once())->method('fetchAll')->will($this->returnValue(array($model)));
     $serviceManagerMock->expects($this->once())->method('get')->with('UthandoNewsletter')->will($this->returnValue($mapperMock));
     $this->serviceManager->setAllowOverride(true);
     $this->serviceManager->setService('UthandoServiceManager', $serviceManagerMock);
     /* @var $form NewsletterList */
     $form = $this->serviceManager->get('FormElementManager')->get('UthandoNewsLetterList');
     $this->assertSame([1 => 'Test'], $form->getValueOptions());
 }
 public function testToggleVisible()
 {
     $model = new NewsletterModel();
     $model->setNewsletterId(1)->setDescription('Test newsletter')->setName('Test')->setVisible(true);
     $newsletterMapperMock = $this->getMock('UthandoNewsletter\\Mapper\\Newsletter');
     $newsletterMapperMock->expects($this->once())->method('update')->willReturn(1);
     $newsletterMapperMock->expects($this->once())->method('getPrimaryKey')->willReturn('newsletterId');
     $newsletterMapperMock->expects($this->once())->method('getById')->willReturn($model);
     $this->serviceManager->get('UthandoMapperManager')->setAllowOverride(true);
     $this->serviceManager->get('UthandoMapperManager')->setService('UthandoNewsletter', $newsletterMapperMock);
     /* @var Newsletter $service */
     $service = $this->serviceManager->get('UthandoServiceManager')->get('UthandoNewsletter');
     $service->setUseCache(false);
     $result = $service->toggleVisible($model);
     $this->assertSame(1, $result);
 }
 public function testSetGetNewsletterid()
 {
     $this->model->setNewsletterId(1);
     $this->assertSame(1, $this->model->getNewsletterId());
 }