def _get_filehandle(filepath_or, *args, **kwargs): """Open file if `filepath_or` looks like a string/unicode/bytes, else pass through. """ if _is_string_or_bytes(filepath_or): if h5py.is_hdf5(filepath_or): fh, own_fh = h5py.File(filepath_or, *args, **kwargs), True else: fh, own_fh = open(filepath_or, *args, **kwargs), True else: fh, own_fh = filepath_or, False return fh, own_fh
def _get_filehandle(filepath_or, *args, **kwargs): """Open file if `filepath_or` looks like a string/unicode/bytes, else pass through. """ if _is_string_or_bytes(filepath_or): if h5py.is_hdf5(filepath_or): fh, own_fh = h5py.File(filepath_or, *args, **kwargs), True else: fh, own_fh = open(filepath_or, *args, **kwargs), True else: fh, own_fh = filepath_or, False return fh, own_fh
def test_is_string_or_bytes(self): self.assertTrue(_is_string_or_bytes('foo')) self.assertTrue(_is_string_or_bytes(u'foo')) self.assertTrue(_is_string_or_bytes(b'foo')) self.assertFalse(_is_string_or_bytes(StringIO('bar'))) self.assertFalse(_is_string_or_bytes([1]))
def test_is_string_or_bytes(self): self.assertTrue(_is_string_or_bytes('foo')) self.assertTrue(_is_string_or_bytes(u'foo')) self.assertTrue(_is_string_or_bytes(b'foo')) self.assertFalse(_is_string_or_bytes(StringIO('bar'))) self.assertFalse(_is_string_or_bytes([1]))