Skip to content

Commit cd15bf9

Browse files
committed
Fix unit tests
1 parent 0584c63 commit cd15bf9

File tree

5 files changed

+27
-12
lines changed

5 files changed

+27
-12
lines changed

pinecone/__init__.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,11 @@
2121
}
2222

2323
_db_data_lazy_imports = {
24-
"Vector": ("pinecone.db_data.models", "Vector"),
24+
"Vector": ("pinecone.db_data.dataclasses", "Vector"),
25+
"SparseValues": ("pinecone.db_data.dataclasses", "SparseValues"),
26+
"SearchQuery": ("pinecone.db_data.dataclasses", "SearchQuery"),
27+
"SearchQueryVector": ("pinecone.db_data.dataclasses", "SearchQueryVector"),
28+
"SearchRerank": ("pinecone.db_data.dataclasses", "SearchRerank"),
2529
"FetchResponse": ("pinecone.db_data.models", "FetchResponse"),
2630
"DeleteRequest": ("pinecone.db_data.models", "DeleteRequest"),
2731
"DescribeIndexStatsRequest": ("pinecone.db_data.models", "DescribeIndexStatsRequest"),
@@ -31,12 +35,8 @@
3135
"SingleQueryResults": ("pinecone.db_data.models", "SingleQueryResults"),
3236
"QueryRequest": ("pinecone.db_data.models", "QueryRequest"),
3337
"QueryResponse": ("pinecone.db_data.models", "QueryResponse"),
34-
"SearchQuery": ("pinecone.db_data.dataclasses", "SearchQuery"),
35-
"SearchQueryVector": ("pinecone.db_data.dataclasses", "SearchQueryVector"),
36-
"SearchRerank": ("pinecone.db_data.dataclasses", "SearchRerank"),
3738
"UpsertResponse": ("pinecone.db_data.models", "UpsertResponse"),
3839
"UpdateRequest": ("pinecone.db_data.models", "UpdateRequest"),
39-
"SparseValues": ("pinecone.db_data.models", "SparseValues"),
4040
"ImportErrorMode": ("pinecone.core.openapi.db_data.model", "ImportErrorMode"),
4141
"VectorDictionaryMissingKeysError": (
4242
"pinecone.db_data.errors",

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ docstring-code-line-length = "dynamic"
155155
[tool.ruff.lint.per-file-ignores]
156156
# F403 Allow star imports
157157
# F401 allow imported but unused
158-
"__init__.py" = ["F401", "F403"]
158+
"__init__.py" = ["F401", "F403", "F405"]
159159

160160
# E402 Allow module level import not at top of file so
161161
# tqdm warnings can be disabled ahead of loading any code

tests/unit/test_config.py

+11-3
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,11 @@ def test_config_pool_threads(self):
103103
pc = Pinecone(
104104
api_key="test-api-key", host="test-controller-host.pinecone.io", pool_threads=10
105105
)
106-
assert pc.index_api.api_client.pool_threads == 10
106+
# DBControl object is created lazily, so we need to access this property
107+
# to trigger the setup so we can inspect the config
108+
assert pc.db is not None
109+
110+
assert pc.db.index_api.api_client.pool_threads == 10
107111
idx = pc.Index(host="my-index-host.pinecone.io", name="my-index-name")
108112
assert idx._vector_api.api_client.pool_threads == 10
109113

@@ -146,5 +150,9 @@ def test_proxy_config(self):
146150
assert pc.openapi_config.proxy == "http://localhost:8080"
147151
assert pc.openapi_config.ssl_ca_cert == "path/to/cert-bundle.pem"
148152

149-
assert pc.index_api.api_client.configuration.proxy == "http://localhost:8080"
150-
assert pc.index_api.api_client.configuration.ssl_ca_cert == "path/to/cert-bundle.pem"
153+
# DBControl object is created lazily, so we need to access this property
154+
# to trigger the setup so we can inspect the config
155+
assert pc.db is not None
156+
157+
assert pc.db.index_api.api_client.configuration.proxy == "http://localhost:8080"
158+
assert pc.db.index_api.api_client.configuration.ssl_ca_cert == "path/to/cert-bundle.pem"

tests/unit/test_index_initialization.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,6 @@ def test_overwrite_useragent(self):
5151
def test_set_source_tag(self):
5252
pc = Pinecone(api_key="123-456-789", source_tag="test_source_tag")
5353
assert (
54-
re.search(r"source_tag=test_source_tag", pc.index_api.api_client.user_agent) is not None
54+
re.search(r"source_tag=test_source_tag", pc.db.index_api.api_client.user_agent)
55+
is not None
5556
)

tests/unit/utils/test_docs_links.py

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
import pytest
22
import requests
33
from pinecone.utils import docslinks
4+
from pinecone import __version__
45

56
urls = list(docslinks.values())
67

78

89
@pytest.mark.parametrize("url", urls)
910
def test_valid_links(url):
10-
response = requests.get(url)
11-
assert response.status_code == 200, f"Docs link is invalid: {url}"
11+
if isinstance(url, str):
12+
response = requests.get(url)
13+
assert response.status_code == 200, f"Docs link is invalid: {url}"
14+
else:
15+
versioned_url = url(__version__)
16+
response = requests.get(versioned_url)
17+
assert response.status_code == 200, f"Docs link is invalid: {versioned_url}"

0 commit comments

Comments
 (0)