tests_for_datastore #63

Merged
brian merged 45 commits from tests_for_datastore into main 2024-12-21 17:31:14 +01:00
Showing only changes of commit 10bfac73bd - Show all commits
+53 -5
View File
@@ -1,12 +1,15 @@
"""Integration tests for functions exposed by the datastore module."""
import os
from io import BytesIO
from random import randbytes
import pytest
from minio import Minio
from testcontainers.minio import MinioContainer
from shared.datastore import connect_minio
from shared.datastore import connect_minio, get, put
from shared.utils import setup_logging
minio = MinioContainer()
MINIO_BUCKET_NAME = 'visual-critical-discourse-analysis'
@@ -30,10 +33,6 @@ def setup(request):
os.environ['MINIO_ACCESS_KEY'] = minio.access_key
os.environ['MINIO_SECRET_KEY'] = minio.secret_key
os.environ['MINIO_BUCKET_NAME'] = MINIO_BUCKET_NAME
# save random image to Minio
pass
# save random model to Minio
pass
def test_connect_minio():
@@ -42,6 +41,49 @@ def test_connect_minio():
assert isinstance(minio_client, Minio)
def test_put():
"""Test function put."""
# connect to minio
minio_client = connect_minio()
# generate random bytes
buffer = BytesIO(randbytes(2**20))
# put data in Minio
put(
client=minio_client,
buffer=buffer,
bucket_name=MINIO_BUCKET_NAME,
object_name='test_put_data',
)
def test_get():
"""Test function get."""
# connect to minio
minio_client = connect_minio()
# generate random bytes
buffer = BytesIO(randbytes(2**20))
# put data in minio
put(
client=minio_client,
buffer=buffer,
bucket_name=MINIO_BUCKET_NAME,
object_name='test_get_data',
)
# get data back from minio
buffer_rec = get(
client=minio_client,
bucket_name=MINIO_BUCKET_NAME,
object_name='test_get_data',
)
# check that data are the same
assert buffer.read() == buffer_rec.read()
def test_delete():
"""Test function delete."""
raise NotImplementedError()
def test_get_image():
"""Test function get_image."""
raise NotImplementedError()
@@ -60,3 +102,9 @@ def test_get_model():
def test_put_model():
"""Test function put_model."""
raise NotImplementedError()
if __name__ == '__main__':
os.environ['LOG_LEVEL'] = 'debug'
setup_logging()
pytest.main()