"""Functional tests for Payment Entity Payoneer Program.""" from tests.utils.factories import PaymentEntityPayoneerProgramFactory, \ ReferencePayoneerProgramFactory def test_get_by_payment_entity(reference_payment_entity_fixture, fixture_client): """Test that we can get the correct record for payment entity.""" payoneer_program = ReferencePayoneerProgramFactory.create() payment_entity_payoneer_program = PaymentEntityPayoneerProgramFactory.create( payoneer_program_id=payoneer_program.payoneer_program_id, reference_payment_entity_id=6, ) url_id = 6 response = fixture_client.get( f'/payment-entity/{url_id}/payment-entity-payoneer-program' ) res_json = response.json assert response.status_code == 200 assert res_json['total_count'] == 1 assert res_json['items'][0] == { 'payment_entity_payoneer_program_id': payment_entity_payoneer_program.payment_entity_payoneer_program_id, 'payoneer_program_id': payment_entity_payoneer_program.payoneer_program_id, 'reference_payment_entity_id': payment_entity_payoneer_program.reference_payment_entity_id, 'payment_currency': payment_entity_payoneer_program.payment_currency, 'agreement_type_id': payment_entity_payoneer_program.agreement_type_id } def test_get_payment_entity_payoneer_programs_list( fixture_client, payoneer_programs_fixture ): """Test to get payoneer programs list.""" response = fixture_client.get( '/payment-entity-payoneer-programs/?limit=10&offset=0' ) assert response.status_code == 200 assert response.json['total_count'] == 7 assert response.json['items'] == [{ 'agreement_type': None, 'reference_agreement_type_id': None, 'payment_currency': None, 'reference_payment_entity_id': 1, 'payoneer_program_id': None, 'reference_payment_type_id': None, 'payment_service': None, }, { 'agreement_type': None, 'payment_currency': None, 'payoneer_program_id': None, 'reference_agreement_type_id': None, 'reference_payment_entity_id': 2, 'reference_payment_type_id': None, 'payment_service': None, }, { 'agreement_type': None, 'payment_currency': None, 'payoneer_program_id': None, 'reference_agreement_type_id': None, 'reference_payment_entity_id': 3, 'reference_payment_type_id': None, 'payment_service': None, }, { 'agreement_type': None, 'payment_currency': None, 'payoneer_program_id': None, 'reference_agreement_type_id': None, 'reference_payment_entity_id': 4, 'reference_payment_type_id': None, 'payment_service': None, }, { 'agreement_type': 'AWAL Core', 'reference_agreement_type_id': '1', 'payment_currency': 'GBP', 'reference_payment_entity_id': 5, 'payoneer_program_id': 10017819, 'reference_payment_type_id': 7, 'payment_service': 'service', }, { 'agreement_type': 'AWAL Core', 'reference_agreement_type_id': '1', 'payment_currency': 'USD', 'reference_payment_entity_id': 6, 'payoneer_program_id': 10017820, 'reference_payment_type_id': 7, 'payment_service': 'service', }, { 'agreement_type': 'AWAL Core', 'reference_agreement_type_id': '1', 'payment_currency': 'EUR', 'reference_payment_entity_id': 8, 'payoneer_program_id': 10017820, 'reference_payment_type_id': 7, 'payment_service': 'service', }]