meilisearch-python-sdk 7.2.2__tar.gz → 7.2.3__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 (111) hide show
  1. meilisearch_python_sdk-7.2.3/.github/release-draft-template.yaml +24 -0
  2. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/workflows/docs_publish.yml +1 -1
  3. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/workflows/nightly_testing.yml +1 -1
  4. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/workflows/pypi_publish.yml +1 -1
  5. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/workflows/testing.yml +7 -7
  6. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.pre-commit-config.yaml +3 -3
  7. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/PKG-INFO +1 -1
  8. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docker-compose.https.yml +1 -1
  9. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docker-compose.yml +1 -1
  10. meilisearch_python_sdk-7.2.3/meilisearch_python_sdk/_version.py +1 -0
  11. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/errors.py +8 -1
  12. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/pyproject.toml +3 -4
  13. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_errors.py +20 -0
  14. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/uv.lock +156 -171
  15. meilisearch_python_sdk-7.2.2/.github/release-draft-template.yaml +0 -30
  16. meilisearch_python_sdk-7.2.2/meilisearch_python_sdk/_version.py +0 -1
  17. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/FUNDING.yml +0 -0
  18. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/renovate.json5 +0 -0
  19. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.github/workflows/release-drafter.yml +0 -0
  20. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/.gitignore +0 -0
  21. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/CONTRIBUTING.md +0 -0
  22. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/LICENSE +0 -0
  23. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/README.md +0 -0
  24. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/assets/add_in_batches.png +0 -0
  25. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/assets/searches.png +0 -0
  26. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/codecov.yml +0 -0
  27. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/datasets/small_movies.json +0 -0
  28. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/.nojekyll +0 -0
  29. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/CNAME +0 -0
  30. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/async_client_api.md +0 -0
  31. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/async_index_api.md +0 -0
  32. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/client_api.md +0 -0
  33. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/css/custom.css +0 -0
  34. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/decorators_api.md +0 -0
  35. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/index.md +0 -0
  36. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/index_api.md +0 -0
  37. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/js/umami.js +0 -0
  38. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/json_handler.md +0 -0
  39. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/overrides/partials/footer.html +0 -0
  40. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/plugins.md +0 -0
  41. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/docs/pydantic.md +0 -0
  42. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/.gitignore +0 -0
  43. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/README.md +0 -0
  44. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/__init__.py +0 -0
  45. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/add_documents_decorator.py +0 -0
  46. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/add_documents_in_batches.py +0 -0
  47. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/async_add_documents_decorator.py +0 -0
  48. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/async_add_documents_in_batches.py +0 -0
  49. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/async_documents_and_search_results.py +0 -0
  50. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/async_search_tracker.py +0 -0
  51. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/async_update_settings.py +0 -0
  52. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/documents_and_search_results.py +0 -0
  53. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/fastapi_example.py +0 -0
  54. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/orjson_example.py +0 -0
  55. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/pyproject.toml +0 -0
  56. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/requirements.txt +0 -0
  57. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/search_tracker.py +0 -0
  58. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/tests/__init__.py +0 -0
  59. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/tests/conftest.py +0 -0
  60. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/tests/test_async_examples.py +0 -0
  61. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/tests/test_examples.py +0 -0
  62. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/examples/update_settings.py +0 -0
  63. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/justfile +0 -0
  64. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/__init__.py +0 -0
  65. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_batch.py +0 -0
  66. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_client/__init__.py +0 -0
  67. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_client/_async_client.py +0 -0
  68. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_client/_base_client.py +0 -0
  69. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_client/_client.py +0 -0
  70. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_client/_common.py +0 -0
  71. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_http_requests.py +0 -0
  72. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_task.py +0 -0
  73. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/_utils.py +0 -0
  74. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/decorators.py +0 -0
  75. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/index/__init__.py +0 -0
  76. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/index/_common.py +0 -0
  77. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/index/async_index.py +0 -0
  78. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/index/index.py +0 -0
  79. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/json_handler.py +0 -0
  80. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/__init__.py +0 -0
  81. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/batch.py +0 -0
  82. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/client.py +0 -0
  83. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/documents.py +0 -0
  84. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/health.py +0 -0
  85. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/index.py +0 -0
  86. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/search.py +0 -0
  87. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/settings.py +0 -0
  88. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/task.py +0 -0
  89. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/version.py +0 -0
  90. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/models/webhook.py +0 -0
  91. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/plugins.py +0 -0
  92. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/py.typed +0 -0
  93. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/meilisearch_python_sdk/types.py +0 -0
  94. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/mkdocs.yaml +0 -0
  95. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/__init__.py +0 -0
  96. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/conftest.py +0 -0
  97. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_async_client.py +0 -0
  98. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_async_documents.py +0 -0
  99. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_async_index.py +0 -0
  100. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_async_index_plugins.py +0 -0
  101. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_async_search.py +0 -0
  102. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_client.py +0 -0
  103. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_decorators.py +0 -0
  104. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_documents.py +0 -0
  105. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_http_requests.py +0 -0
  106. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_index.py +0 -0
  107. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_index_plugins.py +0 -0
  108. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_search.py +0 -0
  109. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_settings_models.py +0 -0
  110. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_utils.py +0 -0
  111. {meilisearch_python_sdk-7.2.2 → meilisearch_python_sdk-7.2.3}/tests/test_version.py +0 -0
