mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
[3.14] gh-132983: Slightly tweak error messages for _zstd compressor/decompressor options dict (GH-134601) (#134602)
gh-132983: Slightly tweak error messages for _zstd compressor/decompressor options dict (GH-134601)
Slightly tweak error messages for options dict
(cherry picked from commit f478331f98
)
Co-authored-by: Emma Smith <emma@emmatyping.dev>
This commit is contained in:
parent
7476f90af2
commit
f301af627e
3 changed files with 11 additions and 12 deletions
|
@ -1424,11 +1424,12 @@ class FileTestCase(unittest.TestCase):
|
|||
with self.assertRaises(ValueError):
|
||||
ZstdFile(io.BytesIO(COMPRESSED_100_PLUS_32KB), "rw")
|
||||
|
||||
with self.assertRaisesRegex(TypeError, r"NOT be CompressionParameter"):
|
||||
with self.assertRaisesRegex(TypeError,
|
||||
r"NOT be a CompressionParameter"):
|
||||
ZstdFile(io.BytesIO(), 'rb',
|
||||
options={CompressionParameter.compression_level:5})
|
||||
with self.assertRaisesRegex(TypeError,
|
||||
r"NOT be DecompressionParameter"):
|
||||
r"NOT be a DecompressionParameter"):
|
||||
ZstdFile(io.BytesIO(), 'wb',
|
||||
options={DecompressionParameter.window_log_max:21})
|
||||
|
||||
|
|
|
@ -93,24 +93,23 @@ _zstd_set_c_parameters(ZstdCompressor *self, PyObject *level_or_options,
|
|||
/* Check key type */
|
||||
if (Py_TYPE(key) == mod_state->DParameter_type) {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
"Key of compression option dict should "
|
||||
"NOT be DecompressionParameter.");
|
||||
"Key of compression options dict should "
|
||||
"NOT be a DecompressionParameter attribute.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
int key_v = PyLong_AsInt(key);
|
||||
if (key_v == -1 && PyErr_Occurred()) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"Key of options dict should be a CompressionParameter attribute.");
|
||||
"Key of options dict should be either a "
|
||||
"CompressionParameter attribute or an int.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
// TODO(emmatyping): check bounds when there is a value error here for better
|
||||
// error message?
|
||||
int value_v = PyLong_AsInt(value);
|
||||
if (value_v == -1 && PyErr_Occurred()) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"Value of option dict should be an int.");
|
||||
"Value of options dict should be an int.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
|
|
@ -112,7 +112,7 @@ _zstd_set_d_parameters(ZstdDecompressor *self, PyObject *options)
|
|||
if (Py_TYPE(key) == mod_state->CParameter_type) {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
"Key of decompression options dict should "
|
||||
"NOT be CompressionParameter.");
|
||||
"NOT be a CompressionParameter attribute.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -120,12 +120,11 @@ _zstd_set_d_parameters(ZstdDecompressor *self, PyObject *options)
|
|||
int key_v = PyLong_AsInt(key);
|
||||
if (key_v == -1 && PyErr_Occurred()) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"Key of options dict should be a DecompressionParameter attribute.");
|
||||
"Key of options dict should be either a "
|
||||
"DecompressionParameter attribute or an int.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
// TODO(emmatyping): check bounds when there is a value error here for better
|
||||
// error message?
|
||||
int value_v = PyLong_AsInt(value);
|
||||
if (value_v == -1 && PyErr_Occurred()) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue