function testTypedDelete() { $foo = new FooOneTableTestObject(); $foo->setTitle('Some title'); $foo->save(); $bar = new BarFooOneTableTestObject(); $bar->setTitle('Another title'); $bar->save(); lmbActiveRecord::delete('BarFooOneTableTestObject'); //removing subclass $rs = lmbActiveRecord::find('BarFooOneTableTestObject'); $this->assertEqual($rs->count(), 0); $rs = lmbActiveRecord::find('FooOneTableTestObject'); //supertype stays $this->assertEqual($rs->count(), 1); lmbActiveRecord::delete('FooOneTableTestObject'); //removing supertype $rs = lmbActiveRecord::find('FooOneTableTestObject'); $this->assertEqual($rs->count(), 0); }
function testParentDeleteAllDeletesChildren() { $person = $this->creator->initPerson(); $number = $this->creator->initSocialSecurity(); $person->setSocialSecurity($number); $person_id = $person->save(); $number_id = $number->getId(); //this one should stay $untouched_number = $this->creator->initSocialSecurity(); $untouched_number->save(); lmbActiveRecord::delete('PersonForTest'); $this->assertNull(lmbActiveRecord::findFirst('SocialSecurityForTest', array('criteria' => lmbActiveRecord::getDefaultConnection()->quoteIdentifier("id") . '= ' . $number_id))); $this->assertNull(lmbActiveRecord::findFirst('PersonForTest', array('criteria' => lmbActiveRecord::getDefaultConnection()->quoteIdentifier("id") . '= ' . $person_id))); $number2 = lmbActiveRecord::findById('SocialSecurityForTest', $untouched_number->getId()); $this->assertEqual($number2->getCode(), $untouched_number->getCode()); }
function testDeleteByCriteria() { $object1 = $this->creator->createOneTableObject(); $object2 = $this->creator->createOneTableObject(); $criteria = new lmbSQLFieldCriteria('id', $object2->getId()); lmbActiveRecord::delete('TestOneTableObject', $criteria); $this->assertEqual($this->db->count('test_one_table_object'), 1); $found = lmbActiveRecord::findById('TestOneTableObject', $object1->getId()); $this->assertEqual($found->getContent(), $object1->getContent()); }
function _cleanUp() { lmbActiveRecord::delete('ObjectForTesting'); }
protected function _removeRelatedRecords() { lmbActiveRecord::delete($this->relation_info['class'], new lmbSQLFieldCriteria($this->relation_info['field'], $this->owner->getId()), $this->conn); }
function _cleanUp() { lmbActiveRecord::delete('CourseForTest'); }