本文整理汇总了Python中corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL.get_transactions方法的典型用法代码示例。如果您正苦于以下问题:Python CaseAccessorSQL.get_transactions方法的具体用法?Python CaseAccessorSQL.get_transactions怎么用?Python CaseAccessorSQL.get_transactions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL
的用法示例。
在下文中一共展示了CaseAccessorSQL.get_transactions方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_edit_form_that_removes_ledgers
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def test_edit_form_that_removes_ledgers(self):
from corehq.apps.commtrack.tests.util import get_single_balance_block
form_id = uuid.uuid4().hex
submit_case_blocks([
get_single_balance_block(self.case.case_id, self.product_a._id, 100)],
DOMAIN,
form_id=form_id
)
self._assert_ledger_state(100)
transactions = CaseAccessorSQL.get_transactions(self.case.case_id)
self.assertEqual(2, len(transactions))
self.assertTrue(transactions[0].is_form_transaction)
self.assertTrue(transactions[1].is_form_transaction)
self.assertTrue(transactions[1].is_ledger_transaction)
submit_case_blocks([
CaseBlock(case_id=self.case.case_id).as_string().decode('utf-8')],
DOMAIN,
form_id=form_id
)
self._assert_ledger_state(0)
transactions = CaseAccessorSQL.get_transactions(self.case.case_id)
self.assertEqual(3, len(transactions))
self.assertTrue(transactions[0].is_form_transaction)
# ordering not guaranteed since they have the same date
self.assertTrue(transactions[1].is_form_transaction)
self.assertFalse(transactions[1].is_ledger_transaction) # no longer a ledger transaction
self.assertTrue(transactions[2].is_case_rebuild)
self._assert_transactions([])
示例2: test_get_transactions
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def test_get_transactions(self):
form_id = uuid.uuid4().hex
case = _create_case(form_id=form_id)
transactions = CaseAccessorSQL.get_transactions(case.case_id)
self.assertEqual(1, len(transactions))
self.assertEqual(form_id, transactions[0].form_id)
form_ids = _create_case_transactions(case)
transactions = CaseAccessorSQL.get_transactions(case.case_id)
self.assertEqual(6, len(transactions))
self.assertEqual([form_id] + form_ids, [t.form_id for t in transactions])
示例3: test_hard_delete_case
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [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))
示例4: test_save_case_update_transaction
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def test_save_case_update_transaction(self):
case = _create_case()
[transaction] = CaseAccessorSQL.get_transactions(case.case_id)
transaction.revoked = True
# hack to call the sql function with an already saved transaction
case.track_create(transaction)
with self.assertRaises(CaseSaveError):
CaseAccessorSQL.save_case(case)
示例5: test_ledger_update_with_case_update
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def test_ledger_update_with_case_update(self):
submit_case_blocks([
CaseBlock(case_id=self.case.case_id, update={'a': "1"}).as_string(),
BALANCE_BLOCK.format(
case_id=self.case.case_id,
product_id=self.product_a._id,
quantity=100
)],
DOMAIN
)
self._assert_ledger_state(100)
case = CaseAccessors(DOMAIN).get_case(self.case.case_id)
self.assertEqual("1", case.dynamic_case_properties()['a'])
if settings.TESTS_SHOULD_USE_SQL_BACKEND:
transactions = CaseAccessorSQL.get_transactions(self.case.case_id)
self.assertEqual(3, len(transactions))
self.assertEqual(CaseTransaction.TYPE_FORM, transactions[0].type)
# ordering not guaranteed since they have the same date
self.assertEqual(
{CaseTransaction.TYPE_FORM, CaseTransaction.TYPE_LEDGER},
{t.type for t in transactions[1:]}
)
示例6: transactions
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def transactions(self):
from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL
transactions = CaseAccessorSQL.get_transactions(self.case_id) if self.is_saved() else []
transactions += self.get_tracked_models_to_create(CaseTransaction)
return transactions
示例7: transactions
# 需要导入模块: from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL [as 别名]
# 或者: from corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL import get_transactions [as 别名]
def transactions(self):
from corehq.form_processor.backends.sql.dbaccessors import CaseAccessorSQL
return CaseAccessorSQL.get_transactions(self.case_id)