Skip to content

Commit d47cc77

Browse files
committed
#10521: Set correct Content-Type header for ajax responses in the Magento_UI module
1 parent 72524c4 commit d47cc77

File tree

1 file changed

+20
-2
lines changed
  • app/code/Magento/Ui/Test/Unit/Controller/Adminhtml/Index

1 file changed

+20
-2
lines changed

app/code/Magento/Ui/Test/Unit/Controller/Adminhtml/Index/RenderTest.php

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
*/
66
namespace Magento\Ui\Test\Unit\Controller\Adminhtml\Index;
77

8-
use \Magento\Ui\Controller\Adminhtml\Index\Render;
8+
use Magento\Ui\Controller\Adminhtml\Index\Render;
9+
use Magento\Ui\Model\UiComponentTypeResolver;
10+
use Magento\Framework\View\Element\UiComponent\ContextInterface;
911

1012
/**
1113
* Class RenderTest
@@ -32,6 +34,11 @@ class RenderTest extends \PHPUnit\Framework\TestCase
3234
*/
3335
protected $uiFactoryMock;
3436

37+
/**
38+
* @var \PHPUnit_Framework_MockObject_MockObject|UiComponentTypeResolver
39+
*/
40+
private $uiComponentTypeResolverMock;
41+
3542
protected function setUp()
3643
{
3744
$this->requestMock = $this->getMockBuilder(\Magento\Framework\App\Request\Http::class)
@@ -53,7 +60,11 @@ protected function setUp()
5360
$this->uiFactoryMock = $this->getMockBuilder(\Magento\Framework\View\Element\UiComponentFactory::class)
5461
->disableOriginalConstructor()
5562
->getMock();
56-
$this->render = new Render($contextMock, $this->uiFactoryMock);
63+
64+
$this->uiComponentTypeResolverMock = $this->getMockBuilder(UiComponentTypeResolver::class)
65+
->disableOriginalConstructor()
66+
->getMock();
67+
$this->render = new Render($contextMock, $this->uiFactoryMock, $this->uiComponentTypeResolverMock);
5768
}
5869

5970
public function testExecuteAjaxRequest()
@@ -84,15 +95,22 @@ public function testExecuteAjaxRequest()
8495
true,
8596
['render']
8697
);
98+
$contextMock = $this->createMock(ContextInterface::class);
99+
87100
$viewMock->expects($this->once())
88101
->method('render')
89102
->willReturn($renderedData);
90103
$viewMock->expects($this->once())
91104
->method('getChildComponents')
92105
->willReturn([]);
106+
$viewMock->expects($this->atLeastOnce())->method('getContext')->willReturn($contextMock);
93107
$this->uiFactoryMock->expects($this->once())
94108
->method('create')
95109
->willReturn($viewMock);
110+
$this->uiComponentTypeResolverMock->expects($this->once())->method('resolve')->with($contextMock)
111+
->willReturn('application/json');
112+
$this->responseMock->expects($this->once())->method('setHeader')
113+
->with('Content-Type', 'application/json', true);
96114

97115
$this->render->executeAjaxRequest();
98116
}

0 commit comments

Comments
 (0)