diff -r cf8ac1272e07 Lib/test/test_functools.py --- a/Lib/test/test_functools.py Thu Nov 21 19:23:50 2013 +0200 +++ b/Lib/test/test_functools.py Thu Nov 21 20:05:36 2013 +0200 @@ -155,7 +155,8 @@ args = (object(), object()) args_repr = ', '.join(repr(a) for a in args) kwargs = {'a': object(), 'b': object()} - kwargs_repr = ', '.join("%s=%r" % (k, v) for k, v in kwargs.items()) + kwargs_pairs = ["%s=%r" % (k, v) for k, v in kwargs.items()] + kwargs_reprs = [', '.join(perm) for perm in permutations(kwargs_pairs)] if self.partial is c_functools.partial: name = 'functools.partial' else: @@ -170,12 +171,14 @@ repr(f)) f = self.partial(capture, **kwargs) - self.assertEqual('{}({!r}, {})'.format(name, capture, kwargs_repr), - repr(f)) + self.assertIn(repr(f), + ['{}({!r}, {})'.format(name, capture, kwargs_repr) + for kwargs_repr in kwargs_reprs]) f = self.partial(capture, *args, **kwargs) - self.assertEqual('{}({!r}, {}, {})'.format(name, capture, args_repr, kwargs_repr), - repr(f)) + self.assertIn(repr(f), + ['{}({!r}, {}, {})'.format(name, capture, args_repr, kwargs_repr) + for kwargs_repr in kwargs_reprs]) def test_pickle(self): f = self.partial(signature, 'asdf', bar=True)