diff --git a/micall/tests/test_sample_sheet_parser.py b/micall/tests/test_sample_sheet_parser.py index 45bab7911..d853887f9 100644 --- a/micall/tests/test_sample_sheet_parser.py +++ b/micall/tests/test_sample_sheet_parser.py @@ -730,7 +730,6 @@ def test_extra_commas(self): ss = sample_sheet_parser(StringIO(stub_sample_sheet)) self.assertEqual(ss["Experiment Name"], "10-Jul-2014") - @unittest.expectedFailure def test_underscores_in_sample_name(self): """ Extracts the correct project code having multiple options. diff --git a/micall/utils/sample_sheet_parser.py b/micall/utils/sample_sheet_parser.py index 45ce675dd..f6edfec57 100755 --- a/micall/utils/sample_sheet_parser.py +++ b/micall/utils/sample_sheet_parser.py @@ -179,9 +179,12 @@ def sample_sheet_parser(handle): samp, proj, val = None, None, None if sample_sheet_version == 1: sj, val = elem.split(':') - samp, proj = sj.split(project_delimiter_v1) + components = sj.split(project_delimiter_v1) + samp, proj = (project_delimiter_v1.join(components[:-1]), components[-1]) elif sample_sheet_version == 2: - samp, proj, val = elem.split(project_delimiter_v2) + components = elem.split(project_delimiter_v2) + samp, proj, val = (project_delimiter_v2.join(components[:-2]), + components[-2], components[-1]) if samp == entry['sample'] and proj == entry['project']: if name == 'Research':