def test_print_no_progress(self, mock_stdout): def mock_write(msg): written_lines.append(msg) written_lines = [] mock_stdout.write.side_effect = mock_write lc = CGILookasideCache('_', '_', '_') lc.print_progress(0.0, 0.0, 0.0, 0.0) self.assertEqual(len(written_lines), 0)
def test_print_upload_progress(self, mock_stdout): def mock_write(msg): written_lines.append(msg) written_lines = [] expected_lines = [ '\r################## 25.0%', # noqa '\r#################################### 50.0%', # noqa '\r###################################################### 75.0%', # noqa '\r######################################################################## 100.0%', # noqa ] mock_stdout.write.side_effect = mock_write lc = CGILookasideCache('_', '_', '_') lc.print_progress(0.0, 0.0, 2000.0, 500.0) self.assertEqual(mock_stdout.write.call_count, 1) self.assertEqual(len(written_lines), 1) lc.print_progress(0.0, 0.0, 2000.0, 1000.0) self.assertEqual(mock_stdout.write.call_count, 2) self.assertEqual(len(written_lines), 2) lc.print_progress(0.0, 0.0, 2000.0, 1500.0) self.assertEqual(mock_stdout.write.call_count, 3) self.assertEqual(len(written_lines), 3) lc.print_progress(0.0, 0.0, 2000.0, 2000.0) self.assertEqual(mock_stdout.write.call_count, 4) self.assertEqual(len(written_lines), 4) self.assertEqual(written_lines, expected_lines)