pyupio / dparse

A parser for Python dependency files
MIT License
61 stars 23 forks source link

Pipfile.Updater fails test when trying to delete temporary file before it is closed #54

Open ptmcg opened 2 years ago

ptmcg commented 2 years ago

Description

Test failure while trying to os.remove a file that had not yet been closed.

What I Did

While running tests with tox, got the following error:

        data = open(pipfile.name).read()
>       os.remove(pipfile.name)
E       PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\ptmcg\\AppData\\Local\\Temp\\tmpwetzvkjv'

FAILED tests/test_updater.py::test_update_pipfile - PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\ptmcg\\AppData\...

Fixed by changing the "data.open(pipfile.name).read()" line in dparse/updater.py to:

        with open(pipfile.name) as pf:
            data = pf.read()
        pipfile.close()