Files
saladeaula.digital/api.saladeaula.digital/tests/routes/orders/test_payment_retries.py

39 lines
1.1 KiB
Python

from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
from ...conftest import HttpApiProxy, LambdaContext
def test_payment_retries(
app,
seeds,
http_api_proxy: HttpApiProxy,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
):
r = app.lambda_handler(
http_api_proxy(
raw_path='/orders/4b23f6f5-5377-476b-b1de-79427c0295f6/payment-retries',
method=HTTPMethod.POST,
body={
'invoice_id': '123',
'credit_card': {
'holder_name': 'Sergio R Siqueira',
'number': '4111111111111111',
'exp_month': '01',
'exp_year': '2026',
'cvv': '123',
},
'installments': 3,
},
),
lambda_context,
)
assert r['statusCode'] == HTTPStatus.CREATED
r = dynamodb_persistence_layer.collection.get_item(
KeyPair('4b23f6f5-5377-476b-b1de-79427c0295f6', 'TRANSACTION')
)
assert r['credit_card']['number'] == '4111111111111111'