From 9acac9ce68be279f4f51484846bbb92b85c3ed9f Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Mon, 21 May 2012 10:08:30 +0200 Subject: Remove once-per-period functionality of Message.write This is now handled completely by TerminalStatus instead. --- ttystatus/messager.py | 9 ++++----- ttystatus/messager_tests.py | 13 +------------ ttystatus/status.py | 2 +- 3 files changed, 6 insertions(+), 18 deletions(-) diff --git a/ttystatus/messager.py b/ttystatus/messager.py index 0ae18df..d18d188 100644 --- a/ttystatus/messager.py +++ b/ttystatus/messager.py @@ -104,12 +104,11 @@ class Messager(object): '''Is it time to write now?''' return self._now() - self._last_time >= self._period - def write(self, string, force=False): - '''Write raw data, but only once per period.''' + def write(self, string): + '''Write raw data, always.''' string = string[:self.width] - if force or self.time_to_write(): - self._overwrite(string) - self._last_time = self._now() + self._overwrite(string) + self._last_time = self._now() self._cached_msg = string def clear(self): diff --git a/ttystatus/messager_tests.py b/ttystatus/messager_tests.py index 3ce889e..02eaa15 100644 --- a/ttystatus/messager_tests.py +++ b/ttystatus/messager_tests.py @@ -68,17 +68,6 @@ class MessagerTests(unittest.TestCase): def test_cached_write_writes_first_thing(self): self.messager.write('foo') self.assertEqual(self.output.getvalue(), 'foo') - - def test_cached_write_does_not_writes_first_thing_if_at_epoch(self): - self.messager._now = lambda: 0 - self.messager.write('foo') - self.assertEqual(self.output.getvalue(), '') - - def test_cached_write_writes_once_within_a_second(self): - self.messager._now = lambda: self.messager._period + 1 - self.messager.write('foo') - self.messager.write('bar') - self.assertEqual(self.output.getvalue(), 'foo') def test_write_removes_old_message(self): self.messager._now = self.fast_time @@ -110,7 +99,7 @@ class MessagerTests(unittest.TestCase): self.messager._now = lambda: 0 self.messager.write('foo') self.messager.finish() - self.assertEqual(self.output.getvalue(), 'foo\n') + self.assertEqual(self.output.getvalue(), 'foo\r \rfoo\n') def test_has_width(self): self.assertEqual(self.messager.width, 79) diff --git a/ttystatus/status.py b/ttystatus/status.py index a52793d..82457b2 100644 --- a/ttystatus/status.py +++ b/ttystatus/status.py @@ -104,7 +104,7 @@ class TerminalStatus(object): def _write(self): '''Render and output current state of all widgets.''' - self._m.write(self._render(), force=True) + self._m.write(self._render()) def increase(self, key, delta): '''Increase value for a key by a given amount.''' -- cgit v1.2.1