def test_make_progress_string_success(self): with open('log.log', 'wb') as f: f.write('Some file contents!') f.seek(10) reader = LogReader(0, 'log.log', Log4jParser(), FakeReceiver(), progress_file_path_prefix='progress') reader.logfile = f reader.logfile_id = '123g456' self.assertEqual(reader._make_progress_string(), 'log.log 123g456 10 19')
def test_ensure_file_is_good_file_is_good(self): with open('log.log', 'wb') as f: f.write('Some file contents!') f.seek(10) reader = LogReader(0, 'log.log', Log4jParser(), FakeReceiver()) reader.logfile = f reader.logfile_id = get_device_and_inode_string(os.fstat(f.fileno())) reader._ensure_file_is_good() self.assertFalse(f.closed) self.assertEqual(reader.logfile, f) self.assertEqual(f.tell(), 10) self.assertEqual(self.fake_logging.log, [])
def test_ensure_file_is_good_file_has_been_rotated(self): with open('log.log', 'wb') as f: f.write('Some file contents!') reader = LogReader(0, 'log.log', Log4jParser(), FakeReceiver()) reader.logfile = f reader.logfile_id = 'not matching' reader._ensure_file_is_good() self.assertTrue(f.closed) self.assertNotEqual(reader.logfile, f) self.assertFalse(reader.logfile.closed) self.assertEqual(reader.logfile.readline(), 'Some file contents!') self.assertEqual(self.fake_logging.log, ['[INFO] The file log.log has been rotated.', '[INFO] Closed log.log.', '[INFO] Opened log.log.'])
def test_make_progress_string_failure(self): reader = LogReader(0, 'log.log', Log4jParser(), FakeReceiver(), progress_file_path_prefix='progress') reader.logfile_id = '123g456' result = reader._make_progress_string() self.assertEqual(result, None) self.assertEqual(self.fake_logging.log, ['[ERROR] Failed to gather progress information for log.log.'])