[tor-commits] [nyx/master] Pycodestyle compliance issues
atagar at torproject.org
atagar at torproject.org
Wed Aug 9 19:20:54 UTC 2017
commit 915b4d5f5c549d846aa0441b3528b48e354e16b9
Author: Damian Johnson <atagar at torproject.org>
Date: Mon Aug 7 15:08:06 2017 -0700
Pycodestyle compliance issues
Newer version of pycodestyle does some additional validation. Some aren't
issues we're concerned with.
---
test/menu.py | 25 ++++++++-------
test/panel/connection.py | 81 +++++++++++++++++++++++++++---------------------
test/settings.cfg | 23 +++++++++-----
test/subwindow.py | 25 +++++++--------
4 files changed, 87 insertions(+), 67 deletions(-)
diff --git a/test/menu.py b/test/menu.py
index 162e08c..c935c27 100644
--- a/test/menu.py
+++ b/test/menu.py
@@ -33,7 +33,10 @@ def menu_cursor(*key_inputs):
return cursor
-NO_OP = lambda: None
+def no_op():
+ pass
+
+
IS_CALLED = Container()
TEST_MENU = Submenu('Root Submenu', [
@@ -59,7 +62,7 @@ class TestMenuItem(unittest.TestCase):
IS_CALLED.value = False
def test_parameters(self):
- menu_item = MenuItem('Test Item', NO_OP)
+ menu_item = MenuItem('Test Item', no_op)
self.assertEqual('', menu_item.prefix)
self.assertEqual('Test Item', menu_item.label)
@@ -84,11 +87,11 @@ class TestMenuItem(unittest.TestCase):
root_submenu = Submenu('Root Submenu')
middle_submenu = Submenu('Middle Submenu')
- root_submenu.add(MenuItem('Middle Item 1', NO_OP))
- root_submenu.add(MenuItem('Middle Item 2', NO_OP))
+ root_submenu.add(MenuItem('Middle Item 1', no_op))
+ root_submenu.add(MenuItem('Middle Item 2', no_op))
root_submenu.add(middle_submenu)
- bottom_item = MenuItem('Bottom Item', NO_OP)
+ bottom_item = MenuItem('Bottom Item', no_op)
middle_submenu.add(bottom_item)
self.assertEqual(middle_submenu, bottom_item.parent)
@@ -118,16 +121,16 @@ class TestSubmenu(unittest.TestCase):
self.assertEqual([], menu_item.children)
menu_item = Submenu('Test Item', [
- MenuItem('Test Item 1', NO_OP),
- MenuItem('Test Item 2', NO_OP),
+ MenuItem('Test Item 1', no_op),
+ MenuItem('Test Item 2', no_op),
])
self.assertEqual(2, len(menu_item.children))
def test_add(self):
submenu = Submenu('Menu')
- item_1 = MenuItem('Test Item 1', NO_OP)
- item_2 = MenuItem('Test Item 2', NO_OP)
+ item_1 = MenuItem('Test Item 1', no_op)
+ item_2 = MenuItem('Test Item 2', no_op)
self.assertEqual([], submenu.children)
@@ -140,7 +143,7 @@ class TestSubmenu(unittest.TestCase):
def test_add_raises_when_already_in_menu(self):
submenu_1 = Submenu('Menu 1')
submenu_2 = Submenu('Menu 2')
- item = MenuItem('Test Item', NO_OP)
+ item = MenuItem('Test Item', no_op)
submenu_1.add(item)
self.assertRaises(ValueError, submenu_2.add, item)
@@ -151,7 +154,7 @@ class TestRadioMenuItem(unittest.TestCase):
IS_CALLED.value = False
def test_parameters(self):
- group = RadioGroup(NO_OP, 'selected_item')
+ group = RadioGroup(no_op, 'selected_item')
menu_item = RadioMenuItem('Test Item', group, 'selected_item')
self.assertEqual('[X] ', menu_item.prefix)
diff --git a/test/panel/connection.py b/test/panel/connection.py
index 30db919..f01d99a 100644
--- a/test/panel/connection.py
+++ b/test/panel/connection.py
@@ -199,20 +199,24 @@ class TestConnectionPanel(unittest.TestCase):
tor_controller_mock().get_info.return_value = '82.121.9.9'
tor_controller_mock().is_geoip_unavailable.return_value = False
- test_data = {
- line():
- ' 75.119.206.243:22 (de) --> 82.121.9.9:3531 15.4s (INBOUND)',
- line(entry = MockEntry(entry_type = Category.CIRCUIT), line_type = LineType.CIRCUIT_HEADER):
- ' 82.121.9.9 --> 75.119.206.243:22 (de) 15.4s (CIRCUIT)',
- line(line_type = LineType.CIRCUIT, fingerprint = '1F43EE37A0670301AD9CB555D94AFEC2C89FDE86'):
- ' | 82.121.9.9 1 / Guard',
- line(line_type = LineType.CIRCUIT, fingerprint = 'B6D83EC2D9E18B0A7A33428F8CFA9C536769E209'):
- ' | 82.121.9.9 2 / Middle',
- line(line_type = LineType.CIRCUIT, fingerprint = 'E0BD57A11F00041A9789577C53A1B784473669E4'):
- ' +- 82.121.9.9 3 / Exit',
- }
-
- for test_line, expected in test_data.items():
+ test_data = ((
+ line(),
+ ' 75.119.206.243:22 (de) --> 82.121.9.9:3531 15.4s (INBOUND)',
+ ), (
+ line(entry = MockEntry(entry_type = Category.CIRCUIT), line_type = LineType.CIRCUIT_HEADER),
+ ' 82.121.9.9 --> 75.119.206.243:22 (de) 15.4s (CIRCUIT)',
+ ), (
+ line(line_type = LineType.CIRCUIT, fingerprint = '1F43EE37A0670301AD9CB555D94AFEC2C89FDE86'),
+ ' | 82.121.9.9 1 / Guard',
+ ), (
+ line(line_type = LineType.CIRCUIT, fingerprint = 'B6D83EC2D9E18B0A7A33428F8CFA9C536769E209'),
+ ' | 82.121.9.9 2 / Middle',
+ ), (
+ line(line_type = LineType.CIRCUIT, fingerprint = 'E0BD57A11F00041A9789577C53A1B784473669E4'),
+ ' +- 82.121.9.9 3 / Exit',
+ ))
+
+ for test_line, expected in test_data:
rendered = test.render(nyx.panel.connection._draw_line, 0, 0, test_line, False, 80, TIMESTAMP + 15.4)
self.assertEqual(expected, rendered.content)
@@ -222,18 +226,21 @@ class TestConnectionPanel(unittest.TestCase):
tor_controller_mock().get_info.return_value = '82.121.9.9'
tor_controller_mock().is_geoip_unavailable.return_value = False
- test_data = {
- line():
- '75.119.206.243:22 (de) --> 82.121.9.9:3531',
- line(entry = MockEntry(entry_type = Category.EXIT)):
- '82.121.9.9:3531 --> 75.119.206.243:22 (SSH)',
- line(line_type = LineType.CIRCUIT_HEADER, circ = MockCircuit(status = 'EXTENDING')):
- 'Building... --> 82.121.9.9',
- line(line_type = LineType.CIRCUIT):
- '82.121.9.9',
- }
-
- for test_line, expected in test_data.items():
+ test_data = ((
+ line(),
+ '75.119.206.243:22 (de) --> 82.121.9.9:3531',
+ ), (
+ line(entry = MockEntry(entry_type = Category.EXIT)),
+ '82.121.9.9:3531 --> 75.119.206.243:22 (SSH)',
+ ), (
+ line(line_type = LineType.CIRCUIT_HEADER, circ = MockCircuit(status = 'EXTENDING')),
+ 'Building... --> 82.121.9.9',
+ ), (
+ line(line_type = LineType.CIRCUIT),
+ '82.121.9.9',
+ ))
+
+ for test_line, expected in test_data:
rendered = test.render(nyx.panel.connection._draw_address_column, 0, 0, test_line, ())
self.assertEqual(expected, rendered.content)
@@ -246,16 +253,18 @@ class TestConnectionPanel(unittest.TestCase):
port_usage_tracker_mock().fetch.return_value = process
- test_data = {
- line():
- '1F43EE37A0670301AD9CB555D94AFEC2C89FDE86 Unnamed',
- line(line_type = LineType.CIRCUIT_HEADER):
- 'Purpose: General, Circuit ID: 7',
- line(entry = MockEntry(entry_type = Category.CONTROL)):
- 'firefox (722)',
- }
-
- for test_line, expected in test_data.items():
+ test_data = ((
+ line(),
+ '1F43EE37A0670301AD9CB555D94AFEC2C89FDE86 Unnamed',
+ ), (
+ line(line_type = LineType.CIRCUIT_HEADER),
+ 'Purpose: General, Circuit ID: 7',
+ ), (
+ line(entry = MockEntry(entry_type = Category.CONTROL)),
+ 'firefox (722)',
+ ))
+
+ for test_line, expected in test_data:
rendered = test.render(nyx.panel.connection._draw_line_details, 0, 0, test_line, 80, ())
self.assertEqual(expected, rendered.content)
diff --git a/test/settings.cfg b/test/settings.cfg
index 21679cd..dc1d851 100644
--- a/test/settings.cfg
+++ b/test/settings.cfg
@@ -1,15 +1,24 @@
-# PEP8 compliance issues that we're ignoreing.
+# Pycodestyle compliance issues that we're ignoreing.
-pep8.ignore E111
-pep8.ignore E114
-pep8.ignore E121
-pep8.ignore E501
-pep8.ignore E251
-pep8.ignore E127
+pycodestyle.ignore E111
+pycodestyle.ignore E114
+pycodestyle.ignore E121
+pycodestyle.ignore E501
+pycodestyle.ignore E251
+pycodestyle.ignore E127
+pycodestyle.ignore E722
# False positives from pyflakes. These are mappings between the path and the
# issue.
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.curses
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.menu
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.panel
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.panel.config
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.panel.connection
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.popups
+pycodestyle.ignore nyx/__init__.py => E402: import nyx.starter
+
pyflakes.ignore nyx/prereq.py => 'stem' imported but unused
pyflakes.ignore nyx/prereq.py => 'curses' imported but unused
pyflakes.ignore run_tests.py => 'pyflakes' imported but unused
diff --git a/test/subwindow.py b/test/subwindow.py
index 61246d2..bee91f3 100644
--- a/test/subwindow.py
+++ b/test/subwindow.py
@@ -69,10 +69,13 @@ EXPECTED_SCROLLBAR_BOTTOM = """
-+
""".strip()
-NO_OP_HANDLER = lambda textbox, key: key
DIMENSIONS = (40, 80)
+def no_op_handler(textbox, key):
+ return key
+
+
def _textbox(x = 0, text = ''):
textbox = Mock()
textbox.win.getyx.return_value = (0, x)
@@ -185,31 +188,27 @@ class TestCurses(unittest.TestCase):
self.assertEqual(curses.ascii.BEL, nyx.curses._handle_key(_textbox(), 410))
def test_handle_tab_completion_no_op(self):
- tab_completion = lambda txt_input: ['GETINFO version']
- result = nyx.curses._handle_tab_completion(NO_OP_HANDLER, tab_completion, _textbox(), ord('a'))
+ result = nyx.curses._handle_tab_completion(no_op_handler, lambda txt_input: ['GETINFO version'], _textbox(), ord('a'))
self.assertEqual(ord('a'), result)
def test_handle_tab_completion_no_matches(self):
- tab_completion = lambda txt_input: []
textbox = _textbox(text = 'GETINF')
- result = nyx.curses._handle_tab_completion(NO_OP_HANDLER, tab_completion, textbox, 9)
+ result = nyx.curses._handle_tab_completion(no_op_handler, lambda txt_input: [], textbox, 9)
self.assertEqual(None, result) # consumes input
self.assertFalse(textbox.win.addstr.called)
def test_handle_tab_completion_single_match(self):
- tab_completion = lambda txt_input: ['GETINFO version']
textbox = _textbox(text = 'GETINF')
- result = nyx.curses._handle_tab_completion(NO_OP_HANDLER, tab_completion, textbox, 9)
+ result = nyx.curses._handle_tab_completion(no_op_handler, lambda txt_input: ['GETINFO version'], textbox, 9)
self.assertEqual(None, result) # consumes input
self.assertEquals(call(0, 15), textbox.win.move.call_args) # move cursor to end
self.assertEqual(call(0, 0, 'GETINFO version'), textbox.win.addstr.call_args)
def test_handle_tab_completion_multiple_matches(self):
- tab_completion = lambda txt_input: ['GETINFO version', 'GETINFO info/events']
textbox = _textbox(text = 'GETINF')
- result = nyx.curses._handle_tab_completion(NO_OP_HANDLER, tab_completion, textbox, 9)
+ result = nyx.curses._handle_tab_completion(no_op_handler, lambda txt_input: ['GETINFO version', 'GETINFO info/events'], textbox, 9)
self.assertEqual(None, result) # consumes input
self.assertEquals(call(0, 8), textbox.win.move.call_args) # move cursor to end
@@ -219,22 +218,22 @@ class TestCurses(unittest.TestCase):
backlog = nyx.curses._TextBacklog(['GETINFO version'])
textbox = _textbox()
- self.assertEqual(ord('a'), backlog._handler(NO_OP_HANDLER, textbox, ord('a')))
+ self.assertEqual(ord('a'), backlog._handler(no_op_handler, textbox, ord('a')))
self.assertFalse(textbox.win.addstr.called)
def test_text_backlog_fills_history(self):
backlog = nyx.curses._TextBacklog(['GETINFO version'])
textbox = _textbox()
- self.assertEqual(None, backlog._handler(NO_OP_HANDLER, textbox, curses.KEY_UP))
+ self.assertEqual(None, backlog._handler(no_op_handler, textbox, curses.KEY_UP))
self.assertEqual(call(0, 0, 'GETINFO version'), textbox.win.addstr.call_args)
def test_text_backlog_remembers_custom_input(self):
backlog = nyx.curses._TextBacklog(['GETINFO version'])
textbox = _textbox(text = 'hello')
- self.assertEqual(None, backlog._handler(NO_OP_HANDLER, textbox, curses.KEY_UP))
+ self.assertEqual(None, backlog._handler(no_op_handler, textbox, curses.KEY_UP))
self.assertEqual(call(0, 0, 'GETINFO version'), textbox.win.addstr.call_args)
- self.assertEqual(None, backlog._handler(NO_OP_HANDLER, textbox, curses.KEY_DOWN))
+ self.assertEqual(None, backlog._handler(no_op_handler, textbox, curses.KEY_DOWN))
self.assertEqual(call(0, 0, 'hello'), textbox.win.addstr.call_args)
More information about the tor-commits
mailing list