dodopayments 1.34.0__tar.gz → 1.34.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of dodopayments might be problematic. Click here for more details.
- dodopayments-1.34.2/.release-please-manifest.json +3 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/CHANGELOG.md +21 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/PKG-INFO +54 -2
- {dodopayments-1.34.0 → dodopayments-1.34.2}/README.md +50 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/pyproject.toml +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/requirements-dev.lock +27 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/requirements.lock +27 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/__init__.py +2 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_base_client.py +22 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_version.py +1 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/customers/test_customer_portal.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/invoices/test_payments.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/products/test_images.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_addons.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_brands.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_customers.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_discounts.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_disputes.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_license_key_instances.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_license_keys.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_licenses.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_misc.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_payments.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_payouts.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_products.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_refunds.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_subscriptions.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_webhook_events.py +3 -1
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/conftest.py +34 -5
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_client.py +2 -0
- dodopayments-1.34.0/.release-please-manifest.json +0 -3
- {dodopayments-1.34.0 → dodopayments-1.34.2}/.gitignore +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/CONTRIBUTING.md +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/LICENSE +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/SECURITY.md +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/api.md +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/bin/check-release-environment +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/bin/publish-pypi +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/examples/.keep +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/mypy.ini +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/noxfile.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/release-please-config.json +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodo_payments/lib/.keep +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_client.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_compat.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_constants.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_exceptions.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_files.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_models.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_qs.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_resource.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_streaming.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_types.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_logs.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_proxy.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_reflection.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_resources_proxy.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_streams.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_sync.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_transform.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_typing.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/_utils/_utils.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/lib/.keep +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/pagination.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/py.typed +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/addons.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/brands.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/customers/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/customers/customer_portal.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/customers/customers.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/discounts.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/disputes.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/invoices/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/invoices/invoices.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/invoices/payments.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/license_key_instances.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/license_keys.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/licenses.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/misc.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/payments.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/payouts.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/products/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/products/images.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/products/products.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/refunds.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/subscriptions.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/resources/webhook_events.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_cart_response_item.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_update_images_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/addon_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/attach_existing_customer_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/billing_address.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/billing_address_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_create_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_retrieve_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_update_images_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/brand_update_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/country_code.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/create_new_customer_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/currency.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_limited_details.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_portal_session.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_request_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customer_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customers/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/customers/customer_portal_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/discount.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/discount_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/discount_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/discount_type.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/discount_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute_retrieve_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute_stage.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/dispute_status.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/intent_status.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/invoices/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_activate_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_deactivate_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_duration.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_duration_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_instance.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_instance_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_instance_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_status.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_key_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_validate_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/license_validate_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/misc_list_supported_countries_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/one_time_product_cart_item.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/one_time_product_cart_item_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment_create_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payment_retrieve_line_items_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payout_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/payout_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/price.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/price_param.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_update_files_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_update_files_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/product_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/products/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/products/image_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/products/image_update_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/refund.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/refund_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/refund_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/refund_status.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_change_plan_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_charge_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_charge_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_create_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_create_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_list_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_status.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/subscription_update_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/tax_category.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/time_interval.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/webhook_event.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/src/dodopayments/types/webhook_event_list_params.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/customers/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/invoices/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/products/__init__.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/sample_file.txt +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_deepcopy.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_extract_files.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_files.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_models.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_qs.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_required_args.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_response.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_streaming.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_transform.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_utils/test_proxy.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/test_utils/test_typing.py +0 -0
- {dodopayments-1.34.0 → dodopayments-1.34.2}/tests/utils.py +0 -0
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.34.2 (2025-06-24)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v1.34.1...v1.34.2](https://github.com/dodopayments/dodopayments-python/compare/v1.34.1...v1.34.2)
|
|
6
|
+
|
|
7
|
+
### Chores
|
|
8
|
+
|
|
9
|
+
* **tests:** skip some failing tests on the latest python versions ([ec77a0f](https://github.com/dodopayments/dodopayments-python/commit/ec77a0f9130b51d4992d18ad59260a9ac35456e6))
|
|
10
|
+
|
|
11
|
+
## 1.34.1 (2025-06-21)
|
|
12
|
+
|
|
13
|
+
Full Changelog: [v1.34.0...v1.34.1](https://github.com/dodopayments/dodopayments-python/compare/v1.34.0...v1.34.1)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **client:** add support for aiohttp ([ff6068c](https://github.com/dodopayments/dodopayments-python/commit/ff6068c83742a492bd78888312976d79df35c34d))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Documentation
|
|
21
|
+
|
|
22
|
+
* **client:** fix httpx.Timeout documentation reference ([21e4aef](https://github.com/dodopayments/dodopayments-python/commit/21e4aef206be5ab337a2682c0833b2e850df1043))
|
|
23
|
+
|
|
3
24
|
## 1.34.0 (2025-06-18)
|
|
4
25
|
|
|
5
26
|
Full Changelog: [v1.32.0...v1.34.0](https://github.com/dodopayments/dodopayments-python/compare/v1.32.0...v1.34.0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: dodopayments
|
|
3
|
-
Version: 1.34.
|
|
3
|
+
Version: 1.34.2
|
|
4
4
|
Summary: The official Python library for the Dodo Payments API
|
|
5
5
|
Project-URL: Homepage, https://github.com/dodopayments/dodopayments-python
|
|
6
6
|
Project-URL: Repository, https://github.com/dodopayments/dodopayments-python
|
|
@@ -27,6 +27,9 @@ Requires-Dist: httpx<1,>=0.23.0
|
|
|
27
27
|
Requires-Dist: pydantic<3,>=1.9.0
|
|
28
28
|
Requires-Dist: sniffio
|
|
29
29
|
Requires-Dist: typing-extensions<5,>=4.10
|
|
30
|
+
Provides-Extra: aiohttp
|
|
31
|
+
Requires-Dist: aiohttp; extra == 'aiohttp'
|
|
32
|
+
Requires-Dist: httpx-aiohttp>=0.1.6; extra == 'aiohttp'
|
|
30
33
|
Description-Content-Type: text/markdown
|
|
31
34
|
|
|
32
35
|
# Dodo Payments Python API library
|
|
@@ -129,6 +132,55 @@ asyncio.run(main())
|
|
|
129
132
|
|
|
130
133
|
Functionality between the synchronous and asynchronous clients is otherwise identical.
|
|
131
134
|
|
|
135
|
+
### With aiohttp
|
|
136
|
+
|
|
137
|
+
By default, the async client uses `httpx` for HTTP requests. However, for improved concurrency performance you may also use `aiohttp` as the HTTP backend.
|
|
138
|
+
|
|
139
|
+
You can enable this by installing `aiohttp`:
|
|
140
|
+
|
|
141
|
+
```sh
|
|
142
|
+
# install from PyPI
|
|
143
|
+
pip install dodopayments[aiohttp]
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
|
|
147
|
+
|
|
148
|
+
```python
|
|
149
|
+
import os
|
|
150
|
+
import asyncio
|
|
151
|
+
from dodopayments import DefaultAioHttpClient
|
|
152
|
+
from dodopayments import AsyncDodoPayments
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
async def main() -> None:
|
|
156
|
+
async with AsyncDodoPayments(
|
|
157
|
+
bearer_token=os.environ.get(
|
|
158
|
+
"DODO_PAYMENTS_API_KEY"
|
|
159
|
+
), # This is the default and can be omitted
|
|
160
|
+
http_client=DefaultAioHttpClient(),
|
|
161
|
+
) as client:
|
|
162
|
+
payment = await client.payments.create(
|
|
163
|
+
billing={
|
|
164
|
+
"city": "city",
|
|
165
|
+
"country": "AF",
|
|
166
|
+
"state": "state",
|
|
167
|
+
"street": "street",
|
|
168
|
+
"zipcode": "zipcode",
|
|
169
|
+
},
|
|
170
|
+
customer={"customer_id": "customer_id"},
|
|
171
|
+
product_cart=[
|
|
172
|
+
{
|
|
173
|
+
"product_id": "product_id",
|
|
174
|
+
"quantity": 0,
|
|
175
|
+
}
|
|
176
|
+
],
|
|
177
|
+
)
|
|
178
|
+
print(payment.payment_id)
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
asyncio.run(main())
|
|
182
|
+
```
|
|
183
|
+
|
|
132
184
|
## Using types
|
|
133
185
|
|
|
134
186
|
Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
|
|
@@ -322,7 +374,7 @@ client.with_options(max_retries=5).payments.create(
|
|
|
322
374
|
### Timeouts
|
|
323
375
|
|
|
324
376
|
By default requests time out after 1 minute. You can configure this with a `timeout` option,
|
|
325
|
-
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/#fine-tuning-the-configuration) object:
|
|
377
|
+
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/timeouts/#fine-tuning-the-configuration) object:
|
|
326
378
|
|
|
327
379
|
```python
|
|
328
380
|
from dodopayments import DodoPayments
|
|
@@ -98,6 +98,55 @@ asyncio.run(main())
|
|
|
98
98
|
|
|
99
99
|
Functionality between the synchronous and asynchronous clients is otherwise identical.
|
|
100
100
|
|
|
101
|
+
### With aiohttp
|
|
102
|
+
|
|
103
|
+
By default, the async client uses `httpx` for HTTP requests. However, for improved concurrency performance you may also use `aiohttp` as the HTTP backend.
|
|
104
|
+
|
|
105
|
+
You can enable this by installing `aiohttp`:
|
|
106
|
+
|
|
107
|
+
```sh
|
|
108
|
+
# install from PyPI
|
|
109
|
+
pip install dodopayments[aiohttp]
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
import os
|
|
116
|
+
import asyncio
|
|
117
|
+
from dodopayments import DefaultAioHttpClient
|
|
118
|
+
from dodopayments import AsyncDodoPayments
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
async def main() -> None:
|
|
122
|
+
async with AsyncDodoPayments(
|
|
123
|
+
bearer_token=os.environ.get(
|
|
124
|
+
"DODO_PAYMENTS_API_KEY"
|
|
125
|
+
), # This is the default and can be omitted
|
|
126
|
+
http_client=DefaultAioHttpClient(),
|
|
127
|
+
) as client:
|
|
128
|
+
payment = await client.payments.create(
|
|
129
|
+
billing={
|
|
130
|
+
"city": "city",
|
|
131
|
+
"country": "AF",
|
|
132
|
+
"state": "state",
|
|
133
|
+
"street": "street",
|
|
134
|
+
"zipcode": "zipcode",
|
|
135
|
+
},
|
|
136
|
+
customer={"customer_id": "customer_id"},
|
|
137
|
+
product_cart=[
|
|
138
|
+
{
|
|
139
|
+
"product_id": "product_id",
|
|
140
|
+
"quantity": 0,
|
|
141
|
+
}
|
|
142
|
+
],
|
|
143
|
+
)
|
|
144
|
+
print(payment.payment_id)
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
asyncio.run(main())
|
|
148
|
+
```
|
|
149
|
+
|
|
101
150
|
## Using types
|
|
102
151
|
|
|
103
152
|
Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
|
|
@@ -291,7 +340,7 @@ client.with_options(max_retries=5).payments.create(
|
|
|
291
340
|
### Timeouts
|
|
292
341
|
|
|
293
342
|
By default requests time out after 1 minute. You can configure this with a `timeout` option,
|
|
294
|
-
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/#fine-tuning-the-configuration) object:
|
|
343
|
+
which accepts a float or an [`httpx.Timeout`](https://www.python-httpx.org/advanced/timeouts/#fine-tuning-the-configuration) object:
|
|
295
344
|
|
|
296
345
|
```python
|
|
297
346
|
from dodopayments import DodoPayments
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "dodopayments"
|
|
3
|
-
version = "1.34.
|
|
3
|
+
version = "1.34.2"
|
|
4
4
|
description = "The official Python library for the Dodo Payments API"
|
|
5
5
|
dynamic = ["readme"]
|
|
6
6
|
license = "Apache-2.0"
|
|
@@ -37,6 +37,8 @@ classifiers = [
|
|
|
37
37
|
Homepage = "https://github.com/dodopayments/dodopayments-python"
|
|
38
38
|
Repository = "https://github.com/dodopayments/dodopayments-python"
|
|
39
39
|
|
|
40
|
+
[project.optional-dependencies]
|
|
41
|
+
aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.6"]
|
|
40
42
|
|
|
41
43
|
[tool.rye]
|
|
42
44
|
managed = true
|
|
@@ -10,6 +10,13 @@
|
|
|
10
10
|
# universal: false
|
|
11
11
|
|
|
12
12
|
-e file:.
|
|
13
|
+
aiohappyeyeballs==2.6.1
|
|
14
|
+
# via aiohttp
|
|
15
|
+
aiohttp==3.12.8
|
|
16
|
+
# via dodopayments
|
|
17
|
+
# via httpx-aiohttp
|
|
18
|
+
aiosignal==1.3.2
|
|
19
|
+
# via aiohttp
|
|
13
20
|
annotated-types==0.6.0
|
|
14
21
|
# via pydantic
|
|
15
22
|
anyio==4.4.0
|
|
@@ -17,6 +24,10 @@ anyio==4.4.0
|
|
|
17
24
|
# via httpx
|
|
18
25
|
argcomplete==3.1.2
|
|
19
26
|
# via nox
|
|
27
|
+
async-timeout==5.0.1
|
|
28
|
+
# via aiohttp
|
|
29
|
+
attrs==25.3.0
|
|
30
|
+
# via aiohttp
|
|
20
31
|
certifi==2023.7.22
|
|
21
32
|
# via httpcore
|
|
22
33
|
# via httpx
|
|
@@ -34,16 +45,23 @@ execnet==2.1.1
|
|
|
34
45
|
# via pytest-xdist
|
|
35
46
|
filelock==3.12.4
|
|
36
47
|
# via virtualenv
|
|
48
|
+
frozenlist==1.6.2
|
|
49
|
+
# via aiohttp
|
|
50
|
+
# via aiosignal
|
|
37
51
|
h11==0.14.0
|
|
38
52
|
# via httpcore
|
|
39
53
|
httpcore==1.0.2
|
|
40
54
|
# via httpx
|
|
41
55
|
httpx==0.28.1
|
|
42
56
|
# via dodopayments
|
|
57
|
+
# via httpx-aiohttp
|
|
43
58
|
# via respx
|
|
59
|
+
httpx-aiohttp==0.1.6
|
|
60
|
+
# via dodopayments
|
|
44
61
|
idna==3.4
|
|
45
62
|
# via anyio
|
|
46
63
|
# via httpx
|
|
64
|
+
# via yarl
|
|
47
65
|
importlib-metadata==7.0.0
|
|
48
66
|
iniconfig==2.0.0
|
|
49
67
|
# via pytest
|
|
@@ -51,6 +69,9 @@ markdown-it-py==3.0.0
|
|
|
51
69
|
# via rich
|
|
52
70
|
mdurl==0.1.2
|
|
53
71
|
# via markdown-it-py
|
|
72
|
+
multidict==6.4.4
|
|
73
|
+
# via aiohttp
|
|
74
|
+
# via yarl
|
|
54
75
|
mypy==1.14.1
|
|
55
76
|
mypy-extensions==1.0.0
|
|
56
77
|
# via mypy
|
|
@@ -65,6 +86,9 @@ platformdirs==3.11.0
|
|
|
65
86
|
# via virtualenv
|
|
66
87
|
pluggy==1.5.0
|
|
67
88
|
# via pytest
|
|
89
|
+
propcache==0.3.1
|
|
90
|
+
# via aiohttp
|
|
91
|
+
# via yarl
|
|
68
92
|
pydantic==2.10.3
|
|
69
93
|
# via dodopayments
|
|
70
94
|
pydantic-core==2.27.1
|
|
@@ -98,11 +122,14 @@ tomli==2.0.2
|
|
|
98
122
|
typing-extensions==4.12.2
|
|
99
123
|
# via anyio
|
|
100
124
|
# via dodopayments
|
|
125
|
+
# via multidict
|
|
101
126
|
# via mypy
|
|
102
127
|
# via pydantic
|
|
103
128
|
# via pydantic-core
|
|
104
129
|
# via pyright
|
|
105
130
|
virtualenv==20.24.5
|
|
106
131
|
# via nox
|
|
132
|
+
yarl==1.20.0
|
|
133
|
+
# via aiohttp
|
|
107
134
|
zipp==3.17.0
|
|
108
135
|
# via importlib-metadata
|
|
@@ -10,11 +10,22 @@
|
|
|
10
10
|
# universal: false
|
|
11
11
|
|
|
12
12
|
-e file:.
|
|
13
|
+
aiohappyeyeballs==2.6.1
|
|
14
|
+
# via aiohttp
|
|
15
|
+
aiohttp==3.12.8
|
|
16
|
+
# via dodopayments
|
|
17
|
+
# via httpx-aiohttp
|
|
18
|
+
aiosignal==1.3.2
|
|
19
|
+
# via aiohttp
|
|
13
20
|
annotated-types==0.6.0
|
|
14
21
|
# via pydantic
|
|
15
22
|
anyio==4.4.0
|
|
16
23
|
# via dodopayments
|
|
17
24
|
# via httpx
|
|
25
|
+
async-timeout==5.0.1
|
|
26
|
+
# via aiohttp
|
|
27
|
+
attrs==25.3.0
|
|
28
|
+
# via aiohttp
|
|
18
29
|
certifi==2023.7.22
|
|
19
30
|
# via httpcore
|
|
20
31
|
# via httpx
|
|
@@ -22,15 +33,28 @@ distro==1.8.0
|
|
|
22
33
|
# via dodopayments
|
|
23
34
|
exceptiongroup==1.2.2
|
|
24
35
|
# via anyio
|
|
36
|
+
frozenlist==1.6.2
|
|
37
|
+
# via aiohttp
|
|
38
|
+
# via aiosignal
|
|
25
39
|
h11==0.14.0
|
|
26
40
|
# via httpcore
|
|
27
41
|
httpcore==1.0.2
|
|
28
42
|
# via httpx
|
|
29
43
|
httpx==0.28.1
|
|
30
44
|
# via dodopayments
|
|
45
|
+
# via httpx-aiohttp
|
|
46
|
+
httpx-aiohttp==0.1.6
|
|
47
|
+
# via dodopayments
|
|
31
48
|
idna==3.4
|
|
32
49
|
# via anyio
|
|
33
50
|
# via httpx
|
|
51
|
+
# via yarl
|
|
52
|
+
multidict==6.4.4
|
|
53
|
+
# via aiohttp
|
|
54
|
+
# via yarl
|
|
55
|
+
propcache==0.3.1
|
|
56
|
+
# via aiohttp
|
|
57
|
+
# via yarl
|
|
34
58
|
pydantic==2.10.3
|
|
35
59
|
# via dodopayments
|
|
36
60
|
pydantic-core==2.27.1
|
|
@@ -41,5 +65,8 @@ sniffio==1.3.0
|
|
|
41
65
|
typing-extensions==4.12.2
|
|
42
66
|
# via anyio
|
|
43
67
|
# via dodopayments
|
|
68
|
+
# via multidict
|
|
44
69
|
# via pydantic
|
|
45
70
|
# via pydantic-core
|
|
71
|
+
yarl==1.20.0
|
|
72
|
+
# via aiohttp
|
|
@@ -37,7 +37,7 @@ from ._exceptions import (
|
|
|
37
37
|
UnprocessableEntityError,
|
|
38
38
|
APIResponseValidationError,
|
|
39
39
|
)
|
|
40
|
-
from ._base_client import DefaultHttpxClient, DefaultAsyncHttpxClient
|
|
40
|
+
from ._base_client import DefaultHttpxClient, DefaultAioHttpClient, DefaultAsyncHttpxClient
|
|
41
41
|
from ._utils._logs import setup_logging as _setup_logging
|
|
42
42
|
|
|
43
43
|
__all__ = [
|
|
@@ -80,6 +80,7 @@ __all__ = [
|
|
|
80
80
|
"DEFAULT_CONNECTION_LIMITS",
|
|
81
81
|
"DefaultHttpxClient",
|
|
82
82
|
"DefaultAsyncHttpxClient",
|
|
83
|
+
"DefaultAioHttpClient",
|
|
83
84
|
]
|
|
84
85
|
|
|
85
86
|
if not _t.TYPE_CHECKING:
|
|
@@ -1289,6 +1289,24 @@ class _DefaultAsyncHttpxClient(httpx.AsyncClient):
|
|
|
1289
1289
|
super().__init__(**kwargs)
|
|
1290
1290
|
|
|
1291
1291
|
|
|
1292
|
+
try:
|
|
1293
|
+
import httpx_aiohttp
|
|
1294
|
+
except ImportError:
|
|
1295
|
+
|
|
1296
|
+
class _DefaultAioHttpClient(httpx.AsyncClient):
|
|
1297
|
+
def __init__(self, **_kwargs: Any) -> None:
|
|
1298
|
+
raise RuntimeError("To use the aiohttp client you must have installed the package with the `aiohttp` extra")
|
|
1299
|
+
else:
|
|
1300
|
+
|
|
1301
|
+
class _DefaultAioHttpClient(httpx_aiohttp.HttpxAiohttpClient): # type: ignore
|
|
1302
|
+
def __init__(self, **kwargs: Any) -> None:
|
|
1303
|
+
kwargs.setdefault("timeout", DEFAULT_TIMEOUT)
|
|
1304
|
+
kwargs.setdefault("limits", DEFAULT_CONNECTION_LIMITS)
|
|
1305
|
+
kwargs.setdefault("follow_redirects", True)
|
|
1306
|
+
|
|
1307
|
+
super().__init__(**kwargs)
|
|
1308
|
+
|
|
1309
|
+
|
|
1292
1310
|
if TYPE_CHECKING:
|
|
1293
1311
|
DefaultAsyncHttpxClient = httpx.AsyncClient
|
|
1294
1312
|
"""An alias to `httpx.AsyncClient` that provides the same defaults that this SDK
|
|
@@ -1297,8 +1315,12 @@ if TYPE_CHECKING:
|
|
|
1297
1315
|
This is useful because overriding the `http_client` with your own instance of
|
|
1298
1316
|
`httpx.AsyncClient` will result in httpx's defaults being used, not ours.
|
|
1299
1317
|
"""
|
|
1318
|
+
|
|
1319
|
+
DefaultAioHttpClient = httpx.AsyncClient
|
|
1320
|
+
"""An alias to `httpx.AsyncClient` that changes the default HTTP transport to `aiohttp`."""
|
|
1300
1321
|
else:
|
|
1301
1322
|
DefaultAsyncHttpxClient = _DefaultAsyncHttpxClient
|
|
1323
|
+
DefaultAioHttpClient = _DefaultAioHttpClient
|
|
1302
1324
|
|
|
1303
1325
|
|
|
1304
1326
|
class AsyncHttpxClientWrapper(DefaultAsyncHttpxClient):
|
{dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/customers/test_customer_portal.py
RENAMED
|
@@ -65,7 +65,9 @@ class TestCustomerPortal:
|
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
class TestAsyncCustomerPortal:
|
|
68
|
-
parametrize = pytest.mark.parametrize(
|
|
68
|
+
parametrize = pytest.mark.parametrize(
|
|
69
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
70
|
+
)
|
|
69
71
|
|
|
70
72
|
@parametrize
|
|
71
73
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -75,7 +75,9 @@ class TestPayments:
|
|
|
75
75
|
|
|
76
76
|
|
|
77
77
|
class TestAsyncPayments:
|
|
78
|
-
parametrize = pytest.mark.parametrize(
|
|
78
|
+
parametrize = pytest.mark.parametrize(
|
|
79
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
80
|
+
)
|
|
79
81
|
|
|
80
82
|
@parametrize
|
|
81
83
|
@pytest.mark.respx(base_url=base_url)
|
|
@@ -65,7 +65,9 @@ class TestImages:
|
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
class TestAsyncImages:
|
|
68
|
-
parametrize = pytest.mark.parametrize(
|
|
68
|
+
parametrize = pytest.mark.parametrize(
|
|
69
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
70
|
+
)
|
|
69
71
|
|
|
70
72
|
@parametrize
|
|
71
73
|
async def test_method_update(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -234,7 +234,9 @@ class TestAddons:
|
|
|
234
234
|
|
|
235
235
|
|
|
236
236
|
class TestAsyncAddons:
|
|
237
|
-
parametrize = pytest.mark.parametrize(
|
|
237
|
+
parametrize = pytest.mark.parametrize(
|
|
238
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
239
|
+
)
|
|
238
240
|
|
|
239
241
|
@parametrize
|
|
240
242
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -211,7 +211,9 @@ class TestBrands:
|
|
|
211
211
|
|
|
212
212
|
|
|
213
213
|
class TestAsyncBrands:
|
|
214
|
-
parametrize = pytest.mark.parametrize(
|
|
214
|
+
parametrize = pytest.mark.parametrize(
|
|
215
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
216
|
+
)
|
|
215
217
|
|
|
216
218
|
@parametrize
|
|
217
219
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -181,7 +181,9 @@ class TestCustomers:
|
|
|
181
181
|
|
|
182
182
|
|
|
183
183
|
class TestAsyncCustomers:
|
|
184
|
-
parametrize = pytest.mark.parametrize(
|
|
184
|
+
parametrize = pytest.mark.parametrize(
|
|
185
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
186
|
+
)
|
|
185
187
|
|
|
186
188
|
@parametrize
|
|
187
189
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -231,7 +231,9 @@ class TestDiscounts:
|
|
|
231
231
|
|
|
232
232
|
|
|
233
233
|
class TestAsyncDiscounts:
|
|
234
|
-
parametrize = pytest.mark.parametrize(
|
|
234
|
+
parametrize = pytest.mark.parametrize(
|
|
235
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
236
|
+
)
|
|
235
237
|
|
|
236
238
|
@parametrize
|
|
237
239
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -100,7 +100,9 @@ class TestDisputes:
|
|
|
100
100
|
|
|
101
101
|
|
|
102
102
|
class TestAsyncDisputes:
|
|
103
|
-
parametrize = pytest.mark.parametrize(
|
|
103
|
+
parametrize = pytest.mark.parametrize(
|
|
104
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
105
|
+
)
|
|
104
106
|
|
|
105
107
|
@parametrize
|
|
106
108
|
async def test_method_retrieve(self, async_client: AsyncDodoPayments) -> None:
|
{dodopayments-1.34.0 → dodopayments-1.34.2}/tests/api_resources/test_license_key_instances.py
RENAMED
|
@@ -142,7 +142,9 @@ class TestLicenseKeyInstances:
|
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
class TestAsyncLicenseKeyInstances:
|
|
145
|
-
parametrize = pytest.mark.parametrize(
|
|
145
|
+
parametrize = pytest.mark.parametrize(
|
|
146
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
147
|
+
)
|
|
146
148
|
|
|
147
149
|
@parametrize
|
|
148
150
|
async def test_method_retrieve(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -143,7 +143,9 @@ class TestLicenseKeys:
|
|
|
143
143
|
|
|
144
144
|
|
|
145
145
|
class TestAsyncLicenseKeys:
|
|
146
|
-
parametrize = pytest.mark.parametrize(
|
|
146
|
+
parametrize = pytest.mark.parametrize(
|
|
147
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
148
|
+
)
|
|
147
149
|
|
|
148
150
|
@parametrize
|
|
149
151
|
async def test_method_retrieve(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -129,7 +129,9 @@ class TestLicenses:
|
|
|
129
129
|
|
|
130
130
|
|
|
131
131
|
class TestAsyncLicenses:
|
|
132
|
-
parametrize = pytest.mark.parametrize(
|
|
132
|
+
parametrize = pytest.mark.parametrize(
|
|
133
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
134
|
+
)
|
|
133
135
|
|
|
134
136
|
@parametrize
|
|
135
137
|
async def test_method_activate(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -44,7 +44,9 @@ class TestMisc:
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
class TestAsyncMisc:
|
|
47
|
-
parametrize = pytest.mark.parametrize(
|
|
47
|
+
parametrize = pytest.mark.parametrize(
|
|
48
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
49
|
+
)
|
|
48
50
|
|
|
49
51
|
@parametrize
|
|
50
52
|
async def test_method_list_supported_countries(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -240,7 +240,9 @@ class TestPayments:
|
|
|
240
240
|
|
|
241
241
|
|
|
242
242
|
class TestAsyncPayments:
|
|
243
|
-
parametrize = pytest.mark.parametrize(
|
|
243
|
+
parametrize = pytest.mark.parametrize(
|
|
244
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
245
|
+
)
|
|
244
246
|
|
|
245
247
|
@parametrize
|
|
246
248
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -53,7 +53,9 @@ class TestPayouts:
|
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
class TestAsyncPayouts:
|
|
56
|
-
parametrize = pytest.mark.parametrize(
|
|
56
|
+
parametrize = pytest.mark.parametrize(
|
|
57
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
58
|
+
)
|
|
57
59
|
|
|
58
60
|
@parametrize
|
|
59
61
|
async def test_method_list(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -373,7 +373,9 @@ class TestProducts:
|
|
|
373
373
|
|
|
374
374
|
|
|
375
375
|
class TestAsyncProducts:
|
|
376
|
-
parametrize = pytest.mark.parametrize(
|
|
376
|
+
parametrize = pytest.mark.parametrize(
|
|
377
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
378
|
+
)
|
|
377
379
|
|
|
378
380
|
@parametrize
|
|
379
381
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -142,7 +142,9 @@ class TestRefunds:
|
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
class TestAsyncRefunds:
|
|
145
|
-
parametrize = pytest.mark.parametrize(
|
|
145
|
+
parametrize = pytest.mark.parametrize(
|
|
146
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
147
|
+
)
|
|
146
148
|
|
|
147
149
|
@parametrize
|
|
148
150
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -371,7 +371,9 @@ class TestSubscriptions:
|
|
|
371
371
|
|
|
372
372
|
|
|
373
373
|
class TestAsyncSubscriptions:
|
|
374
|
-
parametrize = pytest.mark.parametrize(
|
|
374
|
+
parametrize = pytest.mark.parametrize(
|
|
375
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
376
|
+
)
|
|
375
377
|
|
|
376
378
|
@parametrize
|
|
377
379
|
async def test_method_create(self, async_client: AsyncDodoPayments) -> None:
|
|
@@ -97,7 +97,9 @@ class TestWebhookEvents:
|
|
|
97
97
|
|
|
98
98
|
|
|
99
99
|
class TestAsyncWebhookEvents:
|
|
100
|
-
parametrize = pytest.mark.parametrize(
|
|
100
|
+
parametrize = pytest.mark.parametrize(
|
|
101
|
+
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
|
102
|
+
)
|
|
101
103
|
|
|
102
104
|
@parametrize
|
|
103
105
|
async def test_method_retrieve(self, async_client: AsyncDodoPayments) -> None:
|