pytest-databases 0.2.4__tar.gz → 0.3.0__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 (63) hide show
  1. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/.pre-commit-config.yaml +2 -2
  2. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/CONTRIBUTING.rst +7 -11
  3. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/PKG-INFO +11 -5
  4. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/README.md +5 -3
  5. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/pyproject.toml +53 -5
  6. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/requirements/requirements-dev.txt +74 -31
  7. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/requirements/requirements-docs.txt +60 -23
  8. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/__init__.py +7 -7
  9. pytest_databases-0.3.0/src/pytest_databases/docker/alloydb_omni.py +111 -0
  10. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/cockroachdb.py +15 -1
  11. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.alloydb-omni.yml +18 -0
  12. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.cockroachdb.yml +19 -0
  13. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.dragonfly.yml +18 -0
  14. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.elasticsearch.yml +30 -0
  15. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.keydb.yml +8 -0
  16. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.mariadb.yml +17 -0
  17. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.mssql.yml +15 -0
  18. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.mysql.yml +43 -0
  19. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.oracle.yml +24 -0
  20. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.postgres.yml +44 -0
  21. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.redis.yml +8 -0
  22. pytest_databases-0.3.0/src/pytest_databases/docker/docker-compose.spanner.yml +23 -0
  23. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/dragonfly.py +23 -2
  24. pytest_databases-0.3.0/src/pytest_databases/docker/elastic_search.py +167 -0
  25. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/keydb.py +23 -2
  26. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/mariadb.py +14 -4
  27. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/mssql.py +18 -8
  28. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/mysql.py +21 -7
  29. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/oracle.py +16 -4
  30. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/postgres.py +22 -4
  31. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/redis.py +23 -2
  32. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/docker/spanner.py +15 -1
  33. pytest_databases-0.3.0/tests/docker/test_alloydb_omni.py +70 -0
  34. pytest_databases-0.3.0/tests/docker/test_elasticsearch.py +167 -0
  35. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_mariadb.py +2 -2
  36. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_mssql.py +2 -2
  37. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_mysql.py +2 -2
  38. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_oracle.py +2 -2
  39. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_postgres.py +2 -2
  40. pytest_databases-0.2.4/src/pytest_databases/docker/docker-compose.yml +0 -183
  41. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/.gitignore +0 -0
  42. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/.sourcery.yaml +0 -0
  43. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/.vscode/settings.json +0 -0
  44. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/CODEOWNERS +0 -0
  45. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/LICENSE +0 -0
  46. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/Makefile +0 -0
  47. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/requirements/requirements.txt +0 -0
  48. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/scripts/__init__.py +0 -0
  49. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/scripts/build_docs.py +0 -0
  50. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/scripts/convert_docs.sh +0 -0
  51. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/sonar-project.properties +0 -0
  52. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/__init__.py +0 -0
  53. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/__metadata__.py +0 -0
  54. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/helpers.py +0 -0
  55. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/src/pytest_databases/py.typed +0 -0
  56. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/__init__.py +0 -0
  57. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/conftest.py +0 -0
  58. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/__init__.py +0 -0
  59. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_cockroachdb.py +0 -0
  60. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_dragonfly.py +0 -0
  61. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_keydb.py +0 -0
  62. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_redis.py +0 -0
  63. {pytest_databases-0.2.4 → pytest_databases-0.3.0}/tests/docker/test_spanner.py +0 -0
@@ -2,7 +2,7 @@ exclude: "^docs/conf.py"
2
2
 
3
3
  repos:
4
4
  - repo: https://github.com/pre-commit/pre-commit-hooks
5
- rev: v4.5.0
5
+ rev: v4.6.0
6
6
  hooks:
7
7
  - id: trailing-whitespace
8
8
  - id: check-added-large-files
@@ -19,7 +19,7 @@ repos:
19
19
 
20
20
  # Ruff replaces black, flake8, autoflake and isort
21
21
  - repo: https://github.com/charliermarsh/ruff-pre-commit
22
- rev: "v0.3.5" # make sure this is always consistent with hatch configs
22
+ rev: "v0.3.7" # make sure this is always consistent with hatch configs
23
23
  hooks:
24
24
  - id: ruff
