def test_handles_comment_headerlines_appropriately(self): t = TableResource() is_valid, err = t.validate_type( os.path.join(TESTDIR, 'test_general_table.with_comment.tsv'), 'tsv') self.assertTrue(is_valid) self.assertIsNone(err)
def test_fails_at_empty_table(self): ''' If the file is literally empty, check that it fails ''' t = TableResource() is_valid, err = t.validate_type(os.path.join(TESTDIR, 'test_empty.tsv')) self.assertFalse(is_valid) self.assertEqual(err, PARSE_ERROR)
def test_reads_basic_table(self): ''' Is able to parse and report validation on a well-formatted general table. ''' t = TableResource() is_valid, err = t.validate_type( os.path.join(TESTDIR, 'test_general_table.tsv')) self.assertTrue(is_valid) self.assertIsNone(err)
def test_reader_type(self): ''' Is able to return the correct parser for the file extension Note that none of the paths below actually have to exist. The method is just examining the file extension. ''' t = TableResource() reader = t.get_reader('test_general_table.tsv') self.assertEqual(reader, pd.read_table) reader = t.get_reader('test_integer_matrix.csv') self.assertEqual(reader, pd.read_csv) reader = t.get_reader('test_integer_matrix.CSV') self.assertEqual(reader, pd.read_csv) reader = t.get_reader('example_bed.bed') self.assertEqual(reader, pd.read_table) reader = t.get_reader('something.xls') self.assertEqual(reader, pd.read_excel) reader = t.get_reader('junk.abc') self.assertIsNone(reader) reader = t.get_reader('junk.odc') self.assertIsNone(reader)
def test_fails_malformatted_basic_table(self): t = TableResource() is_valid, err = t.validate_type( os.path.join(TESTDIR, 'test_malformatted_table.tsv')) self.assertFalse(is_valid) self.assertEqual(err, PARSE_ERROR)
def test_reports_unknown_parser(self): t = TableResource() is_valid, err = t.validate_type(os.path.join(TESTDIR, 'something.abc')) self.assertFalse(is_valid) self.assertEqual(err, PARSER_NOT_FOUND_ERROR)