commit 973da9b991803cac0640982c2b9a31f14d11a103
Author: Damian Johnson <[email protected]>
Date:   Sun May 29 10:24:29 2016 -0700

    Drop _draw_bandwidth_stats()
    
    I can see why we had this but... it's confusing. On small screen 
resolutions we
    replaced our y-axis with the average and total bandwidth usage. This only
    applied when rendering bandwidths and it's debatable if this is more 
valuable
    than the y-axis.
    
    On my netbook (which is just 100 colums wide) we still show the averages 
(just
    dropping the total) which imho works just fine. We might try something else 
if
    this makes anyone sad.
---
 nyx/panel/graph.py  | 27 +++------------------------
 test/panel/graph.py | 13 +------------
 2 files changed, 4 insertions(+), 36 deletions(-)

diff --git a/nyx/panel/graph.py b/nyx/panel/graph.py
index c35df13..d3ed768 100644
--- a/nyx/panel/graph.py
+++ b/nyx/panel/graph.py
@@ -51,7 +51,6 @@ PRIMARY_COLOR, SECONDARY_COLOR = GREEN, CYAN
 ACCOUNTING_RATE = 5
 DEFAULT_CONTENT_HEIGHT = 4  # space needed for labeling above and below the 
graph
 WIDE_LABELING_GRAPH_COL = 50  # minimum graph columns to use wide spacing for 
x-axis labels
-COLLAPSE_WIDTH = 135  # width at which to move optional stats from the title 
to x-axis label
 
 
 def conf_handler(key, value):
@@ -228,7 +227,7 @@ class GraphCategory(object):
       header = CONFIG['attr.graph.header.secondary'].get(self.stat_type(), '')
       header_stats = self._secondary_header_stats
 
-    header_stats = join(header_stats, '', width - len(header) - 4)
+    header_stats = join(header_stats, '', width - len(header) - 4).rstrip()
     return '%s (%s):' % (header, header_stats) if header_stats else '%s:' % 
header
 
   def _y_axis_label(self, value, is_primary):
@@ -560,12 +559,8 @@ class GraphPanel(nyx.panel.Panel):
     self._draw_subgraph(subwindow, attr, attr.stat.primary, 0, PRIMARY_COLOR)
     self._draw_subgraph(subwindow, attr, attr.stat.secondary, 
attr.subgraph_width, SECONDARY_COLOR)
 
-    if attr.stat.stat_type() == GraphStat.BANDWIDTH:
-      if subwindow.width <= COLLAPSE_WIDTH:
-        _draw_bandwidth_stats(subwindow, DEFAULT_CONTENT_HEIGHT + 
attr.subgraph_height - 4, attr.stat, attr.subgraph_width)
-
-      if accounting_stats:
-        _draw_accounting_stats(subwindow, DEFAULT_CONTENT_HEIGHT + 
attr.subgraph_height - 2, accounting_stats)
+    if attr.stat.stat_type() == GraphStat.BANDWIDTH and accounting_stats:
+      _draw_accounting_stats(subwindow, DEFAULT_CONTENT_HEIGHT + 
attr.subgraph_height - 2, accounting_stats)
 
   def _draw_subgraph(self, subwindow, attr, data, x, color):
     # Concering our subgraph colums, the y-axis label can be at most six
@@ -709,22 +704,6 @@ class GraphPanel(nyx.panel.Panel):
         self.redraw(True)
 
 
-def _draw_bandwidth_stats(subwindow, y, stat, subgraph_width):
-  """
-  Replaces the x-axis labeling with bandwidth stats. This is done on small
-  screens since this information otherwise wouldn't fit.
-  """
-
-  subwindow.addstr(0, y, ' ' * 500)  # clear line
-
-  runtime = time.time() - stat.start_time
-  primary_footer = 'total: %s, avg: %s/sec' % 
(_size_label(stat.primary.total), _size_label(stat.primary.total / runtime))
-  secondary_footer = 'total: %s, avg: %s/sec' % 
(_size_label(stat.secondary.total), _size_label(stat.secondary.total / runtime))
-
-  subwindow.addstr(1, y, primary_footer, PRIMARY_COLOR)
-  subwindow.addstr(subgraph_width + 1, y, secondary_footer, SECONDARY_COLOR)
-
-
 def _draw_accounting_stats(subwindow, y, accounting):
   if tor_controller().is_alive():
     hibernate_color = CONFIG['attr.hibernate_color'].get(accounting.status, 
RED)
diff --git a/test/panel/graph.py b/test/panel/graph.py
index 40c07fb..f2eca4b 100644
--- a/test/panel/graph.py
+++ b/test/panel/graph.py
@@ -11,7 +11,7 @@ import nyx.panel.graph
 import test
 
 from test import require_curses
-from mock import patch, Mock
+from mock import patch
 
 EXPECTED_ACCOUNTING = """
 Accounting (awake)                 Time to reset: 01:02
@@ -21,17 +21,6 @@ Accounting (awake)                 Time to reset: 01:02
 
 class TestGraph(unittest.TestCase):
   @require_curses
-  @patch('time.time', Mock(return_value = 460.0))
-  def test_draw_bandwidth_stats(self):
-    stat = Mock()
-    stat.start_time = 215.0
-    stat.primary.total = 2306867.2
-    stat.secondary.total = 1782579.2
-
-    rendered = test.render(nyx.panel.graph._draw_bandwidth_stats, 0, stat, 40)
-    self.assertEqual(' total: 17.6 Mb, avg: 73.5 Kb/sec        total: 13.5 Mb, 
avg: 56.8 Kb/sec', rendered.content)
-
-  @require_curses
   @patch('nyx.panel.graph.tor_controller')
   def test_draw_accounting_stats(self, tor_controller_mock):
     tor_controller_mock().is_alive.return_value = True



_______________________________________________
tor-commits mailing list
[email protected]
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits

Reply via email to