objectManagerHelper = new ObjectManager($this); $this->builderMock = $this->getMockBuilder( \Magento\Framework\View\Model\PageLayout\Config\BuilderInterface::class )->disableOriginalConstructor() ->setMethods(['getPageLayoutsConfig']) ->getMock(); $this->pageLayoutConfigMock = $this->getMockBuilder(\Magento\Framework\View\PageLayout\Config::class) ->disableOriginalConstructor() ->setMethods(['getOptions']) ->getMock(); $this->builderMock->expects($this->any()) ->method('getPageLayoutsConfig') ->willReturn($this->pageLayoutConfigMock); $this->object = $this->objectManagerHelper->getObject($this->getSourceClassName(), [ 'pageLayoutBuilder' => $this->builderMock, ]); } /** * @return string */ protected function getSourceClassName() { return \Magento\Cms\Model\Page\Source\PageLayout::class; } /** * @param array $options * @param array $expected * @return void * @dataProvider getOptionsDataProvider */ public function testToOptionArray(array $options, array $expected) { $this->pageLayoutConfigMock->expects($this->once()) ->method('getOptions') ->willReturn($options); $this->assertSame($expected, $this->object->toOptionArray()); } /** * @return array */ public function getOptionsDataProvider() { return [ [ [], [], ], [ ['testStatus' => 'testValue'], [['label' => 'testValue', 'value' => 'testStatus']], ], ]; } }