ansys-saf-testing 0.11.dev0__tar.gz → 0.11.dev2__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.
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/PKG-INFO +3 -7
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/pyproject.toml +8 -19
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/hps_client.py +3 -8
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/process/pim_process.py +1 -5
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/solution.py +28 -40
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/__init__.py +1 -1
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/__init__.py +2 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/AUTHORS +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/LICENSE +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/README.rst +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/common.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/directories.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/grpc_certificates.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/network.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/postgresql.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/psql_container_manager.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/sqlite.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_docker/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_docker/docker.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_docker/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_frontend/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_frontend/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_frontend/selenium.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/hps.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/process/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/process/hps_deployment_process.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/process/hps_scaler_process.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/process/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/hps_installer.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/keycloak/.env +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/keycloak/Dockerfile +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/keycloak/job-action-token-1.2.0.jar +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/keycloak/service.yaml +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/launch_hps_stack.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/scripts/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/pim.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/process/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/process/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/scripts/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/scripts/launch_pim.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/scripts/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/docstring_with_test_case.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/mocking.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/platform_specific.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/pytest.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/common.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/const.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/container/Dockerfile +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/container/docker-compose.yaml +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/glow_client.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/glow_execution_configurations.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/glow_process.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/glow_server.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/log_manager.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/project_context.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/end_to_end/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_system/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_system/process.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_system/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/common/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/common/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/database/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/database/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/directories/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/directories/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docker/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docker/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docstring_with_test_case/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docstring_with_test_case/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/process/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/process/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/scripts/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/scripts/hps_installer.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/scripts/launch_hps_stack.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/scripts/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/mocking/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/mocking/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/network/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/network/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/process/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/process/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/scripts/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/scripts/launch_pim.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/scripts/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/platform_specific/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/platform_specific/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/process/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/process/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pytest/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pytest/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/selenium/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/selenium/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/const/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/const/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/end_to_end/__init__.py +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/end_to_end/py.typed +0 -0
- {ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/py.typed +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ansys-saf-testing
|
|
3
|
-
Version: 0.11.
|
|
3
|
+
Version: 0.11.dev2
|
|
4
4
|
Summary: Collection of test utilities for the Solution Application Framework.
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
License-File: AUTHORS
|
|
@@ -28,24 +28,20 @@ Provides-Extra: pim
|
|
|
28
28
|
Provides-Extra: selenium
|
|
29
29
|
Provides-Extra: solution
|
|
30
30
|
Requires-Dist: ansys-hps-client (>=0.12,<1.0) ; extra == "hps" or extra == "all"
|
|
31
|
-
Requires-Dist: ansys-saf-glow-engine[dash] (>=
|
|
31
|
+
Requires-Dist: ansys-saf-glow-engine[dash] (>=2.0.dev1,<3.0) ; extra == "solution" or extra == "all"
|
|
32
32
|
Requires-Dist: ansys-saf-product-configuration (>=0.20.dev0,<1.0) ; extra == "hps" or extra == "pim" or extra == "all"
|
|
33
33
|
Requires-Dist: click (>=8.1.7,<9.0.0)
|
|
34
|
-
Requires-Dist: cryptography (>=
|
|
35
|
-
Requires-Dist: dash (>=2.18.2,<3.4.0) ; extra == "solution" or extra == "all"
|
|
34
|
+
Requires-Dist: cryptography (>=49.0.0,<50.0.0)
|
|
36
35
|
Requires-Dist: docker (>=7.1.0,<8.0.0) ; extra == "hps" or extra == "docker" or extra == "all"
|
|
37
|
-
Requires-Dist: fastapi (>=0.115.2,<1.0) ; extra == "solution" or extra == "all"
|
|
38
36
|
Requires-Dist: grpcio (>=1.47.0,<2.0.0) ; extra == "pim" or extra == "all"
|
|
39
37
|
Requires-Dist: grpcio-health-checking (>=1.24.0,<2.0.0) ; extra == "pim" or extra == "all"
|
|
40
38
|
Requires-Dist: httpx (>=0,<1)
|
|
41
|
-
Requires-Dist: marshmallow (>=3.20.2,<4.0.0) ; extra == "hps" or extra == "all"
|
|
42
39
|
Requires-Dist: psutil (>=6.0,<7.0)
|
|
43
40
|
Requires-Dist: pydantic (>=2.7,<3.0)
|
|
44
41
|
Requires-Dist: pytest (>=9.0.3,<10.0.0)
|
|
45
42
|
Requires-Dist: pytest-mock (>=3.14.1,<4.0.0)
|
|
46
43
|
Requires-Dist: pyyaml (>=6.0.0,<7.0.0)
|
|
47
44
|
Requires-Dist: selenium (>=4.0,<5.0) ; extra == "selenium" or extra == "all"
|
|
48
|
-
Requires-Dist: starlette (>=0.49.1,<0.50.0) ; extra == "solution" or extra == "all"
|
|
49
45
|
Requires-Dist: tenacity (>=8.2.3,<9.0.0)
|
|
50
46
|
Requires-Dist: typing-extensions (>=4.14.0,<5.0.0)
|
|
51
47
|
Description-Content-Type: text/x-rst
|
|
@@ -7,7 +7,7 @@ build-system-version = "2.3.2"
|
|
|
7
7
|
|
|
8
8
|
[tool.poetry]
|
|
9
9
|
name = "ansys-saf-testing"
|
|
10
|
-
version = "0.11.
|
|
10
|
+
version = "0.11.dev2"
|
|
11
11
|
description = "Collection of test utilities for the Solution Application Framework."
|
|
12
12
|
license = "Apache-2.0"
|
|
13
13
|
authors = [ "ANSYS, Inc. <pyansys.core@ansys.com>" ]
|
|
@@ -38,7 +38,7 @@ priority = "primary"
|
|
|
38
38
|
[tool.poetry.dependencies]
|
|
39
39
|
python = ">=3.10,<4"
|
|
40
40
|
click = "^8.1.7"
|
|
41
|
-
cryptography = "^
|
|
41
|
+
cryptography = "^49.0.0"
|
|
42
42
|
httpx = "^0"
|
|
43
43
|
psutil = "^6.0"
|
|
44
44
|
pydantic = "^2.7"
|
|
@@ -48,12 +48,8 @@ pyyaml = "^6.0.0"
|
|
|
48
48
|
tenacity = "^8.2.3" # has to be <9.0.0 to be compatible with ansys-conceptev-core 0.9.4
|
|
49
49
|
typing-extensions = "^4.14.0"
|
|
50
50
|
selenium = { version = "^4.0", optional = true } # for testing web frontends
|
|
51
|
-
ansys-saf-glow-engine = { version = "^
|
|
52
|
-
dash = { version = ">=2.18.2, <3.4.0", optional = true} # for testing Dash callbacks. min version due to support for ctx.headers. max version due to incompatibility with dash-extensions < 2.0.5.
|
|
53
|
-
fastapi = { version = ">=0.115.2, <1.0", optional = true } # for testing solutions
|
|
54
|
-
starlette = { version = "^0.49.1", optional = true } # for testing solutions
|
|
51
|
+
ansys-saf-glow-engine = { version = "^2.0.dev1", allow-prereleases = true, optional = true, extras=["dash"] } # for testing Solution API and Dash-based UI
|
|
55
52
|
docker = { version ="^7.1.0", optional = true }
|
|
56
|
-
marshmallow = { version = "^3.20.2", optional = true } # for HPS
|
|
57
53
|
ansys-hps-client = { version = ">=0.12, <1.0", optional = true }
|
|
58
54
|
ansys-saf-product-configuration = { version = ">=0.20.dev0, <1.0", allow-prereleases = true, optional = true } # for HPS and PIM Light Server
|
|
59
55
|
grpcio = { version = "^1.47.0", optional = true } # for PIM Light Server
|
|
@@ -62,19 +58,15 @@ grpcio-health-checking = { version = "^1.24.0", optional = true } # for PIM Lig
|
|
|
62
58
|
|
|
63
59
|
[tool.poetry.extras]
|
|
64
60
|
selenium = ["selenium"]
|
|
65
|
-
solution = ["ansys-saf-glow-engine"
|
|
66
|
-
hps = ["ansys-hps-client", "
|
|
61
|
+
solution = ["ansys-saf-glow-engine"]
|
|
62
|
+
hps = ["ansys-hps-client", "ansys-saf-product-configuration", "docker"]
|
|
67
63
|
docker = ["docker"]
|
|
68
64
|
pim = ["grpcio", "grpcio-health-checking", "ansys-saf-product-configuration"]
|
|
69
65
|
# didn't find a way to dynamically include previous groups, so we need to copy all dependencies
|
|
70
66
|
all = [
|
|
71
67
|
"selenium",
|
|
72
68
|
"ansys-saf-glow-engine",
|
|
73
|
-
"dash",
|
|
74
|
-
"fastapi",
|
|
75
|
-
"starlette",
|
|
76
69
|
"ansys-hps-client",
|
|
77
|
-
"marshmallow",
|
|
78
70
|
"ansys-saf-product-configuration",
|
|
79
71
|
"docker",
|
|
80
72
|
"grpcio",
|
|
@@ -92,15 +84,12 @@ ruff-lsp = "^0.0"
|
|
|
92
84
|
pre-commit = "^4.2.0"
|
|
93
85
|
|
|
94
86
|
[tool.poetry.group.tests.dependencies]
|
|
95
|
-
dash = { version = "
|
|
96
|
-
pytest-cov = "^
|
|
87
|
+
dash = { version = "^3.0.0, <3.4.0", extras = ["diskcache"]} # diskcache needed for background callbacks
|
|
88
|
+
pytest-cov = "^7.0.0"
|
|
97
89
|
pytest-html = "^4.1.1"
|
|
98
90
|
pytest-md = "^0.2.0"
|
|
99
91
|
pytest-rerunfailures = "^16.1.0"
|
|
100
|
-
|
|
101
|
-
rpyc = { version = "^6.0" } # for using AEDT instance manager. missing subdependency in pyaedt 0.22.2. We could use [all] but that would install a lot more stuff. Hopefully, in the future, they will create a new optional group that includes it.
|
|
102
|
-
ansys-mechanical-core = { version = ">=0.12.9, <1.0", python = ">=3.10, <3.15" } # for testing product instances
|
|
103
|
-
ansys-platform-instancemanagement = { version = "^1.0.2" } # for testing product instances
|
|
92
|
+
ansys-saf-glow-engine = { version = "^2.0.dev1", allow-prereleases = true, optional = true, extras=["pim"] } # for testing product instances
|
|
104
93
|
|
|
105
94
|
[tool.poetry.group.doc]
|
|
106
95
|
optional = true
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/hps_client.py
RENAMED
|
@@ -15,17 +15,12 @@
|
|
|
15
15
|
|
|
16
16
|
from collections.abc import Callable
|
|
17
17
|
from typing import Protocol
|
|
18
|
-
import warnings
|
|
19
18
|
|
|
20
|
-
import
|
|
19
|
+
from ansys.hps.client import Client # pyright: ignore[reportMissingTypeStubs]
|
|
20
|
+
from ansys.hps.client.jms import JmsApi, ProjectApi # pyright: ignore[reportMissingTypeStubs]
|
|
21
|
+
from ansys.hps.client.rms import RmsApi # pyright: ignore[reportMissingTypeStubs]
|
|
21
22
|
import pytest
|
|
22
23
|
|
|
23
|
-
with warnings.catch_warnings():
|
|
24
|
-
warnings.simplefilter("ignore", category=marshmallow.warnings.RemovedInMarshmallow4Warning)
|
|
25
|
-
from ansys.hps.client import Client # type: ignore
|
|
26
|
-
from ansys.hps.client.jms import JmsApi, ProjectApi # type: ignore
|
|
27
|
-
from ansys.hps.client.rms import RmsApi # type: ignore
|
|
28
|
-
|
|
29
24
|
|
|
30
25
|
class GetHpsJobIdsType(Protocol):
|
|
31
26
|
"""Interface for a function that retrieves HPS job IDs based on job name, status, and previous job IDs."""
|
|
@@ -22,7 +22,6 @@ from tempfile import mkdtemp
|
|
|
22
22
|
from time import sleep
|
|
23
23
|
import typing
|
|
24
24
|
from unittest.mock import patch
|
|
25
|
-
import warnings
|
|
26
25
|
|
|
27
26
|
import psutil
|
|
28
27
|
|
|
@@ -154,10 +153,7 @@ class PimProcess(Process):
|
|
|
154
153
|
|
|
155
154
|
instance_config_mgr = ProductInstanceConfigurationsManager()
|
|
156
155
|
if self._product_configs_dir and self._product_configs_dir.is_dir():
|
|
157
|
-
|
|
158
|
-
warnings.simplefilter("ignore", DeprecationWarning) # dir may contain deprecated product configs
|
|
159
|
-
print(f"Loading custom product configurations from dir {self._product_configs_dir}.")
|
|
160
|
-
instance_config_mgr.load_configurations(self._product_configs_dir)
|
|
156
|
+
instance_config_mgr.load_configurations(self._product_configs_dir)
|
|
161
157
|
self._definitions_dir = Path(mkdtemp())
|
|
162
158
|
configurations_dir = self._definitions_dir / "Configurations"
|
|
163
159
|
configurations_dir.mkdir()
|
|
@@ -26,11 +26,9 @@ from ansys.saf.glow._config.settings import Settings
|
|
|
26
26
|
from ansys.saf.glow._core.client_exceptions import raise_for_graphql_status
|
|
27
27
|
from ansys.saf.glow._server.dependencies import get_graphql_client, get_http_client, get_settings
|
|
28
28
|
from ansys.saf.glow._server.server import create_app
|
|
29
|
-
from ansys.saf.glow.client import Client,
|
|
29
|
+
from ansys.saf.glow.client import Client, callback
|
|
30
30
|
from ansys.saf.glow.solution import Solution
|
|
31
31
|
from ansys.saf.glow.solution.beta import ProductInstanceManager
|
|
32
|
-
from dash._callback_context import context_value # pyright: ignore[reportUnknownVariableType, reportMissingTypeStubs]
|
|
33
|
-
from dash._utils import AttributeDict # pyright: ignore[reportMissingTypeStubs]
|
|
34
32
|
from fastapi.testclient import TestClient
|
|
35
33
|
from httpx import Response
|
|
36
34
|
import pytest
|
|
@@ -42,9 +40,6 @@ T = TypeVar("T", bound=Solution)
|
|
|
42
40
|
is_within_dash_callback_context = contextvars.ContextVar("dash_callback_context", default=False)
|
|
43
41
|
original_callback_call = callback.__call__
|
|
44
42
|
|
|
45
|
-
is_within_dashclient_initialize_context = contextvars.ContextVar("dashclient_initialize_context", default=False)
|
|
46
|
-
original_dashclient_initialize = DashClient.initialize
|
|
47
|
-
|
|
48
43
|
|
|
49
44
|
class NotVersionArgFoundError(Exception): ...
|
|
50
45
|
|
|
@@ -52,17 +47,6 @@ class NotVersionArgFoundError(Exception): ...
|
|
|
52
47
|
class NotServiceNameAttrFoundError(Exception): ...
|
|
53
48
|
|
|
54
49
|
|
|
55
|
-
def patched_initialize(*args: Any, **kwargs: Any) -> None:
|
|
56
|
-
token = is_within_dashclient_initialize_context.set(True)
|
|
57
|
-
try:
|
|
58
|
-
original_dashclient_initialize(*args, **kwargs)
|
|
59
|
-
finally:
|
|
60
|
-
is_within_dashclient_initialize_context.reset(token)
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
DashClient.initialize = patched_initialize
|
|
64
|
-
|
|
65
|
-
|
|
66
50
|
def patched_call(*args: Any, **kwargs: Any) -> Callable[..., Any]:
|
|
67
51
|
decorated = original_callback_call(*args, **kwargs)
|
|
68
52
|
|
|
@@ -160,13 +144,19 @@ def _api_testclient(_solution_settings: Settings) -> Iterator[TestClient]: # py
|
|
|
160
144
|
yield client
|
|
161
145
|
|
|
162
146
|
|
|
147
|
+
@pytest.fixture(scope="session")
|
|
148
|
+
def _created_method_clients() -> list[TestClient]: # pyright: ignore[reportUnusedFunction]
|
|
149
|
+
return []
|
|
150
|
+
|
|
151
|
+
|
|
163
152
|
@pytest.fixture(scope="session")
|
|
164
153
|
def _method_client_factory( # pyright: ignore[reportUnusedFunction]
|
|
165
154
|
_solution_settings: Settings,
|
|
155
|
+
_created_method_clients: list[TestClient],
|
|
166
156
|
) -> Callable[[], TestClient]:
|
|
167
157
|
def create_method_client() -> TestClient:
|
|
168
158
|
client = TestClient(create_app(_solution_settings))
|
|
169
|
-
client
|
|
159
|
+
_created_method_clients.append(client)
|
|
170
160
|
return client
|
|
171
161
|
|
|
172
162
|
return create_method_client
|
|
@@ -178,7 +168,7 @@ def _validate_product_manager_class(product_manager_class: type[ProductInstanceM
|
|
|
178
168
|
internal_product_manager = product_manager_class._instance_manager_impl_type # type: ignore
|
|
179
169
|
|
|
180
170
|
initialize_signature = inspect.signature(internal_product_manager.initialize) # type: ignore
|
|
181
|
-
if "version" not in initialize_signature.parameters
|
|
171
|
+
if "version" not in initialize_signature.parameters:
|
|
182
172
|
raise NotVersionArgFoundError("The 'version' argument is required in the product manager's initialize method.")
|
|
183
173
|
|
|
184
174
|
service_name = getattr(internal_product_manager, "SERVICE_NAME", None)
|
|
@@ -192,7 +182,7 @@ def mock_product_instance(mocker: pytest_mock.MockerFixture, request: pytest.Fix
|
|
|
192
182
|
raise ValueError("The 'mock_product_instance' fixture requires being parametrized.")
|
|
193
183
|
|
|
194
184
|
def patched_initialize(self: Any, *args: Any, **kwargs: Any) -> None:
|
|
195
|
-
self.initialize_service(self.SERVICE_NAME, kwargs.get("version")
|
|
185
|
+
self.initialize_service(self.SERVICE_NAME, kwargs.get("version"))
|
|
196
186
|
self.recovery_state_info = self.recovery_state_info_type()
|
|
197
187
|
|
|
198
188
|
for product_manager_class, product_client_class in request.param.items():
|
|
@@ -252,13 +242,20 @@ def _solution_api_client( # pyright: ignore[reportUnusedFunction]
|
|
|
252
242
|
return _api_testclient
|
|
253
243
|
|
|
254
244
|
|
|
245
|
+
@pytest.fixture(scope="session")
|
|
246
|
+
def _created_dash_callback_clients() -> list[TestClient]: # pyright: ignore[reportUnusedFunction]
|
|
247
|
+
return []
|
|
248
|
+
|
|
249
|
+
|
|
255
250
|
@pytest.fixture(scope="session")
|
|
256
251
|
def _dash_callback_client_factory( # pyright: ignore[reportUnusedFunction]
|
|
257
252
|
_solution_settings: Settings,
|
|
258
253
|
_method_client_factory: Callable[[], TestClient],
|
|
254
|
+
_created_dash_callback_clients: list[TestClient],
|
|
259
255
|
) -> Callable[[], TestClient]:
|
|
260
256
|
def create_callback_client() -> TestClient:
|
|
261
257
|
client = TestClient(create_app(_solution_settings))
|
|
258
|
+
_created_dash_callback_clients.append(client)
|
|
262
259
|
_apply_dependency_overrides(
|
|
263
260
|
app=client.app,
|
|
264
261
|
_solution_settings=_solution_settings,
|
|
@@ -270,13 +267,12 @@ def _dash_callback_client_factory( # pyright: ignore[reportUnusedFunction]
|
|
|
270
267
|
return create_callback_client
|
|
271
268
|
|
|
272
269
|
|
|
273
|
-
@pytest.fixture
|
|
270
|
+
@pytest.fixture
|
|
274
271
|
def dash_http_client(
|
|
275
272
|
_solution_settings: Settings,
|
|
276
273
|
_method_client_factory: Callable[[], TestClient],
|
|
277
274
|
) -> Iterator[TestClient]:
|
|
278
275
|
with TestClient(create_app(_solution_settings)) as client:
|
|
279
|
-
client.event_hooks["request"] = DashClient._add_auth_from_headers # type: ignore
|
|
280
276
|
_apply_dependency_overrides(
|
|
281
277
|
app=client.app,
|
|
282
278
|
_solution_settings=_solution_settings,
|
|
@@ -288,7 +284,6 @@ def dash_http_client(
|
|
|
288
284
|
@pytest.fixture(scope="session")
|
|
289
285
|
def _mock_glow_client_internal_clients( # pyright: ignore[reportUnusedFunction]
|
|
290
286
|
_solution_api_client: TestClient,
|
|
291
|
-
dash_http_client: TestClient,
|
|
292
287
|
_dash_callback_client_factory: Callable[[], TestClient],
|
|
293
288
|
session_mocker: pytest_mock.MockerFixture,
|
|
294
289
|
) -> None:
|
|
@@ -302,23 +297,9 @@ def _mock_glow_client_internal_clients( # pyright: ignore[reportUnusedFunction]
|
|
|
302
297
|
# affects all Client instances in different contexts. In here we know in which
|
|
303
298
|
# context is the Client being initialized, so we can use the right TestClient.
|
|
304
299
|
is_from_dash_callback = is_within_dash_callback_context.get()
|
|
305
|
-
is_from_dashclient_initialize = is_within_dashclient_initialize_context.get()
|
|
306
300
|
|
|
307
301
|
client = None
|
|
308
|
-
if is_from_dash_callback
|
|
309
|
-
client = _dash_callback_client_factory()
|
|
310
|
-
elif is_from_dashclient_initialize:
|
|
311
|
-
client = dash_http_client
|
|
312
|
-
# On dashclient.py::_auth_header_from_ctx we access ctx.headers.
|
|
313
|
-
# In a real scenario, that attribute dict is set automatically by Dash
|
|
314
|
-
# to include the request headers, but not in this testing scenario.
|
|
315
|
-
context_value.set( # pyright: ignore[reportUnknownMemberType]
|
|
316
|
-
AttributeDict(
|
|
317
|
-
{"headers": {}},
|
|
318
|
-
),
|
|
319
|
-
)
|
|
320
|
-
else:
|
|
321
|
-
client = _solution_api_client
|
|
302
|
+
client = _dash_callback_client_factory() if is_from_dash_callback else _solution_api_client
|
|
322
303
|
|
|
323
304
|
object.__setattr__(self, "_http_client", client)
|
|
324
305
|
object.__setattr__(self, "_graphql_client", GraphQLClientMock(client=client))
|
|
@@ -331,13 +312,13 @@ def init_dashclient(
|
|
|
331
312
|
monkeysession: pytest.MonkeyPatch,
|
|
332
313
|
_solution_settings: Settings,
|
|
333
314
|
_mock_glow_client_internal_clients: None,
|
|
315
|
+
session_mocker: pytest_mock.MockerFixture,
|
|
334
316
|
):
|
|
335
317
|
monkeysession.setenv("GLOW_SOLUTION_DEFINITION", _solution_settings.glow_solution_definition)
|
|
336
318
|
monkeysession.setenv("GLOW_API_URL", "http://testserver")
|
|
337
319
|
monkeysession.setenv("GLOW_EXTERNAL_API_URL", "http://testserver")
|
|
338
320
|
monkeysession.setenv("GLOW_WS_EVENTS_ADDR", "ws://testserver")
|
|
339
|
-
|
|
340
|
-
DashClient.initialize()
|
|
321
|
+
session_mocker.patch("ansys.saf.glow._client.dashclient.DashClient._auth_header_from_ctx", return_value=None)
|
|
341
322
|
|
|
342
323
|
|
|
343
324
|
@pytest.fixture(scope="session")
|
|
@@ -386,16 +367,23 @@ def solution_logs(tmp_path: Path, request: pytest.FixtureRequest) -> Iterator[Pa
|
|
|
386
367
|
|
|
387
368
|
temp_log_path = tmp_path / "solution.log"
|
|
388
369
|
|
|
370
|
+
# To capture logs from solutions, which can be be in any namespace
|
|
371
|
+
root_logger = logging.getLogger()
|
|
372
|
+
# To capture logs from GLOW. By default, it configures two different loggers and logs from ansys
|
|
373
|
+
# are not propagated to root logger.
|
|
389
374
|
ansys_logger = logging.getLogger("ansys")
|
|
375
|
+
root_logger.setLevel(logging_level)
|
|
390
376
|
ansys_logger.setLevel(logging_level)
|
|
391
377
|
file_handler = logging.FileHandler(temp_log_path)
|
|
392
378
|
file_handler.setLevel(logging_level)
|
|
393
379
|
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(name)s - %(message)s")
|
|
394
380
|
file_handler.setFormatter(formatter)
|
|
381
|
+
root_logger.addHandler(file_handler)
|
|
395
382
|
ansys_logger.addHandler(file_handler)
|
|
396
383
|
|
|
397
384
|
yield temp_log_path
|
|
398
385
|
|
|
386
|
+
root_logger.removeHandler(file_handler)
|
|
399
387
|
ansys_logger.removeHandler(file_handler)
|
|
400
388
|
|
|
401
389
|
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/__init__.py
RENAMED
|
@@ -44,7 +44,7 @@ __all__ = [
|
|
|
44
44
|
"restore_default_hps_deployment",
|
|
45
45
|
]
|
|
46
46
|
|
|
47
|
-
if has_modules_installed(["ansys.hps.client"
|
|
47
|
+
if has_modules_installed(["ansys.hps.client"]):
|
|
48
48
|
from ansys.saf.testing._hps.hps_client import (
|
|
49
49
|
GetHpsJobIdsType,
|
|
50
50
|
get_available_application_on_hps,
|
|
@@ -22,6 +22,8 @@ if has_modules_installed(["dash", "ansys.saf.glow"]):
|
|
|
22
22
|
from ansys.saf.testing._solution.solution import (
|
|
23
23
|
# Import private fixtures so that pytest can discover them
|
|
24
24
|
_api_testclient, # type: ignore # noqa: F401
|
|
25
|
+
_created_dash_callback_clients, # type: ignore # noqa: F401
|
|
26
|
+
_created_method_clients, # type: ignore # noqa: F401
|
|
25
27
|
_dash_callback_client_factory, # type: ignore # noqa: F401
|
|
26
28
|
_glow_client, # type: ignore # noqa: F401
|
|
27
29
|
_method_client_factory, # type: ignore # noqa: F401
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/common.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/network.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_common/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_database/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_docker/docker.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_docker/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_frontend/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/__init__.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/hps.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_hps/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/__init__.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/pim.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pim/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/mocking.py
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/py.typed
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_pytest/pytest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/const.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_solution/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_system/process.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/_system/py.typed
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/common/__init__.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/common/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/database/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docker/__init__.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/docker/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/hps/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/mocking/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/network/py.typed
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pim/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/process/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pytest/__init__.py
RENAMED
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/pytest/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/selenium/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_saf_testing-0.11.dev0 → ansys_saf_testing-0.11.dev2}/src/ansys/saf/testing/solution/py.typed
RENAMED
|
File without changes
|