/** * Tests DataObject::hasOwnTableDatabaseField */ public function testHasOwnTableDatabaseFieldWithVersioned() { $noversion = new DataObject(); $versioned = new VersionedTest_DataObject(); $versionedSub = new VersionedTest_Subclass(); $versionField = new VersionedTest_UnversionedWithField(); $this->assertFalse((bool) $noversion->hasOwnTableDatabaseField('Version'), 'Plain models have no version field.'); $this->assertEquals('Int', $versioned->hasOwnTableDatabaseField('Version'), 'The versioned ext adds an Int version field.'); $this->assertEquals('Int', $versionedSub->hasOwnTableDatabaseField('Version'), 'Sub-classes of a versioned model have a Version field.'); $this->assertEquals('Varchar', $versionField->hasOwnTableDatabaseField('Version'), 'Models w/o Versioned can have their own Version field.'); }
/** * Handle the wilson rating specially * * @param type $field * @return string */ public function hasOwnTableDatabaseField($field) { if ($field == 'WilsonRating') { return "Double"; } if ($field == 'ActiveRating') { return "Int"; } if ($field == 'PositiveRating') { return "Int"; } return parent::hasOwnTableDatabaseField($field); }