So I am working with the below basic function:
def whatever(..):
for input_file in files:
compressed_file = Path(input_file)
if not compressed_file.name.replace('test_', '').startswith(COMPRESSED_FILE_PREFIX):
continue
So I mock the Path
function like this:
@mock.patch('path_to_Path_function.Path')
def test_choose_MFII_files(mock_Path):
mock_Path.return_value = 'files/exchange'
mock_Path.name.return_value = 'whatever'
Now when I run this, I get an error saying
AttributeError: 'str' object has no attribute 'name'
I can see why I get this error, because mock_Path.return_value
is set to a string!
But how can I set mockPath.name.return_value
to whatever; I just want to mock it out.
I think using MagicMock()
somehow would work but I'm not sure how. Any help would be great!