Files
qdrant/openapi/tests/openapi_integration/test_db_lock.py
Andrey Vasnetsov 2b4ab27506 Write lock for user requests (#1143)
* lock update operations only

* fmt

* fix

* lock openapi integration test
2022-10-19 12:57:52 +02:00

79 lines
1.9 KiB
Python

import pytest
from .helpers.collection_setup import basic_collection_setup, drop_collection
from .helpers.helpers import request_with_validation
collection_name = 'test_collection'
@pytest.fixture(autouse=True)
def setup():
basic_collection_setup(collection_name=collection_name)
yield
drop_collection(collection_name=collection_name)
def test_lock_db_for_writes():
response = request_with_validation(
api='/locks',
method="POST",
path_params={},
body={
"write": True,
"error_message": "integration test"
}
)
assert response.ok
response = request_with_validation(
api='/locks',
method="GET",
)
assert response.ok
response = request_with_validation(
api='/collections/{collection_name}/points',
method="PUT",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"points": [
{
"id": 10,
"vector": [0.05, -0.61, -0.76, 0.74],
"payload": {"city": "Gdansk"}
}
]
}
)
assert not response.ok
assert "integration test" in response.text
response = request_with_validation(
api='/locks',
method="POST",
path_params={},
body={
"write": False,
}
)
assert response.ok
response = request_with_validation(
api='/collections/{collection_name}/points',
method="PUT",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"points": [
{
"id": 10,
"vector": [0.05, -0.61, -0.76, 0.74],
"payload": {"city": "Gdansk"}
}
]
}
)
assert response.ok