mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-11-06 03:08:55 -05:00
* Initial commit * Fix sentry * Make cog manager install path work relative to the bot's dir * Fix downloader to save data relative to the defined data folder * Fix sentry test * Fix downloader tests * Change logfile location * Add another line to codeowners * Basic tests * Fix versioning * Add in FutureWarning for config file changes * Add reference to issue
42 lines
962 B
Python
42 lines
962 B
Python
import json
|
|
from pathlib import Path
|
|
|
|
from core import data_manager
|
|
import pytest
|
|
|
|
|
|
@pytest.fixture(autouse=True)
|
|
def cleanup_datamanager():
|
|
data_manager.basic_config = None
|
|
data_manager.jsonio = None
|
|
|
|
|
|
@pytest.fixture()
|
|
def data_mgr_config(tmpdir):
|
|
default = data_manager.basic_config_default.copy()
|
|
default['BASE_DIR'] = str(tmpdir)
|
|
return default
|
|
|
|
|
|
@pytest.fixture()
|
|
def cog_instance():
|
|
thing = type('CogTest', (object, ), {})
|
|
return thing()
|
|
|
|
|
|
def test_no_basic(cog_instance):
|
|
with pytest.raises(RuntimeError):
|
|
data_manager.core_data_path()
|
|
|
|
with pytest.raises(RuntimeError):
|
|
data_manager.cog_data_path(cog_instance)
|
|
|
|
|
|
def test_core_path(data_mgr_config, tmpdir):
|
|
conf_path = tmpdir.join('config.json')
|
|
conf_path.write(json.dumps(data_mgr_config))
|
|
|
|
data_manager.load_basic_configuration(Path(str(conf_path)))
|
|
|
|
assert data_manager.core_data_path().parent == Path(data_mgr_config['BASE_DIR'])
|