예제 #1
0
 def test_refresh_l_size(self):
     pgb_stream = StringIO()
     expected_stream = StringIO()
     pgb = ProgressBar(20, 3, stream=pgb_stream)
     pgb.refresh()
     expected_stream.write("\r["+' '*3+"]")
     self.assertEqual(pgb_stream.getvalue(), expected_stream.getvalue())
예제 #2
0
 def test_refresh(self):
     pgb_stream = StringIO()
     expected_stream = StringIO()
     pgb = ProgressBar(20, stream=pgb_stream)
     self.assertEqual(pgb_stream.getvalue(), expected_stream.getvalue()) # nothing print before refresh
     pgb.refresh()
     expected_stream.write("\r["+' '*20+"]")
     self.assertEqual(pgb_stream.getvalue(), expected_stream.getvalue())
예제 #3
0
 def test_update_relative(self):
     pgb_stream = StringIO()
     expected_stream = StringIO()
     size=20
     pgb = ProgressBar(100, size, stream=pgb_stream)
     last = 0
     for dots in range(5, 105, 5):
         pgb.update(5, exact=False)
         dots //= 5
         expected_stream.write("\r["+('='*dots)+(' '*(size-dots))+"]")
         self.assertEqual(pgb_stream.getvalue(), expected_stream.getvalue())
예제 #4
0
 def _update_test(self, nbops, expected, size = None):
     pgb_stream = StringIO()
     expected_stream = StringIO()
     if size is None:
         pgb = ProgressBar(nbops, stream=pgb_stream)
         size=20
     else:
         pgb = ProgressBar(nbops, size, stream=pgb_stream)
     last = 0
     for round in expected:
         if not hasattr(round, '__int__'):
             dots, update = round
         else:
             dots, update = round, None
         pgb.update()
         if update or (update is None and dots != last):
             last = dots
             expected_stream.write("\r["+('='*dots)+(' '*(size-dots))+"]")
         self.assertEqual(pgb_stream.getvalue(), expected_stream.getvalue())