@@ -0,0 +1,24 @@
1
+ name-template: "v$RESOLVED_VERSION"
2
+ tag-template: "v$RESOLVED_VERSION"
3
+ categories:
4
+ - type: "pre-exclude"
5
+ when:
6
+ labels:
7
+ - "dependencies"
8
+ - "skip-changelog"
9
+ - title: "⚠️ Breaking changes"
10
+ semver-increment: "major"
11
+ when:
12
+ label: "breaking-change"
13
+ - title: "Features"
14
+ semver-increment: "minor"
15
+ when:
16
+ label: "enhancement"
17
+ - title: "Bug Fixes"
18
+ when:
19
+ label: "bug"
20
+ change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
21
+ template: |
22
+ ## Changes
23
+
24
+ $CHANGES
@@ -14,7 +14,7 @@ jobs:
14
14
  runs-on: ubuntu-latest
15
15
  environment: github-pages
16
16
  steps:
17
- - uses: actions/checkout@v6
17
+ - uses: actions/checkout@v7
18
18
  - name: Install uv
19
19
  uses: astral-sh/setup-uv@v8.2.0
20
20
  with:
@@ -12,7 +12,7 @@ jobs:
12
12
  fail-fast: false
13
13
  runs-on: ubuntu-latest
14
14
  steps:
15
- - uses: actions/checkout@v6
15
+ - uses: actions/checkout@v7
16
16
  - name: Install uv
17
17
  uses: astral-sh/setup-uv@v8.2.0
18
18
  with:
@@ -12,7 +12,7 @@ jobs:
12
12
  # For PyPI's trusted publishing.
13
13
  id-token: write
14
14
  steps:
15
- - uses: actions/checkout@v6
15
+ - uses: actions/checkout@v7
16
16
  - name: Install uv
17
17
  uses: astral-sh/setup-uv@v8.2.0
18
18
  with:
@@ -11,7 +11,7 @@ jobs:
11
11
  linting:
12
12
  runs-on: ubuntu-latest
13
13
  steps:
14
- - uses: actions/checkout@v6
14
+ - uses: actions/checkout@v7
15
15
  - name: install Just
16
16
  uses: taiki-e/install-action@just
17
17
  - name: Install uv
@@ -35,7 +35,7 @@ jobs:
35
35
  python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
36
36
  runs-on: ubuntu-latest
37
37
  steps:
38
- - uses: actions/checkout@v6
38
+ - uses: actions/checkout@v7
39
39
  - name: install Just
40
40
  uses: taiki-e/install-action@just
41
41
  - name: Install uv
@@ -65,7 +65,7 @@ jobs:
65
65
  python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
66
66
  runs-on: ubuntu-latest
67
67
  steps:
68
- - uses: actions/checkout@v6
68
+ - uses: actions/checkout@v7
69
69
  - name: install Just
70
70
  uses: taiki-e/install-action@just
71
71
  - name: Install uv
@@ -106,7 +106,7 @@ jobs:
106
106
  python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
107
107
  runs-on: ubuntu-latest
108
108
  steps:
109
- - uses: actions/checkout@v6
109
+ - uses: actions/checkout@v7
110
110
  - name: install Just
111
111
  uses: taiki-e/install-action@just
112
112
  - name: Install uv
@@ -136,7 +136,7 @@ jobs:
136
136
  python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
137
137
  runs-on: ubuntu-latest
138
138
  steps:
139
- - uses: actions/checkout@v6
139
+ - uses: actions/checkout@v7
140
140
  - name: install Just
141
141
  uses: taiki-e/install-action@just
142
142
  - name: Install uv
@@ -176,7 +176,7 @@ jobs:
176
176
  python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
177
177
  runs-on: ubuntu-latest
178
178
  steps:
179
- - uses: actions/checkout@v6
179
+ - uses: actions/checkout@v7
180
180
  - name: install Just
181
181
  uses: taiki-e/install-action@just
182
182
  - name: Set up Python ${{ matrix.python-version }}
@@ -191,7 +191,7 @@ jobs:
191
191
  docs:
192
192
  runs-on: ubuntu-latest
193
193
  steps:
194
- - uses: actions/checkout@v6
194
+ - uses: actions/checkout@v7
195
195
  - name: install Just
