79 lines
No EOL
1.8 KiB
Python
Executable file
79 lines
No EOL
1.8 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
import pytest
|
|
from textwrap import dedent
|
|
from unittest.mock import mock_open, patch
|
|
from configparser import ConfigParser
|
|
from pathlib import Path
|
|
|
|
@pytest.fixture
|
|
def module():
|
|
|
|
from httpaste.model import paste
|
|
|
|
return paste
|
|
|
|
|
|
class Test_get_paste_model_config():
|
|
|
|
@pytest.fixture(autouse=True)
|
|
def setup(self, module):
|
|
|
|
self.func = module.get_paste_model_config
|
|
|
|
def test_default(self, module):
|
|
|
|
data = ''
|
|
|
|
configIni = ConfigParser()
|
|
|
|
with patch('builtins.open', mock_open(read_data=data)):
|
|
|
|
configIni.read('void')
|
|
|
|
result = self.func(configIni)
|
|
|
|
assert isinstance(result, module._Config)
|
|
assert isinstance(result.id_size, int), result.id_size
|
|
assert isinstance(result.key_size, int), result.key_size
|
|
|
|
|
|
#class Test_load():
|
|
#
|
|
# @pytest.fixture(autouse=True)
|
|
# def setup(self, module):
|
|
#
|
|
# self.func = module.load
|
|
#
|
|
# def test_missing_parameter(self, module):
|
|
#
|
|
# config = module.Config()
|
|
# config.name = 'file'
|
|
# config.parameters = {}
|
|
#
|
|
# with pytest.raises(module.BackendError):
|
|
# self.func(config)
|
|
#
|
|
# def test_unknown_parameter(self, module):
|
|
#
|
|
# config = module.Config()
|
|
# config.name = 'file'
|
|
# config.parameters = {
|
|
# 'base_dirname': 'foofoo',
|
|
# 'foo': 'bar'
|
|
# }
|
|
#
|
|
# with pytest.raises(module.BackendError):
|
|
# self.func(config)
|
|
#
|
|
# def test_file(self, module):
|
|
#
|
|
# config = module.Config()
|
|
# config.name = 'file'
|
|
# config.parameters = {
|
|
# 'base_dirname': 'foofoo',
|
|
# 'user_dirnamea': 'test'
|
|
# }
|
|
#
|
|
# backend = self.func(config)
|
|
#
|
|
# assert isinstance(backend, module.BackendInterface) |