diff --git a/lib/svtplay/tests/__init__.py b/lib/svtplay/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/svtplay/tests/output.py b/lib/svtplay/tests/output.py new file mode 100644 index 0000000..a3f683a --- /dev/null +++ b/lib/svtplay/tests/output.py @@ -0,0 +1,61 @@ +#!/usr/bin/python +from __future__ import absolute_import +import unittest +import svtplay.output + +class mockfile(object): + def __init__(self): + self.content = [] + + def write(self, string): + self.content.append(string) + + def read(self): + return self.content.pop() + +class progressbarTest(unittest.TestCase): + def setUp(self): + self.mockfile = mockfile() + svtplay.output.progress_stream = self.mockfile + + def test_0_100(self): + svtplay.output.progressbar(100, 0) + self.assertEqual( + self.mockfile.read(), + "\r[000/100][..................................................] " + ) + + def test_progress_1_100(self): + svtplay.output.progressbar(100, 1) + self.assertEqual( + self.mockfile.read(), + "\r[001/100][..................................................] " + ) + + def test_progress_2_100(self): + svtplay.output.progressbar(100, 2) + self.assertEqual( + self.mockfile.read(), + "\r[002/100][=.................................................] " + ) + + def test_progress_50_100(self): + svtplay.output.progressbar(100, 50) + self.assertEqual( + self.mockfile.read(), + "\r[050/100][=========================.........................] " + ) + + def test_progress_100_100(self): + svtplay.output.progressbar(100, 100) + self.assertEqual( + self.mockfile.read(), + "\r[100/100][==================================================] " + ) + + def test_progress_20_100_msg(self): + svtplay.output.progressbar(100, 20, "msg") + self.assertEqual( + self.mockfile.read(), + "\r[020/100][==========........................................] msg" + )