Добавлен адаптер к tbank и формирование ссылки на оплату

This commit is contained in:
Раис Юсупалиев
2026-04-12 18:56:41 +03:00
parent ab0b66e1c2
commit 2b201a08be
34 changed files with 1322 additions and 268 deletions
@@ -15,6 +15,12 @@ adapter:
cdek_client_id: "yaml-id"
cdek_client_secret: "yaml-secret"
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "yaml-terminal-key"
password: "yaml-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -23,6 +23,12 @@ adapter:
cdek_timeout_seconds: 10.0
cdek_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -12,6 +12,12 @@ repository:
redis_dsn: "redis://localhost:6379/0"
price_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -23,6 +23,12 @@ adapter:
cdek_timeout_seconds: 10.0
cdek_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
observability:
enabled: false
service_name: "missing-address-suggestions-service"
@@ -23,6 +23,12 @@ adapter:
cdek_timeout_seconds: 10.0
cdek_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -23,6 +23,12 @@ adapter:
cdek_timeout_seconds: 10.0
cdek_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -22,6 +22,12 @@ adapter:
cdek_timeout_seconds: 10.0
cdek_cache_ttl_seconds: 900
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "test-terminal-key"
password: "test-password"
address_suggestions:
country_to_provider:
RU: "dadata"
@@ -15,6 +15,15 @@ adapter:
cdek_client_id: "test-id"
cdek_client_secret: "test-secret"
tbank_payment:
init_url: "https://securepay.tinkoff.ru/v2/Init"
auth:
terminal_key: "override-terminal-key"
password: "override-password"
timeout_seconds: 4.25
retry_attempts: 1
retry_backoff_seconds: 0.05
address_suggestions:
country_to_provider:
RU: "dadata"
+12
View File
@@ -126,6 +126,12 @@ def test_configuration_sections_are_loaded_from_yaml_file(
assert settings.adapter.cdek_retry_backoff_seconds == 0.2
assert settings.adapter.cdek_timeout_seconds == 10.0
assert settings.adapter.cdek_cache_ttl_seconds == 900
assert settings.tbank_payment.init_url == "https://securepay.tinkoff.ru/v2/Init"
assert settings.tbank_payment.auth.terminal_key == "test-terminal-key"
assert settings.tbank_payment.auth.password == "test-password"
assert settings.tbank_payment.timeout_seconds == 10.0
assert settings.tbank_payment.retry_attempts == 2
assert settings.tbank_payment.retry_backoff_seconds == 0.2
assert settings.address_suggestions.country_to_provider == _expected_country_mapping()
assert (
settings.address_suggestions.dadata.url
@@ -192,6 +198,7 @@ def test_get_settings_returns_cached_instance(monkeypatch: pytest.MonkeyPatch) -
assert first is second
assert first.service.provider_timeout_seconds == 10.0
assert first.business_logic.provider_price_multiplier == Decimal("1.0")
assert first.tbank_payment.auth.terminal_key == "test-terminal-key"
assert first.address_suggestions.country_to_provider["RU"] == "dadata"
assert first.observability.service_name == "g2s-aggregator-test"
get_settings.cache_clear()
@@ -212,6 +219,11 @@ def test_get_settings_uses_config_test_yaml_in_pytest_environment(
assert settings.controller.api_prefix == "/from-config-test-yaml"
assert settings.business_logic.provider_price_multiplier == Decimal("1.25")
assert settings.adapter.cdek_client_id == "test-id"
assert settings.tbank_payment.auth.terminal_key == "override-terminal-key"
assert settings.tbank_payment.auth.password == "override-password"
assert settings.tbank_payment.timeout_seconds == 4.25
assert settings.tbank_payment.retry_attempts == 1
assert settings.tbank_payment.retry_backoff_seconds == 0.05
assert settings.address_suggestions.country_to_provider == {
"RU": "dadata",
"AM": "yandex_geosuggest",