local-web-services-python-sdk 0.1.5__tar.gz → 0.1.6__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.
Files changed (32) hide show
  1. local_web_services_python_sdk-0.1.6/BUILD +17 -0
  2. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/PKG-INFO +2 -2
  3. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/pyproject.toml +2 -2
  4. local_web_services_python_sdk-0.1.6/requirements.txt +175 -0
  5. local_web_services_python_sdk-0.1.6/tests/BUILD +15 -0
  6. local_web_services_python_sdk-0.1.6/tests/pytest_runner.py +10 -0
  7. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/.github/workflows/ci.yml +0 -0
  8. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/.github/workflows/publish.yml +0 -0
  9. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/.gitignore +0 -0
  10. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/Makefile +0 -0
  11. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/README.md +0 -0
  12. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/__init__.py +0 -0
  13. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_builders/__init__.py +0 -0
  14. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_builders/chaos.py +0 -0
  15. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_builders/iam.py +0 -0
  16. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_builders/mock.py +0 -0
  17. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_discovery/__init__.py +0 -0
  18. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_discovery/cdk.py +0 -0
  19. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_discovery/hcl.py +0 -0
  20. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_logs.py +0 -0
  21. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_resources/__init__.py +0 -0
  22. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_resources/dynamodb.py +0 -0
  23. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_resources/s3.py +0 -0
  24. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_resources/sqs.py +0 -0
  25. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_transport/__init__.py +0 -0
  26. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/_transport/inprocess.py +0 -0
  27. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/fixtures.py +0 -0
  28. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/src/lws_testing/session.py +0 -0
  29. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/tests/__init__.py +0 -0
  30. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/tests/unit/__init__.py +0 -0
  31. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/tests/unit/test_session_imports.py +0 -0
  32. {local_web_services_python_sdk-0.1.5 → local_web_services_python_sdk-0.1.6}/tests/unit/test_session_lifecycle.py +0 -0
@@ -0,0 +1,17 @@
1
+ load("@pip_python_sdk//:requirements.bzl", "requirement")
2
+ load("@rules_python//python:defs.bzl", "py_library", "py_test")
3
+
4
+ py_library(
5
+ name = "lws_testing",
6
+ srcs = glob(["src/**/*.py"]),
7
+ imports = ["src"],
8
+ visibility = ["//visibility:public"],
9
+ deps = [
10
+ "//core:lws",
11
+ requirement("httpx"),
12
+ requirement("botocore"),
13
+ requirement("pyyaml"),
14
+ ],
15
+ )
16
+
17
+ # Tests live in //lang/python/sdk/tests:tests to avoid output-path prefix conflicts.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: local-web-services-python-sdk
3
- Version: 0.1.5
3
+ Version: 0.1.6
4
4
  Summary: Python testing SDK for local-web-services — in-process pytest fixtures and boto3 helpers
5
5
  Project-URL: Homepage, https://local-web-services.github.io
6
6
  Project-URL: Repository, https://github.com/local-web-services/local-web-services-sdk-python
@@ -19,7 +19,7 @@ Classifier: Topic :: Software Development :: Testing
19
19
  Requires-Python: >=3.11
20
20
  Requires-Dist: botocore>=1.34.0
21
21
  Requires-Dist: httpx>=0.27.0
22
- Requires-Dist: local-web-services>=0.17.2
22
+ Requires-Dist: local-web-services>=0.18.0
23
23
  Requires-Dist: pyyaml>=6.0
24
24
  Provides-Extra: pytest
25
25
  Requires-Dist: pytest>=8.0.0; extra == 'pytest'
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "local-web-services-python-sdk"
3
- version = "0.1.5"
3
+ version = "0.1.6"
4
4
  description = "Python testing SDK for local-web-services — in-process pytest fixtures and boto3 helpers"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -21,7 +21,7 @@ dependencies = [
21
21
  "httpx>=0.27.0",
22
22
  "botocore>=1.34.0",
23
23
  "pyyaml>=6.0",
24
- "local-web-services>=0.17.2",
24
+ "local-web-services>=0.18.0",
25
25
  ]
26
26
 
27
27
  [project.optional-dependencies]
