1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-25 04:02:32 +01:00
gallery-dl/test/test_config.py
2015-10-03 20:24:35 +02:00

50 lines
1.5 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Copyright 2015 Mike Fährmann
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
import unittest
import gallery_dl.config as config
import os
import tempfile
class TestConfig(unittest.TestCase):
def setUp(self):
fd, self._configfile = tempfile.mkstemp()
with os.fdopen(fd, "w") as file:
file.write('{"a": "1", "b": {"c": "text"}}')
config.load(self._configfile)
def tearDown(self):
config.clear()
os.remove(self._configfile)
def test_get(self):
self.assertEqual(config.get("a"), "1")
self.assertEqual(config.get("b.c"), "text")
self.assertEqual(config.get("d"), None)
self.assertEqual(config.get("e.f.g", 123), 123)
def test_set(self):
config.set("b.c", [1, 2, 3])
config.set("e.f.g", 234)
self.assertEqual(config.get("b.c"), [1, 2, 3])
self.assertEqual(config.get("e.f.g"), 234)
def test_interpolate(self):
self.assertEqual(config.interpolate("a"), "1")
self.assertEqual(config.interpolate("b.a"), "1")
self.assertEqual(config.interpolate("b.c", "2"), "text")
self.assertEqual(config.interpolate("b.d", "2"), "2")
config.set("d", 123)
self.assertEqual(config.interpolate("b.d", "2"), 123)
self.assertEqual(config.interpolate("d.d", "2"), 123)
if __name__ == '__main__':
unittest.main()