/** * @dataProvider initPageDataProvider */ public function testInitPage($url, array $params, $use_url_builder) { $this->expectPageUrlAnnotation($url, $params); /* @var $page Page */ $page = m::mock($this->pageClass); $urlBuilder = m::mock(self::URL_BUILDER_INTERFACE); $this->realFactory->setUrlBuilderFactory($this->urlBuilderFactory); $this->urlBuilderFactory->shouldReceive('getUrlBuilder')->with($url, $params, 'http://domain.tld')->times(isset($url) ? 1 : 0)->andReturn($urlBuilder); $page->shouldReceive('setUrlBuilder')->times($use_url_builder ? 1 : 0)->andReturn($page); $this->assertSame($this->realFactory, $this->realFactory->initPage($page)); }