def test_num_logs(self): logs = MachineLogs(self.logs_dir, recursive=False) self.assertEqual(logs.num_logs, 3) self.assertEqual(logs.num_tlogs, 2) self.assertEqual(logs.num_dlogs, 1) logs = MachineLogs(self.mix_type_dir) self.assertEqual(logs.num_dlogs, 1) self.assertEqual(logs.num_tlogs, 2)
def test_loading(self): # test root level directory logs = MachineLogs(self.logs_dir, recursive=False) self.assertEqual(logs.num_logs, 3) # test recursive logs = MachineLogs(self.logs_dir) self.assertEqual(logs.num_logs, 3) # test using zip file zfile = get_file_from_cloud_test_repo(['mlc_logs', 'mixed_types.zip']) logs = MachineLogs.from_zip(zfile) self.assertEqual(logs.num_logs, 3)
def test_loading(self): # test root level directory logs = MachineLogs(self.logs_dir, recursive=False) self.assertEqual(logs.num_logs, 3) # test recursive logs = MachineLogs(self.logs_dir) self.assertEqual(logs.num_logs, 3) # test using zip file zfile = osp.join(self._logs_dir, 'mixed_types.zip') logs = MachineLogs.from_zip(zfile) self.assertEqual(logs.num_logs, 3)
def test_writing_to_csv(self): logs = MachineLogs(self.logs_dir, recursive=False) files = logs.to_csv() self.assertIsInstance(files, list) # clean up by deleting files for file in files: os.remove(file)
def test_anonymize(self): logs = MachineLogs(self.logs_dir, recursive=False) files = logs.anonymize(inplace=False, suffix='_suffixed') self.assertIsInstance(files, list) # cleanup for pdir, sdir, files in os.walk(self.logs_dir): to_remove = [file for file in files if 'suffixed' in file] for file in to_remove: os.remove(osp.join(pdir, file))
def test_append(self): # append a directory logs = MachineLogs(self.logs_altdir) logs.append(self.logs_altdir) self.assertEqual(logs.num_logs, 8) # append a file string single_file = osp.join( self.logs_altdir, 'Anonymous_4DC Treatment_JST90_TX_20140712094246.bin') logs.append(single_file) # append a MachineLog single_log = load_log(single_file) logs.append(single_log) # try to append something that's not a Log log = None with self.assertRaises(TypeError): logs.append(log)
def test_append(self): # append a directory logs = MachineLogs( get_folder_from_cloud_test_repo(['mlc_logs', 'altdir'])) logs.append(get_folder_from_cloud_test_repo(['mlc_logs', 'altdir'])) self.assertEqual(logs.num_logs, 8) # append a file string single_file = get_file_from_cloud_test_repo([ 'mlc_logs', 'altdir', 'Anonymous_4DC Treatment_JST90_TX_20140712094246.bin' ]) logs.append(single_file) # append a MachineLog single_log = load_log(single_file) logs.append(single_log) # try to append something that's not a Log log = None with self.assertRaises(TypeError): logs.append(log)
def test_empty_dir(self): empty_dir = osp.join(self._logs_dir, 'empty_dir') logs = MachineLogs(empty_dir) self.assertEqual(logs.num_logs, 0) with self.assertRaises(ValueError): logs.avg_gamma()
def test_avg_gamma_pct(self): logs = MachineLogs(self.logs_dir, recursive=False) gamma = logs.avg_gamma_pct() self.assertAlmostEqual(gamma, 100, delta=0.01)
def test_dlog_matches_missing(self): """Test that Dlogs without a match are skipped.""" log_dir = osp.join(self._logs_dir, 'some_matches_missing') logs = MachineLogs(log_dir) self.assertEqual(logs.num_logs, 1)
def test_mixed_types(self): """test mixed directory (tlogs & dlogs)""" log_dir = osp.join(self._logs_dir, 'mixed_types') logs = MachineLogs(log_dir) self.assertEqual(logs.num_logs, 3)
def test_empty_dir(self): empty_dir = osp.join(self._logs_dir, 'empty_dir') logs = MachineLogs(empty_dir) self.assertEqual(logs.num_logs, 0)
def test_empty_dir(self): empty_dir = get_folder_from_cloud_test_repo(['mlc_logs', 'empty_dir']) logs = MachineLogs(empty_dir) self.assertEqual(logs.num_logs, 0) with self.assertRaises(ValueError): logs.avg_gamma()
def test_basic_parameters(self): # no real test other than to make sure it works logs = MachineLogs(self.logs_dir) logs.report_basic_parameters()
def test_writing_csv_with_no_logs(self): empty_dir = osp.join(self._logs_dir, 'empty_dir') logs = MachineLogs(empty_dir) logs.to_csv() # shouldn't raise but will print a statement
def test_writing_csv_with_no_logs(self): empty_dir = get_folder_from_cloud_test_repo(['mlc_logs', 'empty_dir']) logs = MachineLogs(empty_dir) logs.to_csv() # shouldn't raise but will print a statement
def test_dlog_matches_missing(self): """Test that Dlogs without a match are skipped.""" log_dir = get_folder_from_cloud_test_repo( ['mlc_logs', 'some_matches_missing']) logs = MachineLogs(log_dir) self.assertEqual(logs.num_logs, 1)
def test_mixed_types(self): """test mixed directory (tlogs & dlogs)""" log_dir = get_folder_from_cloud_test_repo(['mlc_logs', 'mixed_types']) logs = MachineLogs(log_dir) self.assertEqual(logs.num_logs, 3)