def test_binary_zlibfile(tmpdir, data, compress_level): filename = tmpdir.join('test.pkl').strpath # Regular cases with open(filename, 'wb') as f: with BinaryZlibFile(f, 'wb', compresslevel=compress_level) as fz: assert fz.writable() fz.write(data) assert fz.fileno() == f.fileno() with raises(io.UnsupportedOperation): fz._check_can_read() with raises(io.UnsupportedOperation): fz._check_can_seek() assert fz.closed with raises(ValueError): fz._check_not_closed() with open(filename, 'rb') as f: with BinaryZlibFile(f) as fz: assert fz.readable() if PY3_OR_LATER: assert fz.seekable() assert fz.fileno() == f.fileno() assert fz.read() == data with raises(io.UnsupportedOperation): fz._check_can_write() if PY3_OR_LATER: # io.BufferedIOBase doesn't have seekable() method in # python 2 assert fz.seekable() fz.seek(0) assert fz.tell() == 0 assert fz.closed # Test with a filename as input with BinaryZlibFile(filename, 'wb', compresslevel=compress_level) as fz: assert fz.writable() fz.write(data) with BinaryZlibFile(filename, 'rb') as fz: assert fz.read() == data assert fz.seekable() # Test without context manager fz = BinaryZlibFile(filename, 'wb', compresslevel=compress_level) assert fz.writable() fz.write(data) fz.close() fz = BinaryZlibFile(filename, 'rb') assert fz.read() == data fz.close()
def test_binary_zlib_file(tmpdir, filename): """Testing creation of files depending on the type of the filenames.""" binary_file = BinaryZlibFile(tmpdir.join(filename).strpath, mode='wb') binary_file.close()