commit 9e9be8296bb5fb70e6c462509e5613f83b713e30 Author: Damian Johnson atagar@torproject.org Date: Tue Jun 7 09:40:46 2016 -0700
Drop missing_event_types()
Now that we do event selection based on what tor supports rather than a hardcoded list of events we accept there's no longer a set of 'UNKNOWN' events. --- nyx/arguments.py | 21 +-------------------- nyx/log.py | 5 ----- nyx/settings/strings.cfg | 1 - nyx/starter.py | 12 ------------ test/arguments.py | 30 +----------------------------- 5 files changed, 2 insertions(+), 67 deletions(-)
diff --git a/nyx/arguments.py b/nyx/arguments.py index 6ed405d..f771e0b 100644 --- a/nyx/arguments.py +++ b/nyx/arguments.py @@ -14,7 +14,7 @@ import nyx.log
import stem.util.connection
-from nyx import DATA_DIR, tor_controller, msg +from nyx import DATA_DIR, msg
DEFAULT_ARGS = { 'control_address': '127.0.0.1', @@ -201,22 +201,3 @@ def validate_events(events): raise ValueError(','.join(invalid_events)) else: return accepted_events - - -def missing_event_types(): - """ - Provides the event types the current tor connection supports but nyx - doesn't. This provides an empty list if no event types are missing or the - GETINFO query fails. - - :returns: **list** of missing event types - """ - - response = tor_controller().get_info('events/names', None) - - if response is None: - return [] # GETINFO query failed - - tor_event_types = response.split(' ') - recognized_types = TOR_EVENT_TYPES.values() - return list(filter(lambda x: x not in recognized_types, tor_event_types)) diff --git a/nyx/log.py b/nyx/log.py index 2a60a9e..3929548 100644 --- a/nyx/log.py +++ b/nyx/log.py @@ -190,11 +190,6 @@ def listen_for_events(listener, events): tor_events = events.intersection(set(nyx.arguments.TOR_EVENT_TYPES.values())) nyx_events = events.intersection(set(NYX_RUNLEVELS))
- # adds events unrecognized by nyx if we're listening to the 'UNKNOWN' type - - if 'UNKNOWN' in events: - tor_events.update(set(nyx.arguments.missing_event_types())) - controller = nyx.tor_controller() controller.remove_event_listener(listener)
diff --git a/nyx/settings/strings.cfg b/nyx/settings/strings.cfg index 51dbfde..c19930b 100644 --- a/nyx/settings/strings.cfg +++ b/nyx/settings/strings.cfg @@ -33,7 +33,6 @@ msg.setup.chroot_doesnt_exist The chroot path set in your config ({path}) doesn' msg.setup.set_freebsd_chroot Adjusting paths to account for Tor running in a FreeBSD jail at: {path} msg.setup.tor_is_running_as_root Tor is currently running with root permissions. This isn't a good idea, nor should it be necessary. See the 'User UID' option on Tor's man page for an easy method of reducing its permissions after startup. msg.setup.unable_to_determine_pid Unable to determine Tor's pid. Some information, like its resource usage will be unavailable. -msg.setup.unknown_event_types nyx doesn't recognize the following event types: {event_types} (log 'UNKNOWN' events to see them) msg.setup.color_support_available Terminal color support detected and enabled msg.setup.color_support_unavailable Terminal color support unavailable
diff --git a/nyx/starter.py b/nyx/starter.py index 7162e53..b9df29a 100644 --- a/nyx/starter.py +++ b/nyx/starter.py @@ -80,7 +80,6 @@ def main(config): _warn_if_root(controller) _warn_if_unable_to_get_pid(controller) _setup_freebsd_chroot(controller) - _notify_of_unknown_events() _use_english_subcommands() _use_no_esc_delay() _use_unicode() @@ -205,17 +204,6 @@ def _setup_freebsd_chroot(controller, config): config.set('tor.chroot', jail_chroot)
-def _notify_of_unknown_events(): - """ - Provides a notice about any event types tor supports but nyx doesn't. - """ - - missing_events = nyx.arguments.missing_event_types() - - if missing_events: - log.info('setup.unknown_event_types', event_types = ', '.join(missing_events)) - - def _use_english_subcommands(): """ Make subcommands we run (ps, netstat, etc) provide us with English results. diff --git a/test/arguments.py b/test/arguments.py index 9d12651..58bf954 100644 --- a/test/arguments.py +++ b/test/arguments.py @@ -1,8 +1,6 @@ import unittest
-from mock import Mock, patch - -from nyx.arguments import DEFAULT_ARGS, parse, missing_event_types +from nyx.arguments import DEFAULT_ARGS, parse
class TestArgumentParsing(unittest.TestCase): @@ -63,29 +61,3 @@ class TestArgumentParsing(unittest.TestCase):
for invalid_input in invalid_inputs: self.assertRaises(ValueError, parse, ['--interface', invalid_input]) - - -class TestMissingEventTypes(unittest.TestCase): - @patch('nyx.arguments.tor_controller') - def test_with_a_failed_query(self, controller_mock): - controller = Mock() - controller.get_info.return_value = None - controller_mock.return_value = controller - - self.assertEqual([], missing_event_types()) - - @patch('nyx.arguments.tor_controller') - def test_without_unrecognized_events(self, controller_mock): - controller = Mock() - controller.get_info.return_value = 'DEBUG INFO NOTICE WARN ERR' - controller_mock.return_value = controller - - self.assertEqual([], missing_event_types()) - - @patch('nyx.arguments.tor_controller') - def test_with_unrecognized_events(self, controller_mock): - controller = Mock() - controller.get_info.return_value = 'EVENT1 DEBUG INFO NOTICE WARN EVENT2 ERR EVENT3' - controller_mock.return_value = controller - - self.assertEqual(['EVENT1', 'EVENT2', 'EVENT3'], missing_event_types())
tor-commits@lists.torproject.org