Spaces:
Paused
Paused
| from collections.abc import Generator | |
| import pytest | |
| from extensions.storage.base_storage import BaseStorage | |
| def get_example_folder() -> str: | |
| return "/dify" | |
| def get_example_bucket() -> str: | |
| return "dify" | |
| def get_example_filename() -> str: | |
| return "test.txt" | |
| def get_example_data() -> bytes: | |
| return b"test" | |
| def get_example_filepath() -> str: | |
| return "/test" | |
| class BaseStorageTest: | |
| def setup_method(self): | |
| """Should be implemented in child classes to setup specific storage.""" | |
| self.storage = BaseStorage() | |
| def test_save(self): | |
| """Test saving data.""" | |
| self.storage.save(get_example_filename(), get_example_data()) | |
| def test_load_once(self): | |
| """Test loading data once.""" | |
| assert self.storage.load_once(get_example_filename()) == get_example_data() | |
| def test_load_stream(self): | |
| """Test loading data as a stream.""" | |
| generator = self.storage.load_stream(get_example_filename()) | |
| assert isinstance(generator, Generator) | |
| assert next(generator) == get_example_data() | |
| def test_download(self): | |
| """Test downloading data.""" | |
| self.storage.download(get_example_filename(), get_example_filepath()) | |
| def test_exists(self): | |
| """Test checking if a file exists.""" | |
| assert self.storage.exists(get_example_filename()) | |
| def test_delete(self): | |
| """Test deleting a file.""" | |
| self.storage.delete(get_example_filename()) | |