summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2011-01-30 19:01:51 +0000
committerLars Wirzenius <liw@liw.fi>2011-01-30 19:01:51 +0000
commitc70818c596b752d3e807736723a1cf64353ccbaf (patch)
treed6020888f24a33fa0bf5680b277c5c044a9790a0
parentebf5abb9285ae04f18466f22f03d3e074cff309e (diff)
downloadpython-ttystatus-c70818c596b752d3e807736723a1cf64353ccbaf.tar.gz
Add test for TerminalStatus.disable method.
-rw-r--r--ttystatus/status.py6
-rw-r--r--ttystatus/status_tests.py17
2 files changed, 22 insertions, 1 deletions
diff --git a/ttystatus/status.py b/ttystatus/status.py
index 6d42ba7..81354f9 100644
--- a/ttystatus/status.py
+++ b/ttystatus/status.py
@@ -85,3 +85,9 @@ class TerminalStatus(object):
def finish(self):
'''Finish status display.'''
self._m.finish()
+
+ def disable(self):
+ '''Disable all output.'''
+
+ def enable(self):
+ '''Enable output if it has been disabled.'''
diff --git a/ttystatus/status_tests.py b/ttystatus/status_tests.py
index 36716fd..78a7f44 100644
--- a/ttystatus/status_tests.py
+++ b/ttystatus/status_tests.py
@@ -14,6 +14,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+import StringIO
import unittest
import ttystatus
@@ -22,6 +23,9 @@ import ttystatus
class DummyMessager(object):
width = 80
+
+ def __init__(self):
+ self.written = StringIO.StringIO()
def clear(self):
pass
@@ -30,7 +34,7 @@ class DummyMessager(object):
return True
def write(self, string):
- pass
+ self.written.write(string)
def notify(self, string):
pass
@@ -109,3 +113,14 @@ class TerminalStatusTests(unittest.TestCase):
def test_has_finish_method(self):
self.assertEqual(self.ts.finish(), None)
+ def test_writes_output_by_default(self):
+ self.ts.add(ttystatus.String('foo'))
+ self.ts['foo'] = 'bar'
+ self.assertEqual(self.ts._m.written.getvalue(), 'bar')
+
+ def test_disables_output(self):
+ self.ts.add(ttystatus.String('foo'))
+ self.ts.disable()
+ self.ts['foo'] = 'bar'
+ self.assertEqual(self.ts._m.written.getvalue(), '')
+