*/ abstract class ORMTableTest extends MediaWikiTestCase { /** * @since 1.21 * @return string */ protected abstract function getTableClass(); /** * @since 1.21 * @return IORMTable */ public function getTable() { $class = $this->getTableClass(); return $class::singleton(); } /** * @since 1.21 * @return string */ public function getRowClass() { return $this->getTable()->getRowClass(); } /** * @since 1.21 */ public function testSingleton() { $class = $this->getTableClass(); $this->assertInstanceOf( $class, $class::singleton() ); $this->assertTrue( $class::singleton() === $class::singleton() ); } }