diff options
Diffstat (limited to 'deluge/tests/test_ui_console.py')
-rw-r--r-- | deluge/tests/test_ui_console.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/deluge/tests/test_ui_console.py b/deluge/tests/test_ui_console.py index 8c67322ee..da97f5c15 100644 --- a/deluge/tests/test_ui_console.py +++ b/deluge/tests/test_ui_console.py @@ -11,6 +11,7 @@ import argparse from deluge.common import windows_check from deluge.ui.console.cmdline.commands.add import Command +from deluge.ui.console.cmdline.commands.config import json_eval from deluge.ui.console.widgets.fields import TextInput from .basetest import BaseTestCase @@ -65,3 +66,28 @@ class UIConsoleCommandsTestCase(BaseTestCase): self.assertEqual(args.move_completed_path, completed_path) args = parser.parse_args(['torrent', '--move-path', completed_path]) self.assertEqual(args.move_completed_path, completed_path) + + def test_config_json_eval(self): + self.assertEqual(json_eval('/downloads'), '/downloads') + self.assertEqual(json_eval('/dir/with space'), '/dir/with space') + self.assertEqual(json_eval('c:\\\\downloads'), 'c:\\\\downloads') + self.assertEqual(json_eval('c:/downloads'), 'c:/downloads') + # Ensure newlines are split and only first setting is used. + self.assertEqual(json_eval('setting\nwithneline'), 'setting') + # Allow both parentheses and square brackets. + self.assertEqual(json_eval('(8000, 8001)'), [8000, 8001]) + self.assertEqual(json_eval('[8000, 8001]'), [8000, 8001]) + self.assertEqual(json_eval('["abc", "def"]'), ['abc', 'def']) + self.assertEqual(json_eval('{"foo": "bar"}'), {'foo': 'bar'}) + self.assertEqual(json_eval('{"number": 1234}'), {'number': 1234}) + # Hex string for peer_tos. + self.assertEqual(json_eval('0x00'), '0x00') + self.assertEqual(json_eval('1000'), 1000) + self.assertEqual(json_eval('-6'), -6) + self.assertEqual(json_eval('10.5'), 10.5) + self.assertEqual(json_eval('True'), True) + self.assertEqual(json_eval('false'), False) + self.assertEqual(json_eval('none'), None) + # Empty values to clear config key. + self.assertEqual(json_eval('[]'), []) + self.assertEqual(json_eval(''), '') |