196
196
  uses: taiki-e/install-action@just
197
197
  - name: Install uv
@@ -12,7 +12,7 @@ repos:
12
12
  - id: end-of-file-fixer
13
13
  - id: trailing-whitespace
14
14
  - repo: https://github.com/facebook/pyrefly-pre-commit
15
- rev: 1.1.0
15
+ rev: 1.1.1
16
16
  hooks:
17
17
  - id: pyrefly-check
18
18
  name: pyrefly
@@ -20,11 +20,11 @@ repos:
20
20
  language: system
21
21
  entry: uv run pyrefly check
22
22
  - repo: https://github.com/astral-sh/ruff-pre-commit
23
- rev: v0.15.17
23
+ rev: v0.15.18
24
24
  hooks:
25
25
  - id: ruff-check
26
26
  args: [--fix, --exit-non-zero-on-fix]
27
27
  - repo: https://github.com/rvben/rumdl-pre-commit
28
- rev: v0.2.18
28
+ rev: v0.2.20
29
29
  hooks:
30
30
  - id: rumdl-fmt
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meilisearch-python-sdk
3
- Version: 7.2.2
3
+ Version: 7.2.3
4
4
  Summary: A Python client providing both async and sync support for the Meilisearch API
5
5
  Project-URL: repository, https://github.com/sanders41/meilisearch-python-sdk
6
6
  Project-URL: homepage, https://github.com/sanders41/meilisearch-python-sdk
@@ -1,6 +1,6 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:v1.47.0
3
+ image: getmeili/meilisearch:v1.48.1
4
4
  ports:
5
5
  - "7700:7700"
6
6
  environment:
@@ -1,6 +1,6 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:v1.47.0
3
+ image: getmeili/meilisearch:v1.48.1
4
4
  ports:
5
5
  - "7700:7700"
6
6
  environment:
@@ -0,0 +1 @@
1
+ VERSION = "7.2.3"
@@ -1,3 +1,5 @@
1
+ import json
2
+
1
3
  from httpx2 import Response
2
4
 
3
5
 
@@ -35,8 +37,13 @@ class MeilisearchApiError(MeilisearchError):
35
37
  self.message = ""
36
38
  self.link = ""
37
39
  self.error_type = ""
40
+ error_json = None
38
41
  if response.content:
39
- error_json = response.json()
42
+ try:
43
+ error_json = response.json()
44
+ except json.JSONDecodeError:
45
+ error_json = None
46
+ if isinstance(error_json, dict):
40
47
  self.message = f"Error message: {error_json.get('message') or ''}"
41
48
  self.code = f"{error_json.get('code') or ''}"
42
49
  self.error_type = f"{error_json.get('type') or ''}"
@@ -37,15 +37,15 @@ all = ["orjson"]
37
37
  [dependency-groups]
38
38
  dev = [
39
39
  "mkdocstrings[python]==1.0.4",
40
- "pytest==9.1.0",
40
+ "pytest==9.1.1",
41
41
  "pytest-cov==7.1.0",
42
42
  "pytest-asyncio==1.4.0",
43
43
  "pytest-xdist==3.8.0",
44
44
  "prek==0.4.5",
45
- "ruff==0.15.17",
45
+ "ruff==0.15.18",
46
46
  "types-aiofiles==25.1.0.20260518",
47
47
  "typing-extensions==4.15.0",
48
- "zensical==0.0.45",
48
+ "zensical==0.0.46",
49
49
  "pyrefly>=1.1.0",
50
50
  ]
51
51
 
@@ -81,7 +81,6 @@ check-unannotated-defs = false
81
81
 
82
82
  [tool.ruff]
83
83
  line-length = 100
84
- target-version = "py310"
85
84
  fix = true
86
85
 
87
86
  [tool.ruff.lint]
@@ -19,6 +19,26 @@ def test_meilisearch_api_error():
19
19
  assert expected in str(got)
20
20
 
21
21
 
22
+ def test_meilisearch_api_error_invalid_json():
23
+ expected = "test"
24
+ response = Response(
25
+ status_code=500, text="not json", headers={"content-type": "application/json"}
26
+ )
27
+ got = MeilisearchApiError(expected, response)
28
+
29
+ assert expected in str(got)
30
+
31
+
32
+ def test_meilisearch_api_error_json_not_a_dict():
33
+ expected = "test"
34
+ response = Response(
35
+ status_code=500, text="[1, 2, 3]", headers={"content-type": "application/json"}
36
+ )
37
+ got = MeilisearchApiError(expected, response)
38
+
39
+ assert expected in str(got)
40
+
41
+
22
42
  def test_meilisearch_communication_error():
23
43
  expected = "test"
24
44
  got = MeilisearchCommunicationError(expected)