From 9b13614de9c0728a3951f3be2e98b5d09e4314f2 Mon Sep 17 00:00:00 2001 From: "Jason R. Coombs" Date: Wed, 24 Dec 2014 16:45:17 -0500 Subject: Add test making explicit the expectation that pkg_resources shouldn't import setuptools (or be dependent on it in any way). Ref #311. --- tests/test_pkg_resources.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'tests') diff --git a/tests/test_pkg_resources.py b/tests/test_pkg_resources.py index 11edfe85..564d7cec 100644 --- a/tests/test_pkg_resources.py +++ b/tests/test_pkg_resources.py @@ -4,6 +4,7 @@ import os import zipfile import datetime import time +import subprocess import pkg_resources @@ -89,3 +90,22 @@ class TestResourceManager(object): type_ = str(type(path)) message = "Unexpected type from get_cache_path: " + type_ assert isinstance(path, (unicode, str)), message + + +class TestIndependence: + """ + Tests to ensure that pkg_resources runs independently from setuptools. + """ + def test_setuptools_not_imported(self): + """ + In a separate Python environment, import pkg_resources and assert + that action doesn't cause setuptools to be imported. + """ + lines = ( + 'import pkg_resources', + 'import sys', + 'assert "setuptools" not in sys.modules, ' + '"setuptools was imported"', + ) + cmd = [sys.executable, '-c', '; '.join(lines)] + subprocess.check_call(cmd) -- cgit v1.2.3