/** * @dataProvider parameterDataProvider */ public function testRunJobOnMockStore($parameters, $expected) { $title = Title::newFromText(__METHOD__); $expectedToRun = $expected['spos'] === null ? $this->never() : $this->once(); $store = $this->getMockBuilder('\\SMW\\Store')->disableOriginalConstructor()->setMethods(array('refreshData'))->getMockForAbstractClass(); $store->expects($expectedToRun)->method('refreshData')->will($this->returnCallback(array($this, 'refreshDataCallback'))); $this->applicationFactory->registerObject('Store', $store); $instance = new RefreshJob($title, $parameters); $instance->setJobQueueEnabledState(false); $this->assertTrue($instance->run()); $this->assertEquals($expected['progress'], $instance->getProgress(), "Asserts that the getProgress() returns {$expected['progress']}"); $this->assertEquals($expected['spos'], $this->controlRefreshDataIndex, "Asserts that the refreshData() received a spos {$expected['spos']}"); unset($this->controlRefreshDataIndex); }
/** * @dataProvider parameterDataProvider */ public function testRunJobOnMockStore($parameters, $expected) { $title = Title::newFromText(__METHOD__); $expectedToRun = $expected['spos'] === null ? $this->once() : $this->once(); $byIdDataRebuildDispatcher = $this->getMockBuilder('\\SMW\\SQLStore\\ByIdDataRebuildDispatcher')->disableOriginalConstructor()->getMock(); $byIdDataRebuildDispatcher->expects($this->any())->method('dispatchRebuildFor')->will($this->returnValue($parameters['spos'])); $store = $this->getMockBuilder('\\SMW\\Store')->setMethods(array('refreshData'))->getMockForAbstractClass(); $store->expects($expectedToRun)->method('refreshData')->will($this->returnValue($byIdDataRebuildDispatcher)); $this->applicationFactory->registerObject('Store', $store); $instance = new RefreshJob($title, $parameters); $instance->setJobQueueEnabledState(false); $this->assertTrue($instance->run()); $this->assertEquals($expected['progress'], $instance->getProgress(), "Asserts that the getProgress() returns {$expected['progress']}"); }