@@ -0,0 +1,175 @@
1
+ # This file was autogenerated by uv via the following command:
2
+ # uv export --no-hashes --no-editable --output-file requirements.txt
3
+ aiosqlite==0.22.1
4
+ # via local-web-services
5
+ annotated-doc==0.0.4
6
+ # via
7
+ # fastapi
8
+ # typer
9
+ annotated-types==0.7.0
10
+ # via pydantic
11
+ anyio==4.12.1
12
+ # via
13
+ # httpx
14
+ # starlette
15
+ # watchfiles
16
+ black==26.1.0
17
+ boto3==1.42.54
18
+ botocore==1.42.54
19
+ # via
20
+ # boto3
21
+ # local-web-services-python-sdk
22
+ # s3transfer
23
+ certifi==2026.1.4
24
+ # via
25
+ # httpcore
26
+ # httpx
27
+ # requests
28
+ cffi==2.0.0 ; platform_python_implementation != 'PyPy'
29
+ # via cryptography
30
+ charset-normalizer==3.4.4
31
+ # via requests
32
+ click==8.3.1
33
+ # via
34
+ # black
35
+ # typer
36
+ # uvicorn
37
+ colorama==0.4.6
38
+ # via
39
+ # click
40
+ # pytest
41
+ # radon
42
+ # uvicorn
43
+ croniter==6.0.0
44
+ # via local-web-services
45
+ cryptography==46.0.5
46
+ # via pyjwt
47
+ docker==7.1.0
48
+ # via local-web-services
49
+ fastapi==0.129.0
50
+ # via local-web-services
51
+ h11==0.16.0
52
+ # via
53
+ # httpcore
54
+ # uvicorn
55
+ httpcore==1.0.9
56
+ # via httpx
57
+ httptools==0.7.1
58
+ # via uvicorn
59
+ httpx==0.28.1
60
+ # via
61
+ # local-web-services
62
+ # local-web-services-python-sdk
63
+ idna==3.11
64
+ # via
65
+ # anyio
66
+ # httpx
67
+ # requests
68
+ iniconfig==2.3.0
69
+ # via pytest
70
+ jmespath==1.1.0
71
+ # via
72
+ # boto3
73
+ # botocore
74
+ local-web-services==0.17.2
75
+ # via local-web-services-python-sdk
76
+ mando==0.7.1
77
+ # via radon
78
+ markdown-it-py==4.0.0
79
+ # via rich
80
+ mdurl==0.1.2
81
+ # via markdown-it-py
82
+ mypy-extensions==1.1.0
83
+ # via black
84
+ packaging==26.0
85
+ # via
86
+ # black
87
+ # pytest
88
+ pathspec==1.0.4
89
+ # via black
90
+ platformdirs==4.9.2
91
+ # via black
92
+ pluggy==1.6.0
93
+ # via pytest
94
+ pycparser==3.0 ; implementation_name != 'PyPy' and platform_python_implementation != 'PyPy'
95
+ # via cffi
96
+ pydantic==2.12.5
97
+ # via fastapi
98
+ pydantic-core==2.41.5
99
+ # via pydantic
100
+ pygments==2.19.2
101
+ # via
102
+ # pytest
103
+ # rich
104
+ pyjwt==2.11.0
105
+ # via local-web-services
106
+ pytest==9.0.2
107
+ # via pytest-asyncio
108
+ pytest-asyncio==1.3.0
109
+ python-dateutil==2.9.0.post0
110
+ # via
111
+ # botocore
112
+ # croniter
113
+ python-dotenv==1.2.1
114
+ # via uvicorn
115
+ python-multipart==0.0.22
116
+ # via local-web-services
117
+ pytokens==0.4.1
118
+ # via black
119
+ pytz==2025.2
120
+ # via croniter
121
+ pywin32==311 ; sys_platform == 'win32'
122
+ # via docker
123
+ pyyaml==6.0.3
124
+ # via
125
+ # local-web-services
126
+ # local-web-services-python-sdk
127
+ # uvicorn
128
+ radon==6.0.1
129
+ requests==2.32.5
130
+ # via docker
131
+ rich==14.3.3
132
+ # via
133
+ # local-web-services
134
+ # typer
135
+ ruff==0.15.2
136
+ s3transfer==0.16.0
137
+ # via boto3
138
+ shellingham==1.5.4
139
+ # via typer
140
+ six==1.17.0
141
+ # via
142
+ # mando
143
+ # python-dateutil
144
+ starlette==0.52.1
145
+ # via fastapi
146
+ typer==0.24.0
147
+ # via local-web-services
148
+ typing-extensions==4.15.0
149
+ # via
150
+ # anyio
151
+ # fastapi
152
+ # pydantic
153
+ # pydantic-core
154
+ # pytest-asyncio
155
+ # starlette
156
+ # typing-inspection
157
+ typing-inspection==0.4.2
158
+ # via
159
+ # fastapi
160
+ # pydantic
161
+ urllib3==2.6.3
162
+ # via
163
+ # botocore
164
+ # docker
165
+ # requests
166
+ uvicorn==0.41.0
167
+ # via local-web-services
168
+ uvloop==0.22.1 ; platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32'
169
+ # via uvicorn
170
+ watchdog==6.0.0
171
+ # via local-web-services
172
+ watchfiles==1.1.1
173
+ # via uvicorn
174
+ websockets==16.0
175
+ # via uvicorn
@@ -0,0 +1,15 @@
1
+ load("@pip_python_sdk//:requirements.bzl", "requirement")
2
+ load("@rules_python//python:defs.bzl", "py_test")
3
+
4
+ py_test(
5
+ name = "tests",
6
+ srcs = glob(["**/*.py"]),
7
+ data = ["//core:ldk"],
8
+ imports = ["../src"],
9
+ main = "pytest_runner.py",
10
+ deps = [
11
+ "//lang/python/sdk:lws_testing",
12
+ requirement("pytest"),
13
+ requirement("boto3"),
14
+ ],
15
+ )
@@ -0,0 +1,10 @@
1
+ """Bazel py_test entry point: discovers and runs tests with pytest."""
2
+
3
+ import os
4
+ import sys
5
+
6
+ import pytest
7
+
8
+ if __name__ == "__main__":
9
+ test_dir = os.path.join(os.path.dirname(__file__), "tests")
10
+ sys.exit(pytest.main([test_dir, "-v", "--tb=short"] + sys.argv[1:]))