"""Unit tests for Ledger Adjustment Adjustment Detail model.""" from ledger.models.ledger_adjustment_adjustment_detail import ( LedgerAdjustmentAdjustmentDetail, ) from tests.utils.factories import ( LedgerAdjustmentDetailFactory, LedgerAdjustmentFactory, ReferenceAdjustmentTypeFactory, ) def test_create_adjustment_adjustment_detail(mock_event_fixtures): """Test to create a Ledger Adjustment Adjustment Detail.""" assert len(LedgerAdjustmentAdjustmentDetail.query.all()) == 0 adjustment_type = ReferenceAdjustmentTypeFactory.create() ledger_adjustment = LedgerAdjustmentFactory.create() adjustment_detail_1 = LedgerAdjustmentDetailFactory.create( reference_adjustment_type=adjustment_type ) adjustment_detail_2 = LedgerAdjustmentDetailFactory.create( reference_adjustment_type=adjustment_type ) LedgerAdjustmentAdjustmentDetail.create( ledger_adjustment_id=ledger_adjustment.ledger_adjustment_id, ledger_adjustment_detail_id=adjustment_detail_1.ledger_adjustment_detail_id, detail_count=11, ) LedgerAdjustmentAdjustmentDetail.create( ledger_adjustment_id=ledger_adjustment.ledger_adjustment_id, ledger_adjustment_detail_id=adjustment_detail_2.ledger_adjustment_detail_id, detail_count=20, ) records = LedgerAdjustmentAdjustmentDetail.query.all() assert len(records) == 2 assert records[0].ledger_adjustment_adjustment_detail_id == 1 assert records[1].ledger_adjustment_adjustment_detail_id == 2 assert ledger_adjustment.ledger_adjustment_adjustment_detail == records assert adjustment_detail_1.ledger_adjustment_adjustment_detail == [records[0]] assert adjustment_detail_2.ledger_adjustment_adjustment_detail == [records[1]] assert all( [ record.ledger_adjustment_detail in [adjustment_detail_1, adjustment_detail_2] and record.ledger_adjustment == ledger_adjustment for record in records ] )