self.assertEqual(max(1, 2.0, 3), 3)
self.assertEqual(max(1.0, 2, 3), 3)
- self.assertRaises(TypeError, max)
+ with self.assertRaisesRegex(
+ TypeError,
+ 'max expected at least 1 argument, got 0'
+ ):
+ max()
+
self.assertRaises(TypeError, max, 42)
self.assertRaises(ValueError, max, ())
class BadSeq:
self.assertEqual(min(1, 2.0, 3), 1)
self.assertEqual(min(1.0, 2, 3), 1.0)
- self.assertRaises(TypeError, min)
+ with self.assertRaisesRegex(
+ TypeError,
+ 'min expected at least 1 argument, got 0'
+ ):
+ min()
+
self.assertRaises(TypeError, min, 42)
self.assertRaises(ValueError, min, ())
class BadSeq:
const int positional = PyTuple_Size(args) > 1;
int ret;
- if (positional)
+ if (positional) {
v = args;
- else if (!PyArg_UnpackTuple(args, name, 1, 1, &v))
+ }
+ else if (!PyArg_UnpackTuple(args, name, 1, 1, &v)) {
+ if (PyExceptionClass_Check(PyExc_TypeError)) {
+ PyErr_Format(PyExc_TypeError, "%s expected at least 1 argument, got 0", name);
+ }
return NULL;
+ }
emptytuple = PyTuple_New(0);
if (emptytuple == NULL)