[lang-ref] ( move_file ) ( python )
def test_move_file(pushd):
# os.rename(b, a)
import shutil
os.mkdir('dir1')
p = Path('file1.txt')
p.touch()
os.rename('file1.txt', 'dir1/file2.txt')
assert not os.path.isfile('file1.txt')
assert os.path.isfile('dir1/file2.txt')
os.unlink('dir1/file2.txt')
p.touch()
shutil.move('file1.txt', 'dir1/file2.txt')
assert not os.path.isfile('file1.txt')
assert os.path.isfile('dir1/file2.txt')
os.unlink('dir1/file2.txt')
def test_move_file_alternative(pushd):
# p.rename(after)
os.mkdir('dir1')
p = Path('file1.txt')
p.touch()
assert os.path.isfile('file1.txt')
with pytest.raises(IsADirectoryError):
p.rename('dir1/') # Didn't work on macOS (may be environment-dependent).
assert not os.path.isfile('dir1/file1.txt')
p.rename('dir1/file2.txt')
assert not os.path.isfile('file1.txt')
assert os.path.isfile('dir1/file2.txt')