get(\Magento\Framework\App\State::class) ->setAreaCode('frontend'); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\View\DesignInterface::class )->setDesignTheme( 'Magento/blank' ); } protected function setUp() { $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( \Magento\Framework\Translate\Inline::class ); $this->state = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\Translate\Inline\StateInterface::class ); /* Called getConfig as workaround for setConfig bug */ \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Store\Model\StoreManagerInterface::class )->getStore( $this->_storeId )->getConfig( 'dev/translate_inline/active' ); \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\App\Config\MutableScopeConfigInterface::class )->setValue( 'dev/translate_inline/active', true, \Magento\Store\Model\ScopeInterface::SCOPE_STORE, $this->_storeId ); } public function testIsAllowed() { $this->assertTrue($this->_model->isAllowed()); $this->assertTrue($this->_model->isAllowed($this->_storeId)); $this->assertTrue( $this->_model->isAllowed( \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Store\Model\StoreManagerInterface::class )->getStore( $this->_storeId ) ) ); $this->state->suspend(); $this->assertFalse($this->_model->isAllowed()); $this->assertFalse($this->_model->isAllowed($this->_storeId)); $this->assertFalse( $this->_model->isAllowed( \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Store\Model\StoreManagerInterface::class )->getStore( $this->_storeId ) ) ); } /** * @param string $originalText * @param string $expectedText * @dataProvider processResponseBodyDataProvider */ public function testProcessResponseBody($originalText, $expectedText) { $actualText = $originalText; $this->_model->processResponseBody($actualText, false); $this->markTestIncomplete('Bug MAGE-2494'); $expected = new \DOMDocument(); $expected->preserveWhiteSpace = false; $expected->loadHTML($expectedText); $actual = new \DOMDocument(); $actual->preserveWhiteSpace = false; $actual->loadHTML($actualText); $this->assertEquals($expected, $actual); } /** * @return array */ public function processResponseBodyDataProvider() { $originalText = file_get_contents(__DIR__ . '/_files/_inline_page_original.html'); $expectedText = file_get_contents(__DIR__ . '/_files/_inline_page_expected.html'); $package = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\View\DesignInterface::class )->getDesignTheme()->getPackageCode(); $expectedText = str_replace('{{design_package}}', $package, $expectedText); return [ 'plain text' => ['text with no translations and tags', 'text with no translations and tags'], 'html string' => [$originalText, $expectedText], 'html array' => [[$originalText], [$expectedText]] ]; } }