public function testTryToGetDataValueFormatterForNonDispatchableDataValueThrowsException() { $dataValueFormatter = $this->getMockBuilder('\\SMW\\DataValues\\ValueFormatters\\DataValueFormatter')->disableOriginalConstructor()->getMockForAbstractClass(); $dataValueFormatter->expects($this->once())->method('isFormatterFor')->will($this->returnValue(false)); $dataValue = $this->getMockBuilder('\\SMWDataValue')->disableOriginalConstructor()->getMockForAbstractClass(); $instance = new DispatchingDataValueFormatter(); $instance->addDataValueFormatter($dataValueFormatter); $this->setExpectedException('RuntimeException'); $instance->getDataValueFormatterFor($dataValue); }
private function newDispatchingDataValueFormatter() { $dispatchingDataValueFormatter = new DispatchingDataValueFormatter(); $dispatchingDataValueFormatter->addDataValueFormatter(new ReferenceValueFormatter()); $dispatchingDataValueFormatter->addDataValueFormatter(new MonolingualTextValueFormatter()); $dispatchingDataValueFormatter->addDataValueFormatter(new CodeStringValueFormatter()); // To be checked only after DispatchingDataValueFormatter::addDataValueFormatter did // not match any previous registered DataValueFormatters $dispatchingDataValueFormatter->addDefaultDataValueFormatter(new PropertyValueFormatter()); $dispatchingDataValueFormatter->addDefaultDataValueFormatter(new StringValueFormatter()); $dispatchingDataValueFormatter->addDefaultDataValueFormatter(new NumberValueFormatter()); $dispatchingDataValueFormatter->addDefaultDataValueFormatter(new TimeValueFormatter()); $dispatchingDataValueFormatter->addDefaultDataValueFormatter(new NoValueFormatter()); return $dispatchingDataValueFormatter; }