diff options
author | Lars Wirzenius <liw@liw.fi> | 2015-09-27 12:18:22 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2015-09-27 12:18:22 +0300 |
commit | ab009314c2acd9e520f2d23a085a41556d424df5 (patch) | |
tree | f02c9b542e50c61e8e1a78dead494bf5a0999e9c /ttystatus | |
parent | d629ca9326f4693440b39f5fa73d62834279edbc (diff) | |
download | python-ttystatus-ab009314c2acd9e520f2d23a085a41556d424df5.tar.gz |
Fix tests for multiline TerminalStatus support
Diffstat (limited to 'ttystatus')
-rw-r--r-- | ttystatus/status.py | 11 | ||||
-rw-r--r-- | ttystatus/status_tests.py | 12 |
2 files changed, 15 insertions, 8 deletions
diff --git a/ttystatus/status.py b/ttystatus/status.py index 61adcbe..0f57f74 100644 --- a/ttystatus/status.py +++ b/ttystatus/status.py @@ -40,7 +40,7 @@ class TerminalStatus(object): '''Add a new widget to the status display.''' self._widget_rows[-1].append(widget) - def start_new_line(self): + def start_new_line(self): # pragma: no cover '''Start a new line of widgets.''' self._widget_rows.append([]) @@ -55,11 +55,18 @@ class TerminalStatus(object): ''' for i, line in enumerate(format_string.split('\n')): - if i > 0: + if i > 0: # pragma: no cover self.start_new_line() for widget in ttystatus.parse(line): self.add(widget) + @property + def widgets(self): + result = [] + for row in self._widget_rows: + result += row + return result + def clear(self): '''Remove all widgets.''' self._widget_rows = [[]] diff --git a/ttystatus/status_tests.py b/ttystatus/status_tests.py index d9d8bd8..1cadfda 100644 --- a/ttystatus/status_tests.py +++ b/ttystatus/status_tests.py @@ -56,23 +56,23 @@ class TerminalStatusTests(unittest.TestCase): self.ts = ttystatus.TerminalStatus(messager=DummyMessager()) def test_has_no_widgets(self): - self.assertEqual(self.ts._widgets, []) + self.assertEqual(self.ts.widgets, []) def test_adds_widget(self): w = ttystatus.Literal('foo') self.ts.add(w) - self.assertEqual(self.ts._widgets, [w]) + self.assertEqual(self.ts.widgets, [w]) def test_adds_widgets_from_format_string(self): self.ts.format('hello, %String(name)') - self.assertEqual(len(self.ts._widgets), 2) - self.assertEqual(type(self.ts._widgets[0]), ttystatus.Literal) - self.assertEqual(type(self.ts._widgets[1]), ttystatus.String) + self.assertEqual(len(self.ts.widgets), 2) + self.assertEqual(type(self.ts.widgets[0]), ttystatus.Literal) + self.assertEqual(type(self.ts.widgets[1]), ttystatus.String) def test_removes_all_widgets(self): self.ts.add(ttystatus.Literal('foo')) self.ts.clear() - self.assertEqual(self.ts._widgets, []) + self.assertEqual(self.ts.widgets, []) def test_returns_empty_string_for_unknown_value(self): self.assertEqual(self.ts['foo'], '') |