From 51afbe19e12ea338a1034999863a83ff872699f5 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Sat, 13 Apr 2013 00:39:00 +0200 Subject: [PATCH] config: Start adding basic data loading test --- tests/config/config_test.py | 49 +++++++++++++++++++++++++++++++++++++ tests/data/file1.conf | 2 ++ tests/data/file2.conf | 2 ++ 3 files changed, 53 insertions(+) create mode 100644 tests/config/config_test.py create mode 100644 tests/data/file1.conf create mode 100644 tests/data/file2.conf diff --git a/tests/config/config_test.py b/tests/config/config_test.py new file mode 100644 index 00000000..bb161a8f --- /dev/null +++ b/tests/config/config_test.py @@ -0,0 +1,49 @@ +from __future__ import unicode_literals + +from mopidy import config + +from tests import unittest, path_to_data_dir + + +class LoadConfigTest(unittest.TestCase): + def test_load_nothing(self): + self.assertEqual({}, config._load([], [], [])) + + def test_load_single_default(self): + default = '[foo]\nbar = baz' + expected = {'foo': {'bar': 'baz'}} + result = config._load([], [default], []) + self.assertEqual(expected, result) + + def test_load_defaults(self): + default1 = '[foo]\nbar = baz' + default2 = '[foo2]\n' + expected = {'foo': {'bar': 'baz'}, 'foo2': {}} + result = config._load([], [default1, default2], []) + self.assertEqual(expected, result) + + def test_load_single_override(self): + override = ('foo', 'bar', 'baz') + expected = {'foo': {'bar': 'baz'}} + result = config._load([], [], [override]) + self.assertEqual(expected, result) + + def test_load_overrides(self): + override1 = ('foo', 'bar', 'baz') + override2 = ('foo2', 'bar', 'baz') + expected = {'foo': {'bar': 'baz'}, 'foo2': {'bar': 'baz'}} + result = config._load([], [], [override1, override2]) + self.assertEqual(expected, result) + + def test_load_single_file(self): + file1 = path_to_data_dir('file1.conf') + expected = {'foo': {'bar': 'baz'}} + result = config._load([file1], [], []) + self.assertEqual(expected, result) + + def test_load_files(self): + file1 = path_to_data_dir('file1.conf') + file2 = path_to_data_dir('file2.conf') + expected = {'foo': {'bar': 'baz'}, 'foo2': {'bar': 'baz'}} + result = config._load([file1, file2], [], []) + self.assertEqual(expected, result) diff --git a/tests/data/file1.conf b/tests/data/file1.conf new file mode 100644 index 00000000..e6396bff --- /dev/null +++ b/tests/data/file1.conf @@ -0,0 +1,2 @@ +[foo] +bar = baz diff --git a/tests/data/file2.conf b/tests/data/file2.conf new file mode 100644 index 00000000..ef189703 --- /dev/null +++ b/tests/data/file2.conf @@ -0,0 +1,2 @@ +[foo2] +bar = baz