Initial Upload
This commit is contained in:
49
tests/test_config.py
Normal file
49
tests/test_config.py
Normal file
@@ -0,0 +1,49 @@
|
||||
import pytest
|
||||
import os
|
||||
import sys
|
||||
from unittest.mock import patch, mock_open
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..'))
|
||||
|
||||
from ..src.config import Config
|
||||
|
||||
|
||||
class TestConfig:
|
||||
"""Test suite for the Config class."""
|
||||
testing_dir = Path(str(os.path.dirname(__file__)))
|
||||
|
||||
def test_config_init(self):
|
||||
self.config = Config(self.testing_dir.joinpath("test_config.json"))
|
||||
assert self.config is not None
|
||||
|
||||
def test_config_to_dict(self):
|
||||
self.config = Config(self.testing_dir.joinpath("test_config.json"))
|
||||
config_dict = self.config.to_dict()
|
||||
assert isinstance(config_dict, dict)
|
||||
assert "data_path" in config_dict
|
||||
assert "host" in config_dict
|
||||
assert "abs_api_key" in config_dict
|
||||
|
||||
def test_config_save_and_load(self):
|
||||
self.config = Config(self.testing_dir.joinpath("test_config.json"))
|
||||
self.config.data_path = self.testing_dir.joinpath("data")
|
||||
self.config.host = "testhost"
|
||||
self.config.abs_api_key = "testkey"
|
||||
|
||||
# Save the configuration
|
||||
save_result = self.config.save()
|
||||
assert save_result is True
|
||||
assert self.config.path.exists()
|
||||
|
||||
# Load the configuration into a new instance
|
||||
new_config = Config(self.testing_dir.joinpath("test_config.json"))
|
||||
assert new_config.data_path == self.config.data_path
|
||||
assert new_config.host == self.config.host
|
||||
assert new_config.abs_api_key == self.config.abs_api_key
|
||||
# Clean up
|
||||
if self.config.path.exists():
|
||||
self.config.path.unlink()
|
||||
if self.config.data_path.exists():
|
||||
self.config.data_path.rmdir()
|
||||
|
||||
Reference in New Issue
Block a user