scopeResolverMock = $this->getMockBuilder( \Magento\Framework\App\ScopeResolverInterface::class )->getMock(); $this->_object = $objectManager->getObject( \Magento\Framework\Url\ScopeResolver::class, ['scopeResolver' => $this->scopeResolverMock] ); } /** * @dataProvider getScopeDataProvider * @param int|null$scopeId */ public function testGetScope($scopeId) { $scopeMock = $this->getMockBuilder(\Magento\Framework\Url\ScopeInterface::class)->getMock(); $this->scopeResolverMock->expects( $this->at(0) )->method( 'getScope' )->with( $scopeId )->will( $this->returnValue($scopeMock) ); $this->_object->getScope($scopeId); } /** * @expectedException \Magento\Framework\Exception\LocalizedException * @expectedExceptionMessage The scope object is invalid. Verify the scope object and try again. */ public function testGetScopeException() { $this->_object->getScope(); } /** * @return array */ public function getScopeDataProvider() { return [[null], [1]]; } public function testGetScopes() { $this->scopeResolverMock->expects($this->once())->method('getScopes'); $this->_object->getScopes(); } }