Files
flowsint/flowsint-api/tests/utils.py
2025-07-20 22:39:11 +02:00

41 lines
1.2 KiB
Python

from app.scanners.base import build_params_model
def test_build_params_model_valid():
param_schema = [
{
"name": "ETHERSCAN_API_KEY",
"type": "string",
"description": "The Etherscan API key to use for the transaction lookup.",
"required": True
},
{
"name": "url",
"type": "string",
"description": "Base URL for API",
"required": False,
"default": "https://api.etherscan.io/api"
}
]
ParamsModel = build_params_model(param_schema)
validated_params = ParamsModel(ETHERSCAN_API_KEY="clef-123")
assert validated_params.ETHERSCAN_API_KEY == "clef-123"
assert validated_params.url == "https://api.etherscan.io/api"
def test_build_params_model_invalid():
param_schema = [
{
},
{
"name": "url",
"type": "string",
"description": "Base URL for API",
"required": False,
"default": "https://api.etherscan.io/api"
}
]
ParamsModel = build_params_model(param_schema)
validated_params = ParamsModel(ETHERSCAN_API_KEY="clef-123")
assert validated_params.ETHERSCAN_API_KEY == "clef-123"
assert validated_params.url == "https://api.etherscan.io/api"