markTestSkippedIfExtensionNotLoaded( 'WikibaseClient' ); $this->mathProperty = new NumericPropertyId( 'P' . DummyPropertyDataTypeLookup::$mathId ); $this->otherProperty = new NumericPropertyId( 'P' . ( DummyPropertyDataTypeLookup::$mathId + 1 ) ); } public function testNoMath() { $matcher = new PropertyDataTypeMatcher( new DummyPropertyDataTypeLookup() ); $updater = new MathDataUpdater( $matcher ); $statement = new Statement( new PropertyNoValueSnak( $this->otherProperty ) ); $updater->processStatement( $statement ); $parserOutput = $this->getMockBuilder( ParserOutput::class )->onlyMethods( [ 'addModules', 'addModuleStyles', ] )->getMock(); $parserOutput->expects( $this->never() )->method( 'addModules' ); $parserOutput->expects( $this->never() )->method( 'addModuleStyles' ); /** @var ParserOutput $parserOutput */ $updater->updateParserOutput( $parserOutput ); } public function testMath() { $matcher = new PropertyDataTypeMatcher( new DummyPropertyDataTypeLookup() ); $updater = new MathDataUpdater( $matcher ); $statement = new Statement( new PropertyNoValueSnak( $this->mathProperty ) ); $updater->processStatement( $statement ); $parserOutput = $this->getMockBuilder( ParserOutput::class )->onlyMethods( [ 'addModules', 'addModuleStyles', ] )->getMock(); $parserOutput->expects( $this->once() )->method( 'addModules' ); $parserOutput->expects( $this->once() )->method( 'addModuleStyles' ); /** @var ParserOutput $parserOutput */ $updater->updateParserOutput( $parserOutput ); } }