1
Wie könnte ich ein iterierbares Element vortäuschen?TypeError: Argument vom Typ "Mock" ist nicht iterierbar
Bei dem Versuch, diese Methode zu testen:
def convert_time_field(klass, field, default=None):
time = GrapheneHelper.get_json_field(klass, field, default)
if time is None:
return None
else:
return iso8601.parse_date(time)
Mein erster Test gibt diesen Fehler zurück: TypeError: argument of type 'Mock' is not iterable
def test_convert_time_field(self):
""" Return YYYY-MM-DDTHH:MM:FF in iso8601 format """
time = '2017-09-18T23:09:57Z'
expected_time = '2017-09-18 23:09:57+00:00'
mock_klass = Mock()
self.assertEqual(GrapheneHelper.convert_time_field(mock_klass, time, default=None), expected_time)
Was ich über Mocks in diesem Fall bin Missverständnis?
Ich glaube, Sie wollen eine 'MagicMock'. Pro docs: https://docs.python.org/3/library/unittest.mock-examples.html#mocking-a-generator-method – RobertB
Ich benutze Python 2.7 ... Ich denke, es wird unterstützt - wird geben es ist ein Versuch –