mirror of
https://github.com/python/cpython.git
synced 2025-07-07 11:25:30 +00:00
gh-131936: Strengthen check in _suggestions._generate_suggestions
(#131945)
This commit is contained in:
parent
0f511d8b44
commit
511d3440a0
2 changed files with 26 additions and 2 deletions
|
@ -4619,7 +4619,31 @@ class MiscTest(unittest.TestCase):
|
|||
@cpython_only
|
||||
def test_suggestions_extension(self):
|
||||
# Check that the C extension is available
|
||||
import _suggestions # noqa: F401
|
||||
import _suggestions
|
||||
|
||||
self.assertEqual(
|
||||
_suggestions._generate_suggestions(
|
||||
["hello", "world"],
|
||||
"hell"
|
||||
),
|
||||
"hello"
|
||||
)
|
||||
self.assertEqual(
|
||||
_suggestions._generate_suggestions(
|
||||
["hovercraft"],
|
||||
"eels"
|
||||
),
|
||||
None
|
||||
)
|
||||
|
||||
# gh-131936: _generate_suggestions() doesn't accept list subclasses
|
||||
class MyList(list):
|
||||
pass
|
||||
|
||||
with self.assertRaises(TypeError):
|
||||
_suggestions._generate_suggestions(MyList(), "")
|
||||
|
||||
|
||||
|
||||
|
||||
class TestColorizedTraceback(unittest.TestCase):
|
||||
|
|
|
@ -21,7 +21,7 @@ _suggestions__generate_suggestions_impl(PyObject *module,
|
|||
/*[clinic end generated code: output=79be7b653ae5e7ca input=ba2a8dddc654e33a]*/
|
||||
{
|
||||
// Check if dir is a list
|
||||
if (!PyList_Check(candidates)) {
|
||||
if (!PyList_CheckExact(candidates)) {
|
||||
PyErr_SetString(PyExc_TypeError, "candidates must be a list");
|
||||
return NULL;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue