/**
  * @expectedException \eZ\Publish\Core\IO\Exception\BinaryFileNotFoundException
  */
 public function testLoadNotFound()
 {
     $statement = $this->createDbalStatementMock();
     $statement->expects($this->once())->method('rowCount')->will($this->returnValue(0));
     $this->dbalMock->expects($this->once())->method('prepare')->with($this->anything())->will($this->returnValue($statement));
     $this->handler->load('prefix/my/file.png');
 }
 /**
  * @covers ::load
  */
 public function testLoadWithoutExchangeRateProviders()
 {
     $sourceCurrencyCode = 'foo';
     $destinationCurrencyCode = 'bar';
     $this->sut->expects($this->atLeastOnce())->method('getExchangeRateProviders')->willReturn([]);
     $this->assertnull($this->sut->load($sourceCurrencyCode, $destinationCurrencyCode));
 }
 public function testLoad()
 {
     $translator = $this->getMockBuilder('Symfony\\Component\\Translation\\TranslatorInterface')->disableOriginalConstructor()->getMockForAbstractClass();
     $container = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\ContainerInterface')->disableOriginalConstructor()->setMethods(array('get'))->getMockForAbstractClass();
     $container->expects($this->once())->method('get')->with('translator')->will($this->returnValue($translator));
     $objectManager = $this->getMockBuilder('Doctrine\\Common\\Persistence\\ObjectManager')->disableOriginalConstructor()->getMockForAbstractClass();
     $this->fixture->expects($this->once())->method('loadEntities')->with($objectManager);
     $this->fixture->setContainer($container);
     $this->fixture->load($objectManager);
     $this->assertAttributeEquals($translator, 'translator', $this->fixture);
 }
 /**
  * Ensure that the template_styles variable contains styles from either <!--@styles @--> or the "Template Styles"
  * textarea in backend, depending on whether template was loaded from filesystem or DB.
  *
  * @magentoDataFixture Magento/Store/_files/core_fixturestore.php
  * @magentoComponentsDir Magento/Email/Model/_files/design
  * @magentoAppIsolation enabled
  * @magentoDbIsolation enabled
  * @dataProvider templateStylesVariableDataProvider
  *
  * @param string $area
  * @param string $expectedOutput
  * @param array $unexpectedOutputs
  * @param array $templateForDatabase
  */
 public function testTemplateStylesVariable($area, $expectedOutput, $unexpectedOutputs, $templateForDatabase = [])
 {
     if (count($templateForDatabase)) {
         $this->mockModel();
         $this->setUpThemeFallback($area);
         $template = $this->objectManager->create('Magento\\Email\\Model\\Template');
         $template->setData($templateForDatabase);
         $template->save();
         $templateId = $template->getId();
         $this->model->load($templateId);
     } else {
         // <!--@styles @--> parsing only via the loadDefault method. Since email template files won't contain
         // @styles comments by default, it is necessary to mock an object to return testable contents
         $themeDirectory = $this->getMockBuilder('Magento\\Framework\\Filesystem\\Directory\\ReadInterface')->disableOriginalConstructor()->setMethods(['readFile'])->getMockForAbstractClass();
         $themeDirectory->expects($this->once())->method('readFile')->will($this->returnValue('<!--@styles p { color: #111; } @--> {{var template_styles}}'));
         $filesystem = $this->getMockBuilder('\\Magento\\Framework\\Filesystem')->disableOriginalConstructor()->setMethods(['getDirectoryRead'])->getMock();
         $filesystem->expects($this->once())->method('getDirectoryRead')->with(DirectoryList::ROOT)->will($this->returnValue($themeDirectory));
         $this->mockModel($filesystem);
         $this->model->loadDefault('design_email_header_template');
     }
     $processedTemplate = $this->model->getProcessedTemplate();
     foreach ($unexpectedOutputs as $unexpectedOutput) {
         $this->assertNotContains($unexpectedOutput, $processedTemplate);
     }
     $this->assertContains($expectedOutput, $processedTemplate);
 }
Example #5
0
 public function testGetCurrentUrl()
 {
     $this->model->load('admin');
     $this->model->expects($this->any())->method('getUrl')->will($this->returnValue('http://localhost/index.php'));
     $this->assertStringEndsWith('default', $this->model->getCurrentUrl());
     $this->assertStringEndsNotWith('default', $this->model->getCurrentUrl(false));
 }
Example #6
0
 public function testIsCanDelete()
 {
     $this->assertFalse($this->_model->isCanDelete());
     $this->_model->load(1);
     $this->assertFalse($this->_model->isCanDelete());
     $this->_model->setId(100);
     $this->assertTrue($this->_model->isCanDelete());
 }
Example #7
0
 /**
  * Ensure that the template_styles variable contains styles from either <!--@styles @--> or the "Template Styles"
  * textarea in backend, depending on whether template was loaded from filesystem or DB.
  *
  * @magentoDataFixture Magento/Store/_files/core_fixturestore.php
  * @magentoDataFixture Magento/Email/Model/_files/design/themes.php
  * @magentoAppIsolation enabled
  * @dataProvider templateStylesVariableDataProvider
  *
  * @param string $area
  * @param string $expectedOutput
  * @param array $unexpectedOutputs
  * @param array $templateForDatabase
  */
 public function testTemplateStylesVariable($area, $expectedOutput, $unexpectedOutputs, $templateForDatabase = [])
 {
     $this->_mockModel($this->_getMockedFilesystem());
     $this->setUpThemeFallback($area);
     if (count($templateForDatabase)) {
         $template = $this->_objectManager->create('Magento\\Email\\Model\\Template');
         $template->setData($templateForDatabase);
         $template->save();
         $templateId = $template->getId();
         $this->_model->load($templateId);
     } else {
         // <!--@styles @--> parsing only happens when template is loaded from filesystem
         $this->_model->loadDefault('design_email_header_template');
     }
     $processedTemplate = $this->_model->getProcessedTemplate();
     foreach ($unexpectedOutputs as $unexpectedOutput) {
         $this->assertNotContains($unexpectedOutput, $processedTemplate);
     }
     $this->assertContains($expectedOutput, $processedTemplate);
 }
 /**
  * @param $indexId
  */
 protected function loadIndexer($indexId)
 {
     $this->configMock->expects($this->once())->method('getIndexer')->with($indexId)->will($this->returnValue($this->getIndexerData()));
     $this->model->load($indexId);
 }
 /**
  * @expectedException \eZ\Publish\Core\IO\Exception\BinaryFileNotFoundException
  */
 public function testLoadNotFound()
 {
     $this->filesystem->expects($this->once())->method('getMetadata')->with('prefix/my/file.png')->will($this->throwException(new FileNotFoundException('prefix/my/file.png')));
     $this->handler->load('prefix/my/file.png');
 }
 /**
  * Test if the load() method returns the NULL for an invalid primary key.
  *
  * @return null
  */
 public function testLoadWithInvalidPrimaryKey()
 {
     $this->assertNull($this->service->load('invalidPrimaryKey'));
 }