Skip to content

Commit b1cd594

Browse files
authored
Merge branch 'develop' into PB-1145
2 parents e3c2d52 + 9490049 commit b1cd594

File tree

6 files changed

+88
-10
lines changed

6 files changed

+88
-10
lines changed

app/code/Magento/PageBuilder/Plugin/Filter/TemplatePlugin.php

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77

88
namespace Magento\PageBuilder\Plugin\Filter;
99

10+
use Magento\PageBuilder\Model\Filter\Template as TemplateFilter;
11+
use Magento\Framework\Filter\Template as FrameworkTemplateFilter;
12+
1013
/**
1114
* Plugin to the template filter to process any background images added by Page Builder
1215
*/
@@ -17,30 +20,30 @@ class TemplatePlugin
1720
const HTML_CONTENT_TYPE_PATTERN = '/data-content-type="html"/si';
1821

1922
/**
20-
* @var \Magento\PageBuilder\Model\Filter\Template
23+
* @var TemplateFilter
2124
*/
2225
private $templateFilter;
2326

2427
/**
25-
* @param \Magento\PageBuilder\Model\Filter\Template $templateFilter
28+
* @param TemplateFilter $templateFilter
2629
*/
2730
public function __construct(
28-
\Magento\PageBuilder\Model\Filter\Template $templateFilter
31+
TemplateFilter $templateFilter
2932
) {
3033
$this->templateFilter = $templateFilter;
3134
}
3235

3336
/**
3437
* After filter of template data apply transformations
3538
*
36-
* @param \Magento\Framework\Filter\Template $subject
39+
* @param FrameworkTemplateFilter $subject
3740
* @param string $result
3841
*
3942
* @return string
4043
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
4144
*/
42-
public function afterFilter(\Magento\Framework\Filter\Template $subject, string $result) : string
45+
public function afterFilter(FrameworkTemplateFilter $subject, $result)
4346
{
44-
return $this->templateFilter->filter($result);
47+
return $this->templateFilter->filter((string) $result);
4548
}
4649
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
10+
<actionGroup name="AdminValidateContentTextInTinyMCEIFrameActionGroup">
11+
<arguments>
12+
<argument name="text" type="string" defaultValue="{{PageBuilderSlideItemContent_Slide1.value}}"/>
13+
</arguments>
14+
<waitForElementVisible selector="{{SlideOnConfigurationPanel.contentTinyMCEIFrame}}" stepKey="waitForIFrame"/>
15+
<executeJS function="jQuery('{{ContentManagementSection.configurationPopupContent}}').scrollTop(jQuery('{{SlideOnConfigurationPanel.contentTinyMCEIFrame}}').offset().top)" stepKey="expectedColumnSizeRatio"/>
16+
<switchToIFrame selector="{{SlideOnConfigurationPanel.contentTinyMCEIFrame}}" stepKey="switchToIFrame"/>
17+
<see selector="body" userInput="{{text}}" stepKey="seeText"/>
18+
<switchToIFrame stepKey="exitIFrame"/>
19+
</actionGroup>
20+
</actionGroups>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderSliderSection/SlideOnConfigurationPanelSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,6 @@
1212
<element name="tinyMCEIFrame" type="text" selector="pagebuilder_slide_form_content_ifr"/>
1313
<element name="tinyMCEIFrameMobile" type="text" selector="pagebuilder_slide_mobile_form_content_ifr"/>
1414
<element name="textInIFrame" type="text" selector="//body//p[.='{{text}}']" parameterized="true"/>
15+
<element name="contentTinyMCEIFrame" type="text" selector="#pagebuilder_slide_form_content_ifr"/>
1516
</section>
1617
</sections>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderStoreConfigurationSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,6 @@
3636
<element name="ColumnGridMaxHelperText" type="text" selector="#row_cms_pagebuilder_column_grid_max .value .note span"/>
3737
<element name="UseSystem" type="input" selector="[name='groups[pagebuilder][fields][{{arg1}}][inherit]']" parameterized="true"/>
3838
<element name="UseSystemChecked" type="input" selector="[name='groups[pagebuilder][fields][{{arg1}}][inherit]']:checked" parameterized="true"/>
39+
<element name="configurationPopupContent" type="text" selector=".pagebuilder_modal_form_pagebuilder_modal_form_modal .modal-inner-wrap"/>
3940
</section>
4041
</sections>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderSlideItemAppearancePosterTest/SlideItemPosterCanInlineEditContentWhenIn25PercentWidthColumnTest.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,7 @@
8787
<actionGroup ref="openPageBuilderEditPanelSmallByIndex" stepKey="openEditMenuOnStage">
8888
<argument name="section" value="SlideOnBackend"/>
8989
</actionGroup>
90-
<actionGroup ref="validateTextInTinyMCE" stepKey="seeMessageText">
91-
<argument name="property" value="PageBuilderSlideItemContent_Slide1"/>
92-
<argument name="section" value="SlideOnConfigurationPanel"/>
93-
</actionGroup>
90+
<actionGroup ref="AdminValidateContentTextInTinyMCEIFrameActionGroup" stepKey="seeMessageText"/>
9491
<actionGroup ref="closeEditPanelSettings" stepKey="closeEditPanelSettings2"/>
9592
<actionGroup ref="exitPageBuilderFullScreen" stepKey="exitPageBuilderFullScreen"/>
9693
<actionGroup ref="SaveAndContinueEditCmsPageActionGroup" stepKey="saveAndContinueEditCmsPage"/>
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
namespace Magento\PageBuilder\Test\Unit\Plugin\Filter;
9+
10+
use Magento\PageBuilder\Model\Filter\Template as TemplateFilter;
11+
use Magento\Framework\Filter\Template as FrameworkTemplateFilter;
12+
use Magento\PageBuilder\Plugin\Filter\TemplatePlugin;
13+
use PHPUnit\Framework\MockObject\MockObject;
14+
use PHPUnit\Framework\TestCase;
15+
16+
/**
17+
* Test for page builder template filter plugin
18+
*/
19+
class TemplatePluginTest extends TestCase
20+
{
21+
/**
22+
* @var FrameworkTemplateFilter|MockObject
23+
*/
24+
private $frameworkTemplateFilter;
25+
26+
/**
27+
* @var TemplateFilter|MockObject
28+
*/
29+
private $templateFilter;
30+
31+
/**
32+
* @var TemplatePlugin
33+
*/
34+
private $templatePlugin;
35+
36+
/**
37+
* @inheritDoc
38+
*/
39+
protected function setUp(): void
40+
{
41+
parent::setUp();
42+
$this->frameworkTemplateFilter = $this->createMock(FrameworkTemplateFilter::class);
43+
$this->templateFilter = $this->createMock(TemplateFilter::class);
44+
$this->templatePlugin = new TemplatePlugin($this->templateFilter);
45+
}
46+
47+
public function testAfterFilter(): void
48+
{
49+
$result = null;
50+
$this->templateFilter->expects($this->once())
51+
->method('filter')
52+
->with('')
53+
->willReturn('');
54+
$this->assertSame('', $this->templatePlugin->afterFilter($this->frameworkTemplateFilter, $result));
55+
}
56+
}

0 commit comments

Comments
 (0)