mirror of https://github.com/python/cpython
Make bytesobject raise ValueError instead of TypeError again (thanks, Nick)
This commit is contained in:
parent
89da5d7c3d
commit
d204a715f4
|
@ -60,13 +60,13 @@ class BytesTest(unittest.TestCase):
|
||||||
self.assertRaises(ValueError, bytes, [-1])
|
self.assertRaises(ValueError, bytes, [-1])
|
||||||
self.assertRaises(ValueError, bytes, [-sys.maxint])
|
self.assertRaises(ValueError, bytes, [-sys.maxint])
|
||||||
self.assertRaises(ValueError, bytes, [-sys.maxint-1])
|
self.assertRaises(ValueError, bytes, [-sys.maxint-1])
|
||||||
self.assertRaises(TypeError, bytes, [-sys.maxint-2])
|
self.assertRaises(ValueError, bytes, [-sys.maxint-2])
|
||||||
self.assertRaises(TypeError, bytes, [-10**100])
|
self.assertRaises(ValueError, bytes, [-10**100])
|
||||||
self.assertRaises(ValueError, bytes, [256])
|
self.assertRaises(ValueError, bytes, [256])
|
||||||
self.assertRaises(ValueError, bytes, [257])
|
self.assertRaises(ValueError, bytes, [257])
|
||||||
self.assertRaises(ValueError, bytes, [sys.maxint])
|
self.assertRaises(ValueError, bytes, [sys.maxint])
|
||||||
self.assertRaises(TypeError, bytes, [sys.maxint+1])
|
self.assertRaises(ValueError, bytes, [sys.maxint+1])
|
||||||
self.assertRaises(TypeError, bytes, [10**100])
|
self.assertRaises(ValueError, bytes, [10**100])
|
||||||
|
|
||||||
def test_repr(self):
|
def test_repr(self):
|
||||||
self.assertEqual(repr(bytes()), "bytes()")
|
self.assertEqual(repr(bytes()), "bytes()")
|
||||||
|
|
|
@ -245,7 +245,7 @@ bytes_contains(PyBytesObject *self, PyObject *value)
|
||||||
if (PyBytes_Check(value))
|
if (PyBytes_Check(value))
|
||||||
return bytes_substring(self, (PyBytesObject *)value);
|
return bytes_substring(self, (PyBytesObject *)value);
|
||||||
|
|
||||||
ival = PyNumber_AsSsize_t(value, PyExc_TypeError);
|
ival = PyNumber_AsSsize_t(value, PyExc_ValueError);
|
||||||
if (ival == -1 && PyErr_Occurred())
|
if (ival == -1 && PyErr_Occurred())
|
||||||
return -1;
|
return -1;
|
||||||
if (ival < 0 || ival >= 256) {
|
if (ival < 0 || ival >= 256) {
|
||||||
|
@ -365,7 +365,7 @@ bytes_setitem(PyBytesObject *self, Py_ssize_t i, PyObject *value)
|
||||||
if (value == NULL)
|
if (value == NULL)
|
||||||
return bytes_setslice(self, i, i+1, NULL);
|
return bytes_setslice(self, i, i+1, NULL);
|
||||||
|
|
||||||
ival = PyNumber_AsSsize_t(value, PyExc_TypeError);
|
ival = PyNumber_AsSsize_t(value, PyExc_ValueError);
|
||||||
if (ival == -1 && PyErr_Occurred())
|
if (ival == -1 && PyErr_Occurred())
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -448,7 +448,7 @@ bytes_init(PyBytesObject *self, PyObject *args, PyObject *kwds)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Is it an int? */
|
/* Is it an int? */
|
||||||
count = PyNumber_AsSsize_t(arg, PyExc_TypeError);
|
count = PyNumber_AsSsize_t(arg, PyExc_ValueError);
|
||||||
if (count == -1 && PyErr_Occurred())
|
if (count == -1 && PyErr_Occurred())
|
||||||
PyErr_Clear();
|
PyErr_Clear();
|
||||||
else {
|
else {
|
||||||
|
@ -500,7 +500,7 @@ bytes_init(PyBytesObject *self, PyObject *args, PyObject *kwds)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Interpret it as an int (__index__) */
|
/* Interpret it as an int (__index__) */
|
||||||
value = PyNumber_AsSsize_t(item, PyExc_TypeError);
|
value = PyNumber_AsSsize_t(item, PyExc_ValueError);
|
||||||
Py_DECREF(item);
|
Py_DECREF(item);
|
||||||
if (value == -1 && PyErr_Occurred())
|
if (value == -1 && PyErr_Occurred())
|
||||||
goto error;
|
goto error;
|
||||||
|
|
Loading…
Reference in New Issue