public static function tearDownAfterClass()
 {
     // remove sample data
     commitDeleteObject(self::$objecta_id);
     commitDeleteObject(self::$objectb_id);
     commitDeleteObject(self::$objectc_id);
     commitDeleteObject(self::$objectd_id);
     commitReduceOPC(self::$objtypea_id, self::$objtypeb_id);
     commitReduceOPC(self::$objtypea_id, self::$objtypec_id);
     commitReduceOPC(self::$objtypeb_id, self::$objtypea_id);
     commitReduceOPC(self::$objtypeb_id, self::$objtypec_id);
     commitReduceOPC(self::$objtypec_id, self::$objtypea_id);
     commitReduceOPC(self::$objtypec_id, self::$objtypeb_id);
     usePreparedDeleteBlade('Dictionary', array('dict_key' => self::$objtypea_id));
     usePreparedDeleteBlade('Dictionary', array('dict_key' => self::$objtypeb_id));
     usePreparedDeleteBlade('Dictionary', array('dict_key' => self::$objtypec_id));
     usePreparedDeleteBlade('Dictionary', array('dict_key' => self::$objtyped_id));
     commitDeleteObject(self::$locationa_id);
     commitDeleteObject(self::$locationb_id);
     commitDeleteObject(self::$locationc_id);
     commitDeleteObject(self::$rowa_id);
     commitDeleteObject(self::$rowb_id);
     commitDeleteObject(self::$racka_id);
     commitDeleteObject(self::$rackb_id);
 }
 public static function tearDownAfterClass()
 {
     usePreparedExecuteBlade('SET foreign_key_checks=0');
     // remove sample locations
     usePreparedExecuteBlade('DELETE FROM Object WHERE id BETWEEN ? AND ?', array(self::$first_location_id, self::$last_location_id));
     usePreparedExecuteBlade("DELETE FROM EntityLink WHERE parent_entity_type='location' AND child_entity_type='location' " . 'AND ((parent_entity_id BETWEEN ? AND ?) OR (child_entity_id BETWEEN ? AND ?))', array(self::$first_location_id, self::$last_location_id, self::$first_location_id, self::$last_location_id));
     // remove sample objects
     usePreparedExecuteBlade('DELETE FROM Object WHERE id BETWEEN ? AND ?', array(self::$first_object_id, self::$last_object_id));
     usePreparedExecuteBlade("DELETE FROM EntityLink WHERE parent_entity_type='object' AND child_entity_type='object' " . 'AND ((parent_entity_id BETWEEN ? AND ?) OR (child_entity_id BETWEEN ? AND ?))', array(self::$first_object_id, self::$last_object_id, self::$first_object_id, self::$last_object_id));
     commitReduceOPC(self::$objtype_id, self::$objtype_id);
     usePreparedDeleteBlade('Dictionary', array('dict_key' => self::$objtype_id));
     // remove sample tags
     usePreparedExecuteBlade('DELETE FROM TagTree WHERE id BETWEEN ? AND ?', array(self::$first_tag_id, self::$last_tag_id));
 }