/** * Ensures that the inlinecss directive will successfully load and inline CSS to HTML markup, * as well as supporting loading files from a theme fallback structure. * * @magentoDataFixture Magento/Store/_files/core_fixturestore.php * @magentoDataFixture Magento/Email/Model/_files/design/themes.php * @magentoAppIsolation enabled * @dataProvider inlinecssDirectiveDataProvider * * @param string $templateText * @param string $expectedOutput * @param bool $productionMode * @param bool $plainTemplateMode * @param bool $isChildTemplateMode */ public function testInlinecssDirective($templateText, $expectedOutput, $productionMode = false, $plainTemplateMode = false, $isChildTemplateMode = false) { $this->setUpDesignParams(); $this->_model->setPlainTemplateMode($plainTemplateMode); $this->_model->setIsChildTemplate($isChildTemplateMode); if ($productionMode) { \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\\Framework\\App\\State')->setMode(\Magento\Framework\App\State::MODE_PRODUCTION); } $this->assertContains($expectedOutput, $this->_model->filter($templateText)); }
/** * Ensures that the inlinecss directive will successfully load and inline CSS to HTML markup, * as well as supporting loading files from a theme fallback structure. * * @magentoDataFixture Magento/Store/_files/core_fixturestore.php * @magentoComponentsDir Magento/Email/Model/_files/design * @magentoAppIsolation enabled * @magentoDbIsolation enabled * @dataProvider inlinecssDirectiveDataProvider * * @param string $templateText * @param string $expectedOutput * @param bool $productionMode * @param bool $plainTemplateMode * @param bool $isChildTemplateMode */ public function testInlinecssDirective($templateText, $expectedOutput, $productionMode = false, $plainTemplateMode = false, $isChildTemplateMode = false) { /** @var \Magento\Theme\Model\Theme\Registration $registration */ $registration = $this->objectManager->get('Magento\\Theme\\Model\\Theme\\Registration'); $registration->register(); $this->setUpDesignParams(); $this->model->setPlainTemplateMode($plainTemplateMode); $this->model->setIsChildTemplate($isChildTemplateMode); $appMode = $productionMode ? State::MODE_PRODUCTION : State::MODE_DEVELOPER; $this->objectManager->get('Magento\\Framework\\App\\State')->setMode($appMode); $this->assertContains($expectedOutput, $this->model->filter($templateText)); }