summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2014-10-10 12:23:00 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2014-10-10 12:23:00 (GMT)
commit866c4e2188eba458f8277e8e67a1601cd17b7855 (patch)
treef56513f58ac7eb7ca4b89415e8bb7b8c05a6bca4
parentb77983d2bdedc028c6bdc501fad9dfc385733f6a (diff)
downloadcpython-866c4e2188eba458f8277e8e67a1601cd17b7855.zip
cpython-866c4e2188eba458f8277e8e67a1601cd17b7855.tar.gz
cpython-866c4e2188eba458f8277e8e67a1601cd17b7855.tar.bz2
test_venv: use support.rmtree() instead of shutil.rmtree() to fix sporadic
failures on Windows
-rw-r--r--Lib/test/test_venv.py21
1 files changed, 10 insertions, 11 deletions
diff --git a/Lib/test/test_venv.py b/Lib/test/test_venv.py
index 8dfff51..b462588 100644
--- a/Lib/test/test_venv.py
+++ b/Lib/test/test_venv.py
@@ -8,13 +8,12 @@ Licensed to the PSF under a contributor agreement.
import ensurepip
import os
import os.path
-import shutil
import struct
import subprocess
import sys
import tempfile
from test.support import (captured_stdout, captured_stderr, run_unittest,
- can_symlink, EnvironmentVarGuard)
+ can_symlink, EnvironmentVarGuard, rmtree)
import textwrap
import unittest
import venv
@@ -56,7 +55,7 @@ class BaseTest(unittest.TestCase):
self.exe = os.path.split(executable)[-1]
def tearDown(self):
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
def run_with_capture(self, func, *args, **kwargs):
with captured_stdout() as output:
@@ -83,7 +82,7 @@ class BasicTest(BaseTest):
"""
Test the create function with default arguments.
"""
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
self.run_with_capture(venv.create, self.env_dir)
self.isdir(self.bindir)
self.isdir(self.include)
@@ -121,7 +120,7 @@ class BasicTest(BaseTest):
self.assertEqual(sys.base_exec_prefix, sys.exec_prefix)
# check a venv's prefixes
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
self.run_with_capture(venv.create, self.env_dir)
envpy = os.path.join(self.env_dir, self.bindir, self.exe)
cmd = [envpy, '-c', None]
@@ -188,7 +187,7 @@ class BasicTest(BaseTest):
if os.path.islink(fn) or os.path.isfile(fn):
os.remove(fn)
elif os.path.isdir(fn):
- shutil.rmtree(fn)
+ rmtree(fn)
def test_unoverwritable_fails(self):
#create a file clashing with directories in the env dir
@@ -254,7 +253,7 @@ class BasicTest(BaseTest):
"""
Test that the sys.executable value is as expected.
"""
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
self.run_with_capture(venv.create, self.env_dir)
envpy = os.path.join(os.path.realpath(self.env_dir), self.bindir, self.exe)
cmd = [envpy, '-c', 'import sys; print(sys.executable)']
@@ -268,7 +267,7 @@ class BasicTest(BaseTest):
"""
Test that the sys.executable value is as expected.
"""
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
builder = venv.EnvBuilder(clear=True, symlinks=True)
builder.create(self.env_dir)
envpy = os.path.join(os.path.realpath(self.env_dir), self.bindir, self.exe)
@@ -299,12 +298,12 @@ class EnsurePipTest(BaseTest):
def test_no_pip_by_default(self):
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
self.run_with_capture(venv.create, self.env_dir)
self.assert_pip_not_installed()
def test_explicit_no_pip(self):
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
self.run_with_capture(venv.create, self.env_dir, with_pip=False)
self.assert_pip_not_installed()
@@ -321,7 +320,7 @@ class EnsurePipTest(BaseTest):
# Requesting pip fails without SSL (http://bugs.python.org/issue19744)
@unittest.skipIf(ssl is None, ensurepip._MISSING_SSL_MESSAGE)
def test_with_pip(self):
- shutil.rmtree(self.env_dir)
+ rmtree(self.env_dir)
with EnvironmentVarGuard() as envvars:
# pip's cross-version compatibility may trigger deprecation
# warnings in current versions of Python. Ensure related