本文整理汇总了Python中corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL.hard_delete_cases方法的典型用法代码示例。如果您正苦于以下问题:Python CaseAccessorSQL.hard_delete_cases方法的具体用法?Python CaseAccessorSQL.hard_delete_cases怎么用?Python CaseAccessorSQL.hard_delete_cases使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL
的用法示例。
在下文中一共展示了CaseAccessorSQL.hard_delete_cases方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_hard_delete_case
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def test_hard_delete_case(self):
case1 = _create_case()
case2 = _create_case(domain='other_domain')
self.addCleanup(lambda: CaseAccessorSQL.hard_delete_cases('other_domain', [case2.case_id]))
case1.track_create(CommCareCaseIndexSQL(
case=case1,
identifier='parent',
referenced_type='mother',
referenced_id=uuid.uuid4().hex,
relationship_id=CommCareCaseIndexSQL.CHILD
))
case1.track_create(CaseAttachmentSQL(
case=case1,
attachment_id=uuid.uuid4().hex,
name='pic.jpg',
content_type='image/jpeg',
blob_id='122',
md5='123',
identifier='pic.jpg',
))
CaseAccessorSQL.save_case(case1)
num_deleted = CaseAccessorSQL.hard_delete_cases(DOMAIN, [case1.case_id, case2.case_id])
self.assertEqual(1, num_deleted)
with self.assertRaises(CaseNotFound):
CaseAccessorSQL.get_case(case1.case_id)
self.assertEqual([], CaseAccessorSQL.get_indices(case1.domain, case1.case_id))
self.assertEqual([], CaseAccessorSQL.get_attachments(case1.case_id))
self.assertEqual([], CaseAccessorSQL.get_transactions(case1.case_id))
示例2: tearDownClass
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def tearDownClass(cls):
CaseAccessorSQL.hard_delete_cases(
cls.domain,
cls.created_case_ids
)
cls.domain_obj.delete()
super(BaseICDSTest, cls).tearDownClass()
示例3: create_case
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def create_case(domain, case_type, **kwargs):
case = CaseFactory(domain).create_case(case_type=case_type, **kwargs)
try:
yield case
finally:
if should_use_sql_backend(domain):
CaseAccessorSQL.hard_delete_cases(domain, [case.case_id])
else:
case.delete()
示例4: _test_process_doc_from_sql
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def _test_process_doc_from_sql(self, datetime_mock):
datetime_mock.utcnow.return_value = self.fake_time_now
sample_doc, expected_indicators = get_sample_doc_and_indicators(self.fake_time_now)
since = self.pillow.get_change_feed().get_latest_offsets()
# save case to DB - should also publish to kafka
case = _save_sql_case(sample_doc)
# run pillow and check changes
self.pillow.process_changes(since=since, forever=False)
self._check_sample_doc_state(expected_indicators)
CaseAccessorSQL.hard_delete_cases(case.domain, [case.case_id])
示例5: _with_case
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def _with_case(domain, case_type, last_modified):
with drop_connected_signals(case_post_save):
case = CaseFactory(domain).create_case(case_type=case_type)
_update_case(domain, case.case_id, last_modified)
accessors = CaseAccessors(domain)
case = accessors.get_case(case.case_id)
try:
yield case
finally:
if should_use_sql_backend(domain):
CaseAccessorSQL.hard_delete_cases(domain, [case.case_id])
else:
case.delete()
示例6: create_test_case
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def create_test_case(domain, case_type, case_name, case_properties=None, drop_signals=True,
case_id=None, owner_id=None, user_id=None):
from corehq.apps.sms.tasks import delete_phone_numbers_for_owners
from corehq.apps.reminders.tasks import delete_reminders_for_cases
from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL
from corehq.form_processor.utils.general import should_use_sql_backend
case = create_and_save_a_case(domain, case_id or uuid.uuid4().hex, case_name,
case_properties=case_properties, case_type=case_type, drop_signals=drop_signals,
owner_id=owner_id, user_id=user_id)
try:
yield case
finally:
delete_phone_numbers_for_owners([case.case_id])
delete_reminders_for_cases(domain, [case.case_id])
if should_use_sql_backend(domain):
CaseAccessorSQL.hard_delete_cases(domain, [case.case_id])
else:
case.delete()
示例7: _delete_cases
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def _delete_cases(self, cases):
for case in cases:
CaseAccessorSQL.hard_delete_cases(case.domain, [case.case_id])
示例8: hard_delete_case_and_forms
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import hard_delete_cases [as 别名]
def hard_delete_case_and_forms(cls, domain, case, xforms):
form_ids = [xform.form_id for xform in xforms]
FormAccessorSQL.hard_delete_forms(domain, form_ids)
CaseAccessorSQL.hard_delete_cases(domain, [case.case_id])