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());
 }
Exemplo n.º 3
0
 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');
 }