diff --git a/keymapper/config.py b/keymapper/config.py index 1e15c83a..71736006 100644 --- a/keymapper/config.py +++ b/keymapper/config.py @@ -52,7 +52,6 @@ class _Config: if load: self._config['autoload'][device] = preset elif self._config['autoload'].get(device) is not None: - # TODO test del self._config['autoload'][device] def iterate_autoload_presets(self): @@ -61,7 +60,6 @@ class _Config: def is_autoloaded(self, device, preset): """Should this preset be loaded automatically?""" - # TODO test autoload_map = self._config.get('autoload') if autoload_map is None: return False @@ -70,7 +68,7 @@ class _Config: if autoload_preset is None: return False - return True + return autoload_preset == preset def load_config(self): """Load the config from the file system.""" diff --git a/keymapper/daemon.py b/keymapper/daemon.py index 35bfc856..e3a193aa 100644 --- a/keymapper/daemon.py +++ b/keymapper/daemon.py @@ -80,7 +80,6 @@ class Daemon(service.Object): """ def __init__(self, *args, autoload=True, **kwargs): """Constructs the daemon. You still need to run the GLib mainloop.""" - print(autoload) self.injectors = {} if autoload: for device, preset in config.iterate_autoload_presets(): diff --git a/keymapper/gtk/window.py b/keymapper/gtk/window.py index 774db82c..5bdb6384 100755 --- a/keymapper/gtk/window.py +++ b/keymapper/gtk/window.py @@ -293,7 +293,6 @@ class Window: device = self.selected_device preset = self.selected_preset # TODO test call this and then check config - # TODO new screenshot config.set_autoload_preset(device, preset, active) config.save_config() diff --git a/tests/testcases/config.py b/tests/testcases/config.py index c0e42d2b..2d1934b8 100644 --- a/tests/testcases/config.py +++ b/tests/testcases/config.py @@ -33,21 +33,38 @@ class TestConfig(unittest.TestCase): def test_autoload(self): del config._config['autoload'] self.assertEqual(len(config.iterate_autoload_presets()), 0) + self.assertFalse(config.is_autoloaded('d1', 'a')) + self.assertFalse(config.is_autoloaded('d2', 'b')) config.set_autoload_preset('d1', 'a') self.assertEqual(len(config.iterate_autoload_presets()), 1) + self.assertTrue(config.is_autoloaded('d1', 'a')) + self.assertFalse(config.is_autoloaded('d2', 'b')) - config.set_autoload_preset('d2', 'b') + config.set_autoload_preset('d2', 'b', True) self.assertEqual(len(config.iterate_autoload_presets()), 2) + self.assertTrue(config.is_autoloaded('d1', 'a')) + self.assertTrue(config.is_autoloaded('d2', 'b')) config.set_autoload_preset('d2', 'c') self.assertEqual(len(config.iterate_autoload_presets()), 2) - + self.assertTrue(config.is_autoloaded('d1', 'a')) + self.assertFalse(config.is_autoloaded('d2', 'b')) + self.assertTrue(config.is_autoloaded('d2', 'c')) self.assertListEqual( list(config.iterate_autoload_presets()), [('d1', 'a'), ('d2', 'c')] ) + config.set_autoload_preset('d2', 'foo', False) + self.assertTrue(config.is_autoloaded('d1', 'a')) + self.assertFalse(config.is_autoloaded('d2', 'b')) + self.assertFalse(config.is_autoloaded('d2', 'c')) + self.assertListEqual( + list(config.iterate_autoload_presets()), + [('d1', 'a')] + ) + def test_save_load(self): self.assertEqual(len(config.iterate_autoload_presets()), 0)