25
25
  args: [--config, ./pyproject.toml]
@@ -4,12 +4,12 @@ Contribution guide
4
4
  Setting up the environment
5
5
  --------------------------
6
6
 
7
- 1. Install `PDM <https://pdm.fming.dev/latest/>`_
8
- 2. Run ``pdm install -G:all`` to create a `virtual environment <https://docs.python.org/3/tutorial/venv.html>`_ and install
9
- the dependencies
10
- 3. If you're working on the documentation and need to build it locally, install the extra dependencies with ``pdm install -G:docs``
11
- 4. Install `pre-commit <https://pre-commit.com/>`_
12
- 5. Run ``pre-commit install`` to install pre-commit hooks
7
+ 1. ``make install-pipx``
8
+ 2. ``make install-hatch``
9
+ 3. ``make configure-hatch``
10
+ 4. ``make install``
11
+ 5. Install `pre-commit <https://pre-commit.com/>`_
12
+ 6. ``pre-commit install``
13
13
 
14
14
  Code contributions
15
15
  ------------------
@@ -59,11 +59,7 @@ The documentation is located in the ``/docs`` directory and is `ReST <https://do
59
59
  Running the docs locally
60
60
  ++++++++++++++++++++++++
61
61
 
62
- To run or build the docs locally, you need to first install the required dependencies:
63
-
64
- ``pdm install -G:docs``
65
-
66
- Then you can serve the documentation with ``make docs-serve``, or build them with ``make docs``.
62
+ You can serve the documentation with ``make serve-docs``, or build them with ``make docs``.
67
63
 
68
64
  Creating a new release
69
65
  ----------------------
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pytest-databases
3
- Version: 0.2.4
3
+ Version: 0.3.0
4
4
  Summary: Reusable database fixtures for any and all databases.
5
5
  Project-URL: Documentation, https://github.com/litestar-org/pytest-databases#readme
6
6
  Project-URL: Issues, https://github.com/litestar-org/pytest-databases/issues
@@ -8,7 +8,7 @@ Project-URL: Source, https://github.com/litestar-org/pytest-databases
8
8
  Author-email: Cody Fincher <cody.fincher@gmail.com>
9
9
  License-Expression: MIT
10
10
  License-File: LICENSE
11
- Keywords: bigquery,cockroachdb,database,duckdb,migration,mssql,mysql,oracle,postgres,redis,spanner
11
+ Keywords: alloydb,alloydbomni,bigquery,cockroachdb,database,duckdb,elasticsearch,migration,mssql,mysql,oracle,postgres,redis,spanner
12
12
  Classifier: Development Status :: 4 - Beta
13
13
  Classifier: Programming Language :: Python
14
14
  Classifier: Programming Language :: Python :: 3.8
@@ -24,6 +24,10 @@ Provides-Extra: cockroachdb
24
24
  Requires-Dist: psycopg; extra == 'cockroachdb'
25
25
  Provides-Extra: dragonfly
26
26
  Requires-Dist: redis; extra == 'dragonfly'
27
+ Provides-Extra: elasticsearch7
28
+ Requires-Dist: elasticsearch7[async]; extra == 'elasticsearch7'
29
+ Provides-Extra: elasticsearch8
30
+ Requires-Dist: elasticsearch8[async]; extra == 'elasticsearch8'
27
31
  Provides-Extra: keydb
28
32
  Requires-Dist: redis; extra == 'keydb'
29
33
  Provides-Extra: mssql
@@ -61,8 +65,8 @@ Reusable test fixtures for any and all databases.
61
65
  | Project | | Status |
62
66
  |-----------|:----|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
63
67
  | CI/CD | | [![Latest Release](https://github.com/litestar-org/pytest-databases/actions/workflows/publish.yml/badge.svg)](https://github.com/litestar-org/pytest-databases/actions/workflows/publish.yml) [![ci](https://github.com/litestar-org/pytest-databases/actions/workflows/ci.yml/badge.svg)](https://github.com/litestar-org/pytest-databases/actions/workflows/ci.yml) [![Documentation Building](https://github.com/litestar-org/pytest-databases/actions/workflows/docs.yml/badge.svg?branch=main)](https://github.com/litestar-org/pytest-databases/actions/workflows/docs.yml) |
64
- | Quality | | [![Coverage](https://codecov.io/github/litestar-org/pytest-databases/graph/badge.svg?token=vKez4Pycrc)](https://codecov.io/github/litestar-org/pytest-databases) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) |
65
- | Package | | [![PyPI - Version](https://img.shields.io/pypi/v/litestar?labelColor=202235&color=edb641&logo=python&logoColor=edb641)](https://badge.fury.io/py/litestar) ![PyPI - Support Python Versions](https://img.shields.io/pypi/pyversions/litestar?labelColor=202235&color=edb641&logo=python&logoColor=edb641) ![Starlite PyPI - Downloads](https://img.shields.io/pypi/dm/starlite?logo=python&label=starlite%20downloads&labelColor=202235&color=edb641&logoColor=edb641) ![Litestar PyPI - Downloads](https://img.shields.io/pypi/dm/litestar?logo=python&label=litestar%20downloads&labelColor=202235&color=edb641&logoColor=edb641) |
68
+ | Quality | | [![Coverage](https://codecov.io/github/litestar-org/pytest-databases/graph/badge.svg?token=vKez4Pycrc)](https://codecov.io/github/litestar-org/pytest-databases) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) |
69
+ | Package | | [![PyPI - Version](https://img.shields.io/pypi/v/pytest-databases?labelColor=202235&color=edb641&logo=python&logoColor=edb641)](https://badge.fury.io/py/pytest-databases) ![PyPI - Support Python Versions](https://img.shields.io/pypi/pyversions/pytest-databases?labelColor=202235&color=edb641&logo=python&logoColor=edb641) |
66
70
  | Community | | [![Reddit](https://img.shields.io/reddit/subreddit-subscribers/litestarapi?label=r%2FLitestar&logo=reddit&labelColor=202235&color=edb641&logoColor=edb641)](https://reddit.com/r/litestarapi) [![Discord](https://img.shields.io/discord/919193495116337154?labelColor=202235&color=edb641&label=chat%20on%20discord&logo=discord&logoColor=edb641)](https://discord.gg/litestar-919193495116337154) [![Matrix](https://img.shields.io/badge/chat%20on%20Matrix-bridged-202235?labelColor=202235&color=edb641&logo=matrix&logoColor=edb641)](https://matrix.to/#/#litestar:matrix.org) [![Medium](https://img.shields.io/badge/Medium-202235?labelColor=202235&color=edb641&logo=medium&logoColor=edb641)](https://blog.litestar.dev) [![Twitter](https://img.shields.io/twitter/follow/LitestarAPI?labelColor=202235&color=edb641&logo=twitter&logoColor=edb641&style=flat)](https://twitter.com/LitestarAPI) [![Blog](https://img.shields.io/badge/Blog-litestar.dev-202235?logo=blogger&labelColor=202235&color=edb641&logoColor=edb641)](https://blog.litestar.dev) |
67
71
  | Meta | | [![Litestar Project](https://img.shields.io/badge/Litestar%20Org-%E2%AD%90%20Litestar-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://github.com/litestar-org/pytest-databases) [![types - Mypy](https://img.shields.io/badge/types-Mypy-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://github.com/python/mypy) [![License - MIT](https://img.shields.io/badge/license-MIT-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://spdx.org/licenses/) [![Litestar Sponsors](https://img.shields.io/badge/Sponsor-%E2%9D%A4-%23edb641.svg?&logo=github&logoColor=edb641&labelColor=202235)](https://github.com/sponsors/litestar-org) [![linting - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json&labelColor=202235)](https://github.com/astral-sh/ruff) [![code style - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/format.json&labelColor=202235)](https://github.com/psf/black)|
68
72
 
@@ -88,11 +92,13 @@ It is designed to offer pre-configured testing setups for many different types a
88
92
  - **MySQL**: Version 5.6, 5.7 and 8 are available
89
93
  - **Oracle**: Version 18c XE and 23C Free are available
90
94
  - **SQL Server**: Version 2022 is available
91
- - **Spanner**: The latest cloud-emulator from Google is available
95
+ - **Google AlloyDB Omni**: Simplified Omni installation for easy testing.
96
+ - **Google Spanner**: The latest cloud-emulator from Google is available
92
97
  - **Cockroach**: Version 23.1-latest is available
93
98
  - **Redis**: Latest server
94
99
  - **Dragonfly**: Latest server
95
100
  - **KeyDB**: Latest server
101
+ - **Elasticsearch**: Version 7 and 8 are available
96
102
 
97
103
  ## Contributing
98
104
 
@@ -17,8 +17,8 @@ Reusable test fixtures for any and all databases.
17
17
  | Project | | Status |
18
18
  |-----------|:----|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
19
19
  | CI/CD | | [![Latest Release](https://github.com/litestar-org/pytest-databases/actions/workflows/publish.yml/badge.svg)](https://github.com/litestar-org/pytest-databases/actions/workflows/publish.yml) [![ci](https://github.com/litestar-org/pytest-databases/actions/workflows/ci.yml/badge.svg)](https://github.com/litestar-org/pytest-databases/actions/workflows/ci.yml) [![Documentation Building](https://github.com/litestar-org/pytest-databases/actions/workflows/docs.yml/badge.svg?branch=main)](https://github.com/litestar-org/pytest-databases/actions/workflows/docs.yml) |
20
- | Quality | | [![Coverage](https://codecov.io/github/litestar-org/pytest-databases/graph/badge.svg?token=vKez4Pycrc)](https://codecov.io/github/litestar-org/pytest-databases) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_litestar&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_litestar) |
21
- | Package | | [![PyPI - Version](https://img.shields.io/pypi/v/litestar?labelColor=202235&color=edb641&logo=python&logoColor=edb641)](https://badge.fury.io/py/litestar) ![PyPI - Support Python Versions](https://img.shields.io/pypi/pyversions/litestar?labelColor=202235&color=edb641&logo=python&logoColor=edb641) ![Starlite PyPI - Downloads](https://img.shields.io/pypi/dm/starlite?logo=python&label=starlite%20downloads&labelColor=202235&color=edb641&logoColor=edb641) ![Litestar PyPI - Downloads](https://img.shields.io/pypi/dm/litestar?logo=python&label=litestar%20downloads&labelColor=202235&color=edb641&logoColor=edb641) |
20
+ | Quality | | [![Coverage](https://codecov.io/github/litestar-org/pytest-databases/graph/badge.svg?token=vKez4Pycrc)](https://codecov.io/github/litestar-org/pytest-databases) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_pytest_databases&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_pytest_databases) |
21
+ | Package | | [![PyPI - Version](https://img.shields.io/pypi/v/pytest-databases?labelColor=202235&color=edb641&logo=python&logoColor=edb641)](https://badge.fury.io/py/pytest-databases) ![PyPI - Support Python Versions](https://img.shields.io/pypi/pyversions/pytest-databases?labelColor=202235&color=edb641&logo=python&logoColor=edb641) |
22
22
  | Community | | [![Reddit](https://img.shields.io/reddit/subreddit-subscribers/litestarapi?label=r%2FLitestar&logo=reddit&labelColor=202235&color=edb641&logoColor=edb641)](https://reddit.com/r/litestarapi) [![Discord](https://img.shields.io/discord/919193495116337154?labelColor=202235&color=edb641&label=chat%20on%20discord&logo=discord&logoColor=edb641)](https://discord.gg/litestar-919193495116337154) [![Matrix](https://img.shields.io/badge/chat%20on%20Matrix-bridged-202235?labelColor=202235&color=edb641&logo=matrix&logoColor=edb641)](https://matrix.to/#/#litestar:matrix.org) [![Medium](https://img.shields.io/badge/Medium-202235?labelColor=202235&color=edb641&logo=medium&logoColor=edb641)](https://blog.litestar.dev) [![Twitter](https://img.shields.io/twitter/follow/LitestarAPI?labelColor=202235&color=edb641&logo=twitter&logoColor=edb641&style=flat)](https://twitter.com/LitestarAPI) [![Blog](https://img.shields.io/badge/Blog-litestar.dev-202235?logo=blogger&labelColor=202235&color=edb641&logoColor=edb641)](https://blog.litestar.dev) |
23
23
  | Meta | | [![Litestar Project](https://img.shields.io/badge/Litestar%20Org-%E2%AD%90%20Litestar-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://github.com/litestar-org/pytest-databases) [![types - Mypy](https://img.shields.io/badge/types-Mypy-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://github.com/python/mypy) [![License - MIT](https://img.shields.io/badge/license-MIT-202235.svg?logo=python&labelColor=202235&color=edb641&logoColor=edb641)](https://spdx.org/licenses/) [![Litestar Sponsors](https://img.shields.io/badge/Sponsor-%E2%9D%A4-%23edb641.svg?&logo=github&logoColor=edb641&labelColor=202235)](https://github.com/sponsors/litestar-org) [![linting - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json&labelColor=202235)](https://github.com/astral-sh/ruff) [![code style - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/format.json&labelColor=202235)](https://github.com/psf/black)|
24
24
 
@@ -44,11 +44,13 @@ It is designed to offer pre-configured testing setups for many different types a
44
44
  - **MySQL**: Version 5.6, 5.7 and 8 are available
45
45
  - **Oracle**: Version 18c XE and 23C Free are available
46
46
  - **SQL Server**: Version 2022 is available
47
- - **Spanner**: The latest cloud-emulator from Google is available
47
+ - **Google AlloyDB Omni**: Simplified Omni installation for easy testing.
48
+ - **Google Spanner**: The latest cloud-emulator from Google is available
48
49
  - **Cockroach**: Version 23.1-latest is available
49
50
  - **Redis**: Latest server
50
51
  - **Dragonfly**: Latest server
51
52
  - **KeyDB**: Latest server
53
+ - **Elasticsearch**: Version 7 and 8 are available
52
54
 
53
55
  ## Contributing
54
56
 
@@ -12,7 +12,7 @@ license = "MIT"
12
12
  name = "pytest-databases"
13
13
  readme = "README.md"
14
14
  requires-python = ">=3.8"
15
- version = "0.2.4"
15
+ version = "0.3.0"
16
16
  #
17
17
  authors = [{ name = "Cody Fincher", email = "cody.fincher@gmail.com" }]
18
18
  keywords = [
@@ -25,8 +25,11 @@ keywords = [
25
25
  "duckdb",
26
26
  "bigquery",
27
27
  "spanner",
28
+ "alloydb",
29
+ "alloydbomni",
28
30
  "cockroachdb",
29
31
  "redis",
32
+ "elasticsearch",
30
33
  ]
31
34
  # options under https://pypi.org/classifiers/
32
35
  classifiers = [
@@ -51,6 +54,8 @@ Source = "https://github.com/litestar-org/pytest-databases"
51
54
  [project.optional-dependencies]
52
55
  cockroachdb = ["psycopg"]
53
56
  dragonfly = ["redis"]
57
+ elasticsearch7 = ["elasticsearch7[async]"]
58
+ elasticsearch8 = ["elasticsearch8[async]"]
54
59
  keydb = ["redis"]
55
60
  mssql = ["aioodbc"]
56
61
  mysql = ["asyncmy>=0.2.9"]
@@ -101,7 +106,18 @@ extra-dependencies = [
101
106
  "pytest-click",
102
107
  "pytest-xdist",
103
108
  ]
104
- features = ["oracle", "mysql", "mssql", "postgres", "spanner", "cockroachdb", "spanner", "redis"]
109
+ features = [
110
+ "oracle",
111
+ "mysql",
112
+ "mssql",
113
+ "postgres",
114
+ "spanner",
115
+ "cockroachdb",
116
+ "spanner",
117
+ "redis",
118
+ "elasticsearch7",
119
+ "elasticsearch8",
120
+ ]
105
121
  template = "default"
106
122
  type = "virtual"
107
123
 
@@ -147,7 +163,18 @@ extra-dependencies = [
147
163
  "sphinxcontrib-mermaid>=0.9.2",
148
164
  "auto-pytabs[sphinx]>=0.4.0",
149
165
  ]
150
- features = ["oracle", "mysql", "mssql", "postgres", "spanner", "cockroachdb", "spanner", "redis"]
166
+ features = [
167
+ "oracle",
168
+ "mysql",
169
+ "mssql",
170
+ "postgres",
171
+ "spanner",
172
+ "cockroachdb",
173
+ "spanner",
174
+ "redis",
175
+ "elasticsearch7",
176
+ "elasticsearch8",
177
+ ]
151
178
  lock-filename = "requirements/requirements-docs.txt"
152
179
  pip-compile-constraint = "default"
153
180
  python = "3.11"
@@ -208,7 +235,17 @@ extra-dependencies = [
208
235
  "types-docutils",
209
236
  "types-redis",
210
237
  ]
211
- features = ["oracle", "mysql", "mssql", "postgres", "cockroachdb", "spanner", "redis"]
238
+ features = [
239
+ "oracle",
240
+ "mysql",
241
+ "mssql",
242
+ "postgres",
243
+ "cockroachdb",
244
+ "spanner",
245
+ "redis",
246
+ "elasticsearch7",
247
+ "elasticsearch8",
248
+ ]
212
249
  lock-filename = "requirements/requirements-dev.txt"
213
250
  path = ".venv/"
214
251
  pip-compile-constraint = "docs"
@@ -236,7 +273,17 @@ extra-dependencies = [
236
273
  "types-docutils",
237
274
  "types-redis",
238
275
  ]
239
- features = ["oracle", "mysql", "mssql", "postgres", "spanner", "cockroachdb", "redis"]
276
+ features = [
277
+ "oracle",
278
+ "mysql",
279
+ "mssql",
280
+ "postgres",
281
+ "spanner",
282
+ "cockroachdb",
283
+ "redis",
284
+ "elasticsearch7",
285
+ "elasticsearch8",
286
+ ]
240
287
  python = "3.11"
241
288
  template = "docs"
242
289
 
@@ -530,6 +577,7 @@ markers = [
530
577
  "spanner: Google Cloud Spanner Tests",
531
578
  "duckdb: DuckDB Tests",
532
579
  "mssql: Microsoft SQL Server Tests",
580
+ "elasticsearch: Elasticsearch Tests",
533
581
  ]
534
582
  minversion = "6.0"
535
583
  testpaths = ["tests"]
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # This file is autogenerated by hatch-pip-compile with Python 3.11
3
3
  #
4
- # [constraints] requirements/requirements-docs.txt (SHA256: a958627bb77a22b4985897b3caca965ef55f5c9d0f1477839af0ddc3d100cd1e)
4
+ # [constraints] requirements/requirements-docs.txt (SHA256: bc66ec3f548a65764214d7adf74c74992465c90498f84a07b19b829ae70e0bfb)
5
5
  #
6
6
  # - nodeenv
7
7
  # - cython
@@ -39,6 +39,8 @@
39
39
  # - types-redis
40
40
  # - pytest
41
41
  # - psycopg
42
+ # - elasticsearch7[async]
43
+ # - elasticsearch8[async]
42
44
  # - aioodbc
43
45
  # - asyncmy>=0.2.9
44
46
  # - oracledb
@@ -49,10 +51,19 @@
49
51
 
50
52
  accessible-pygments==0.0.4
51
53
  # via pydata-sphinx-theme
54
+ aiohttp==3.9.5
55
+ # via
56
+ # elasticsearch7
57
+ # elasticsearch8
52
58
  aioodbc==0.5.0
59
+ aiosignal==1.3.1
60
+ # via aiohttp
53
61
  alabaster==0.7.16
54
62
  # via sphinx
55
63
  anyio==4.3.0
64
+ # via
65
+ # starlette
66
+ # watchfiles
56
67
  apeye==1.4.1
57
68
  # via sphinx-toolbox
58
69
  apeye-core==1.1.5
@@ -65,6 +76,8 @@ asyncmy==0.2.9
65
76
  asyncpg==0.29.0
66
77
  # via asyncpg-stubs
67
78
  asyncpg-stubs==0.29.1
79
+ attrs==23.2.0
80
+ # via aiohttp
68
81
  auto-pytabs==0.4.0
69
82
  autodocsumm==0.2.12
70
83
  # via sphinx-toolbox
@@ -81,7 +94,10 @@ cachecontrol==0.14.0
81
94
  cachetools==5.3.3
82
95
  # via google-auth
83
96
  certifi==2024.2.2
84
- # via requests
97
+ # via
98
+ # elastic-transport
99
+ # elasticsearch7
100
+ # requests
85
101
  cffi==1.16.0
86
102
  # via cryptography
87
103
  cfgv==3.4.0
@@ -95,6 +111,7 @@ click==8.1.7
95
111
  # rich-click
96
112
  # shandy-sqlfmt
97
113
  # sphinx-click
114
+ # uvicorn
98
115
  colorama==0.4.6
99
116
  # via sphinx-autobuild
100
117
  coverage==7.4.4
@@ -115,7 +132,7 @@ dill==0.3.8
115
132
  # via pylint
116
133
  distlib==0.3.8
117
134
  # via virtualenv
118
- docutils==0.20.1
135
+ docutils==0.21.1
119
136
  # via
120
137
  # pydata-sphinx-theme
121
138
  # sphinx
@@ -129,15 +146,23 @@ domdf-python-tools==3.8.0.post2
129
146
  # apeye-core
130
147
  # dict2css
131
148
  # sphinx-toolbox
132
- duckdb==0.10.1
149
+ duckdb==0.10.2
133
150
  # via harlequin
134
- execnet==2.0.2
151
+ elastic-transport==8.13.0
152
+ # via elasticsearch8
153
+ elasticsearch7==7.9.1
154
+ elasticsearch8==8.13.0
155
+ execnet==2.1.1
135
156
  # via pytest-xdist
136
- filelock==3.13.3
157
+ filelock==3.13.4
137
158
  # via
138
159
  # cachecontrol
139
160
  # sphinx-toolbox
140
161
  # virtualenv
162
+ frozenlist==1.4.1
163
+ # via
164
+ # aiohttp
165
+ # aiosignal
141
166
  google-api-core==2.18.0
142
167
  # via
143
168
  # google-cloud-core
@@ -167,12 +192,14 @@ grpcio==1.62.1
167
192
  # grpcio-status
168
193
  grpcio-status==1.62.1
169
194
  # via google-api-core
170
- harlequin==1.16.2
195
+ h11==0.14.0
196
+ # via uvicorn
197
+ harlequin==1.17.0
171
198
  html5lib==1.1
172
199
  # via sphinx-toolbox
173
200
  identify==2.5.35
174
201
  # via pre-commit
175
- idna==3.6
202
+ idna==3.7
176
203
  # via
177
204
  # anyio
178
205
  # apeye-core
@@ -192,8 +219,6 @@ jinja2==3.1.3
192
219
  linkify-it-py==2.0.3
193
220
  # via markdown-it-py
194
221
  litestar-sphinx-theme @ git+https://github.com/litestar-org/litestar-sphinx-theme.git@c5ce66aadc8f910c24f54bf0d172798c237a67eb
195
- livereload==2.6.3
196
- # via sphinx-autobuild
197
222
  markdown-it-py==3.0.0
198
223
  # via
199
224
  # mdit-py-plugins
@@ -212,7 +237,9 @@ mdurl==0.1.2
212
237
  msgpack==1.0.8
213
238
  # via cachecontrol
214
239
  multidict==6.0.5
215
- # via yarl
240
+ # via
241
+ # aiohttp
242
+ # yarl
216
243
  mypy==1.9.0
217
244
  mypy-extensions==1.0.0
218
245
  # via mypy
@@ -221,8 +248,10 @@ natsort==8.4.0
221
248
  nodeenv==1.8.0
222
249
  # via pre-commit
223
250
  numpy==1.26.4
224
- # via pyarrow
225
- oracledb==2.1.1
251
+ # via
252
+ # harlequin
253
+ # pyarrow
254
+ oracledb==2.1.2
226
255
  packaging==24.0
227
256
  # via
228
257
  # pydata-sphinx-theme
@@ -318,23 +347,21 @@ ruamel-yaml==0.18.6
318
347
  # via sphinx-toolbox
319
348
  ruamel-yaml-clib==0.2.8
320
349
  # via ruamel-yaml
321
- ruff==0.3.5
350
+ ruff==0.3.7
322
351
  # via auto-pytabs
323
- setuptools==69.2.0
352
+ setuptools==69.5.1
324
353
  # via nodeenv
325
354
  shandy-sqlfmt==0.21.2
326
355
  # via harlequin
327
356
  six==1.16.0
328
- # via
329
- # html5lib
330
- # livereload
357
+ # via html5lib
331
358
  sniffio==1.3.1
332
359
  # via anyio
333
360
  snowballstemmer==2.2.0
334
361
  # via sphinx
335
362
  soupsieve==2.5
336
363
  # via beautifulsoup4
337
- sphinx==7.2.6
364
+ sphinx==7.3.6
338
365
  # via
339
366
  # auto-pytabs
340
367
  # autodocsumm
@@ -347,8 +374,8 @@ sphinx==7.2.6
347
374
  # sphinx-prompt
348
375
  # sphinx-tabs
349
376
  # sphinx-toolbox
350
- sphinx-autobuild==2024.2.4
351
- sphinx-autodoc-typehints==2.0.0
377
+ sphinx-autobuild==2024.4.16
378
+ sphinx-autodoc-typehints==2.1.0
352
379
  # via sphinx-toolbox
353
380
  sphinx-click==5.1.0
354
381
  sphinx-copybutton==0.5.2
@@ -374,8 +401,10 @@ sphinxcontrib-qthelp==1.0.7
374
401
  # via sphinx
375
402
  sphinxcontrib-serializinghtml==1.1.10
376
403
  # via sphinx
377
- sqlparse==0.4.4
404
+ sqlparse==0.5.0
378
405
  # via google-cloud-spanner
406
+ starlette==0.37.2
407
+ # via sphinx-autobuild
379
408
  tabulate==0.9.0
380
409
  # via sphinx-toolbox
381
410
  termcolor==2.4.0
@@ -393,8 +422,6 @@ tomlkit==0.12.4
393
422
  # via
394
423
  # harlequin
395
424
  # pylint
396
- tornado==6.4
397
- # via livereload
398
425
  tqdm==4.66.2
399
426
  # via shandy-sqlfmt
400
427
  tree-sitter==0.20.4
@@ -405,15 +432,19 @@ tree-sitter-languages==1.9.1
405
432
  # via
406
433
  # textual
407
434
  # textual-textarea
435
+ types-cffi==1.16.0.20240331
436
+ # via types-pyopenssl
408
437
  types-click==7.1.8
409
438
  types-decorator==5.1.8.20240310
410
- types-docutils==0.20.0.20240331
411
- types-pyopenssl==24.0.0.20240311
439
+ types-docutils==0.20.0.20240406
440
+ types-pyopenssl==24.0.0.20240417
412
441
  # via types-redis
413
442
  types-pyyaml==6.0.12.20240311
414
- types-redis==4.6.0.20240311
443
+ types-redis==4.6.0.20240417
444
+ types-setuptools==69.5.0.20240415
445
+ # via types-cffi
415
446
  types-six==1.16.21.20240311
416
- typing-extensions==4.10.0
447
+ typing-extensions==4.11.0
417
448
  # via
418
449
  # asyncpg-stubs
419
450
  # domdf-python-tools
@@ -426,18 +457,30 @@ typing-extensions==4.10.0
426
457
  uc-micro-py==1.0.3
427
458
  # via linkify-it-py
428
459
  urllib3==2.2.1
429
- # via requests
460
+ # via
461
+ # elastic-transport
462
+ # elasticsearch7
463
+ # requests
464
+ uvicorn==0.29.0
465
+ # via sphinx-autobuild
430
466
  vcrpy==6.0.1
431
467
  # via pytest-vcr
432
- virtualenv==20.25.1
468
+ virtualenv==20.25.3
433
469
  # via pre-commit
470
+ watchfiles==0.21.0
471
+ # via sphinx-autobuild
434
472
  wcwidth==0.2.13
435
473
  # via prompt-toolkit
436
474
  webencodings==0.5.1
437
475
  # via html5lib
476
+ websockets==12.0
477
+ # via sphinx-autobuild
438
478
  wrapt==1.16.0
439
479
  # via
440
480
  # deprecated
441
481
  # vcrpy
442
482
  yarl==1.9.4
443
- # via vcrpy
483
+ # via
484
+ # aiohttp
485
+ # elasticsearch7
486
+ # vcrpy