37 lines
949 B
Python
37 lines
949 B
Python
# coding=utf-8
|
|
from __future__ import unicode_literals, division, print_function, absolute_import
|
|
|
|
import os
|
|
import tempfile
|
|
import unittest
|
|
from sopel import config
|
|
from sopel.config import types
|
|
|
|
|
|
class FakeConfigSection(types.StaticSection):
|
|
attr = types.ValidatedAttribute('attr')
|
|
|
|
|
|
class ConfigFunctionalTest(unittest.TestCase):
|
|
def read_config(self):
|
|
configo = config.Config(self.filename)
|
|
configo.define_section('fake', FakeConfigSection)
|
|
return configo
|
|
|
|
def setUp(self):
|
|
self.filename = tempfile.mkstemp()[1]
|
|
with open(self.filename, 'w') as fileo:
|
|
fileo.write(
|
|
"[core]\n"
|
|
"owner=embolalia"
|
|
)
|
|
|
|
self.config = self.read_config()
|
|
|
|
def tearDown(self):
|
|
os.remove(self.filename)
|
|
|
|
def test_validated_string_when_none(self):
|
|
self.config.fake.attr = None
|
|
self.assertEquals(self.config.fake.attr, None)
|