当前位置: 首页>>代码示例>>Python>>正文


Python CaseAccessorSQL.get_transactions方法代码示例

本文整理汇总了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([])
开发者ID:dimagi,项目名称:commcare-hq,代码行数:36,代码来源:test_ledgers.py

示例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])
开发者ID:philipkaare,项目名称:commcare-hq,代码行数:14,代码来源:test_case_dbaccessor.py

示例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))
开发者ID:saketkanth,项目名称:commcare-hq,代码行数:33,代码来源:test_case_dbaccessor.py

示例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)
开发者ID:saketkanth,项目名称:commcare-hq,代码行数:13,代码来源:test_case_dbaccessor.py

示例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:]}
            )
开发者ID:ansarbek,项目名称:commcare-hq,代码行数:25,代码来源:test_ledgers.py

示例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
开发者ID:ansarbek,项目名称:commcare-hq,代码行数:7,代码来源:models.py

示例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)
开发者ID:bazuzi,项目名称:commcare-hq,代码行数:5,代码来源:models.py


注:本文中的corehq.form_processor.backends.sql.dbaccessors.CaseAccessorSQL.get_transactions方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。