Files
qdrant/openapi/tests/openapi_integration/test_payload_operations.py
2022-03-03 13:27:51 +01:00

99 lines
2.8 KiB
Python

import pytest
from openapi_integration.helpers.helpers import request_with_validation
from openapi_integration.helpers.collection_setup import basic_collection_setup, drop_collection
collection_name = 'test_collection_payload'
@pytest.fixture(autouse=True)
def setup():
basic_collection_setup(collection_name=collection_name)
yield
drop_collection(collection_name=collection_name)
def test_payload_operations():
# create payload
response = request_with_validation(
api='/collections/{collection_name}/points/payload',
method="POST",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"payload": {"test_payload": "keyword"},
"points": [6]
}
)
assert response.ok
# check payload
response = request_with_validation(
api='/collections/{collection_name}/points/{id}',
method="GET",
path_params={'collection_name': collection_name, 'id': 6},
)
assert response.ok
assert len(response.json()['result']['payload']) == 1
# clean payload by filter
response = request_with_validation(
api='/collections/{collection_name}/points/payload/clear',
method="POST",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"filter": {
"must": [
{"has_id": [6]}
]
}
}
)
assert response.ok
# check payload
response = request_with_validation(
api='/collections/{collection_name}/points/{id}',
method="GET",
path_params={'collection_name': collection_name, 'id': 6},
)
assert response.ok
assert len(response.json()['result']['payload']) == 0
# create payload
response = request_with_validation(
api='/collections/{collection_name}/points/payload',
method="POST",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"payload": {"test_payload": "keyword"},
"points": [6]
}
)
assert response.ok
# delete payload by id
response = request_with_validation(
api='/collections/{collection_name}/points/payload/delete',
method="POST",
path_params={'collection_name': collection_name},
query_params={'wait': 'true'},
body={
"keys": ["test_payload"],
"points": [6]
}
)
assert response.ok
# check payload
response = request_with_validation(
api='/collections/{collection_name}/points/{id}',
method="GET",
path_params={'collection_name': collection_name, 'id': 6},
)
assert response.ok
assert len(response.json()['result']['payload']) == 0