generated from cfpb/open-source-project-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpyproject.toml
108 lines (93 loc) · 2.62 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
[tool.poetry]
name = "sbl-filing-api"
version = "0.1.0"
description = "SBL Filing API"
authors = ["lchen-2101 <[email protected]>"]
readme = "README.md"
packages = [{ include = "sbl_filing_api", from = "src" }]
[tool.poetry.dependencies]
python = ">=3.12,<4"
sqlalchemy = "^2.0.35"
psycopg2-binary = "^2.9.9"
asyncpg = "^0.30.0"
regtech-api-commons = {git = "https://github.com/cfpb/regtech-api-commons.git"}
regtech-data-validator = {git = "https://github.com/cfpb/regtech-data-validator.git"}
regtech-regex = {git = "https://github.com/cfpb/regtech-regex.git"}
boto3 = "~1.34.0"
python-multipart = "^0.0.19"
alembic = "^1.14.0"
async-lru = "^2.0.4"
ujson = "^5.10.0"
[tool.poetry.group.dev.dependencies]
pytest = "^8.3.3"
pytest-cov = "^6.0.0"
pytest-mock = "^3.12.0"
pytest-env = "^1.1.5"
pytest-alembic = "^0.11.1"
pytest-asyncio = "^0.24.0"
aiosqlite = "^0.20.0"
[tool.poetry.group.linters.dependencies]
ruff = "0.8.3"
black = "24.8.0"
[tool.poetry.group.load-testing.dependencies]
locust = "^2.32.3"
httpx = "^0.28.0"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.pytest.ini_options]
asyncio_mode = "auto"
pythonpath = ["src"]
addopts = [
"--cov-report=term-missing",
"--cov-branch",
"--cov-report=xml",
"--cov-report=term",
"--cov=src",
"-vv",
"--strict-markers",
"-rfE",
]
env = [
"DB_SCHEMA=main",
"DB_USER=user",
"DB_PWD=user",
"DB_HOST=localhost:5432",
"DB_NAME=filing",
"KC_URL=http://localhost",
"KC_REALM=",
"KC_ADMIN_CLIENT_ID=",
"KC_ADMIN_CLIENT_SECRET=",
"KC_REALM_URL=http://localhost",
"AUTH_URL=http://localhost",
"TOKEN_URL=http://localhost",
"CERTS_URL=http://localhost",
"AUTH_CLIENT=",
"FS_UPLOAD_CONFIG__PROTOCOL=file",
"FS_UPLOAD_CONFIG__ROOT=../upload",
"FS_UPLOAD_CONFIG__MKDIR=true",
"FS_DOWNLOAD_CONFIG__PROTOCOL=file",
"ENV=TEST",
"MAIL_API_URL=http://mail-api:8765/internal/confirmation/send",
'REQUEST_VALIDATORS__SIGN_AND_SUBMIT=["valid_lei_status","valid_lei_tin","valid_filing_exists","valid_sub_accepted","valid_voluntary_filer","valid_contact_info"]',
'REQUEST_VALIDATORS__FILING_CREATE=["valid_period_exists", "valid_no_filing_exists"]'
]
testpaths = ["tests"]
[tool.black]
line-length = 120
[tool.ruff]
line-length = 120
[tool.coverage.run]
relative_files = true
source = ["src"]
[tool.coverage.report]
skip_empty = true
[tool.locust]
locustfile = "locust-load-test/locust_scripts/filing_api_locust.py"
headless = true
users = 5
host = "http://localhost:8888"
# host = "https://filing-api-eks.dev-public.aws.cfpb.gov"
spawn-rate = 10
run-time = "30s"
html = "locust-load-test/reports/report.html"