def add_item_and_cust_detail_to_req(req): req.add_item( request.ItemDetail(id=1, price=200000, name="Headset", quantity=1)) req.customer_details = request.CustomerDetails(first_name="Adam", last_name="Pahlevi", email="*****@*****.**", phone="0815623")
def test_bca_va(): req = request.ChargeBankTransfer( order_id="ORD-1234", gross_amount=500000, bank=banks.BCA ) req.customer_details = request.CustomerDetails( email="*****@*****.**", first_name="Adam", last_name="Pahlevi", phone="0856071748" ) req.add_item(request.ItemDetail( id="ITEM-1", price=200000, quantity=5, name="Ayam Bakar" )) req.add_item(request.ItemDetail( id="ITEM-2", price=300000, quantity=8, name="Bubur Ayam" )) req.va_number = "1111" req.add_bca_inquiry_texts(indonesian_text="Indonesian", english_text="English") req.add_bca_payment_text(indonesian_text="Indonesian", english_text="English") serialized_req = {'payment_type': 'bank_transfer', 'transaction_details': {'order_id': 'ORD-1234', 'gross_amount': 500000}, 'bank_transfer': {'va_number': '1111', 'free_text': {'inquiry':[{'en': 'English', 'id': 'Indonesian'}], 'payment': [{'en': 'English', 'id': 'Indonesian'}]}, 'bank': 'bca'}, 'item_details': [ {'price': 200000.0, 'id': 'ITEM-1', 'name': 'Ayam Bakar', 'quantity': 5}, {'price': 300000.0, 'id': 'ITEM-2', 'name': 'Bubur Ayam', 'quantity': 8} ], 'customer_details': {'phone': '0856071748', 'first_name': 'Adam', 'last_name': 'Pahlevi', 'email': '*****@*****.**'}} assert req.serialize() == serialized_req
def test_credit_card_complete_body(): req = get_request() req.add_item(request.ItemDetail( id="ITEM-1", price=200000, quantity=5, name="Ayam Bakar" )) req.customer_details = request.CustomerDetails( first_name="Ivana", last_name="Jessica", email="*****@*****.**", phone="08127323", billing_address=request.CustAddress( first_name="Ivana", last_name="Jessica", email="*****@*****.**", phone="08237132", address="Jalan Beton", city="Jakarta", postal_code="61177", country_code="IDN" ), shipping_address=request.CustAddress( first_name="Budi", last_name="Utomo", email="*****@*****.**", phone="081128371", address="Sudirman", city="Bandung", postal_code="61155", country_code="IDN" ) ) serialized_req = {'credit_card': {'token_id': 'MY-TOKEN'}, 'transaction_details': {'order_id': 'ORD-129', 'gross_amount': 100000}, 'payment_type': 'credit_card', 'item_details': [ {'price': 200000.0, 'id': 'ITEM-1', 'name': 'Ayam Bakar', 'quantity': 5}], 'customer_details': {'first_name': 'Ivana', 'last_name': 'Jessica', 'phone': '08127323', 'billing_address': {'city': 'Jakarta', 'first_name': 'Ivana', 'last_name': 'Jessica', 'phone': '08237132', 'postcode': '61177', 'country_code': 'IDN', 'address': 'Jalan Beton', 'email': '*****@*****.**'}, 'shipping_address': {'city': 'Bandung', 'first_name': 'Budi', 'last_name': 'Utomo', 'phone': '081128371', 'postcode': '61155', 'country_code': 'IDN', 'address': 'Sudirman', 'email': '*****@*****.**'}, 'email': '*****@*****.**'}} assert req.serialize() == serialized_req
def test_mandiri_bill(): req = request.ChargeMandiriBill( order_id="ORD-4821", gross_amount=200000 ) req.add_item(request.ItemDetail( id="ITEM-1", price=200000, quantity=5, name="Ayam Bakar" )) serialized_req = {'transaction_details': {'order_id': 'ORD-4821', 'gross_amount': 200000}, 'payment_type': 'echannel', 'item_details': [{'price': 200000.0, 'id': 'ITEM-1', 'name': 'Ayam Bakar', 'quantity': 5}]} print req.serialize() assert req.serialize() == serialized_req
def test_snap_complete_body(): req = make_request() time = datetime.now() req.set_expiry_time(5, "day", time) req.add_item( request.ItemDetail(id="ITEM-1", price=200000, quantity=5, name="Ayam Bakar")) req.customer_details = request.CustomerDetails( first_name="Ivana", last_name="Jessica", email="*****@*****.**", phone="08127323", billing_address=request.CustAddress(first_name="Ivana", last_name="Jessica", email="*****@*****.**", phone="08237132", address="Jalan Beton", city="Jakarta", postal_code="61177", country_code="IDN"), shipping_address=request.CustAddress(first_name="Budi", last_name="Utomo", email="*****@*****.**", phone="081128371", address="Sudirman", city="Bandung", postal_code="61155", country_code="IDN")) req.whitelist_bins = ["48111", "45555"] req.secure = True req.channel = "migs" req.bank = "bca" req.set_installment(is_forced=True, bni_terms=[3, 6, 12], mandiri_terms=[3, 6, 12], cimb_terms=[3], bca_terms=[3, 6, 12], offline_terms=[6, 12]) serialized_req = { 'credit_card': { 'installment': { 'required': True, 'terms': { 'offline': [6, 12], 'cimb': [3], 'bni': [3, 6, 12], 'mandiri': [3, 6, 12], 'bca': [3, 6, 12] } }, 'whitelist_bins': ['48111', '45555'], 'secure': True, 'channel': 'migs' }, 'transaction_details': { 'order_id': 'ORD-SNP291', 'gross_amount': 200000 }, 'item_details': [{ 'price': 200000.0, 'id': 'ITEM-1', 'name': 'Ayam Bakar', 'quantity': 5 }], 'expiry': { 'duration': 5, 'start_time': exp_time(time), 'unit': 'day' }, 'customer_details': { 'first_name': 'Ivana', 'last_name': 'Jessica', 'phone': '08127323', 'billing_address': { 'city': 'Jakarta', 'first_name': 'Ivana', 'last_name': 'Jessica', 'phone': '08237132', 'postcode': '61177', 'country_code': 'IDN', 'address': 'Jalan Beton', 'email': '*****@*****.**' }, 'shipping_address': { 'city': 'Bandung', 'first_name': 'Budi', 'last_name': 'Utomo', 'phone': '081128371', 'postcode': '61155', 'country_code': 'IDN', 'address': 'Sudirman', 'email': '*****@*****.**' }, 'email': '*****@*****.**' } } assert req.serialize() == serialized_req