Add missing tests for scrapy.settings module

This commit is contained in:
Jakob de Maeyer 2015-10-29 09:49:12 +01:00
parent caf2080b80
commit 51ca84c9b4
1 changed files with 22 additions and 2 deletions

View File

@ -3,11 +3,20 @@ import unittest
import warnings
from scrapy.settings import (BaseSettings, Settings, SettingsAttribute,
CrawlerSettings)
CrawlerSettings, SETTINGS_PRIORITIES,
get_settings_priority)
from tests import mock
from . import default_settings
class SettingsGlobalFuncsTest(unittest.TestCase):
def test_get_settings_priority(self):
for prio_str, prio_num in six.iteritems(SETTINGS_PRIORITIES):
self.assertEqual(get_settings_priority(prio_str), prio_num)
self.assertEqual(get_settings_priority(99), 99)
class SettingsAttributeTest(unittest.TestCase):
def setUp(self):
@ -45,6 +54,10 @@ class SettingsAttributeTest(unittest.TestCase):
self.assertEqual(attribute.value['one'], 12)
self.assertEqual(attribute.value['two'], 21)
def test_repr(self):
self.assertEqual(repr(self.attribute),
"<SettingsAttribute value='value' priority=10>")
class BaseSettingsTest(unittest.TestCase):
@ -329,7 +342,6 @@ class BaseSettingsTest(unittest.TestCase):
self.assertEqual(self.settings.get('FOO'), 'fez')
self.assertEqual(self.settings.overrides.get('FOO'), 'fez')
def test_deprecated_attribute_defaults(self):
self.settings.set('BAR', 'fuz', priority='default')
with warnings.catch_warnings(record=True) as w:
@ -339,6 +351,14 @@ class BaseSettingsTest(unittest.TestCase):
self.assertEqual(self.settings.defaults.get('BAR'), 'foo')
self.assertIn('BAR', self.settings.defaults)
def test_repr(self):
settings = BaseSettings()
self.assertEqual(repr(settings), "<BaseSettings {}>")
attr = SettingsAttribute('testval', 15)
settings['testkey'] = attr
self.assertEqual(repr(settings),
"<BaseSettings {'testkey': %s}>" % repr(attr))
class SettingsTest(unittest.TestCase):