aboutsummaryrefslogtreecommitdiffstats
path: root/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests
diff options
context:
space:
mode:
Diffstat (limited to 'jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests')
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/__init__.py323
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/contexts.py85
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/environment.py60
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/fixtures.py27
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/py26compat.py14
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/script-with-bom.py3
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/server.py65
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_bdist_egg.py43
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_build_ext.py18
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_develop.py103
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_dist_info.py70
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_easy_install.py524
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_egg_info.py98
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_find_packages.py170
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_integration.py99
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_markerlib.py63
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_msvc9compiler.py179
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_packageindex.py203
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sandbox.py102
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sdist.py419
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_test.py91
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_upload_docs.py59
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_windows_wrappers.py183
-rw-r--r--jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/textwrap.py8
24 files changed, 0 insertions, 3009 deletions
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/__init__.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/__init__.py
deleted file mode 100644
index b8a29cb..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/__init__.py
+++ /dev/null
@@ -1,323 +0,0 @@
-"""Tests for the 'setuptools' package"""
-import sys
-import os
-import distutils.core
-import distutils.cmd
-from distutils.errors import DistutilsOptionError, DistutilsPlatformError
-from distutils.errors import DistutilsSetupError
-from distutils.core import Extension
-from distutils.version import LooseVersion
-from setuptools.compat import func_code
-
-import pytest
-
-import setuptools.dist
-import setuptools.depends as dep
-from setuptools import Feature
-from setuptools.depends import Require
-
-def makeSetup(**args):
- """Return distribution from 'setup(**args)', without executing commands"""
-
- distutils.core._setup_stop_after = "commandline"
-
- # Don't let system command line leak into tests!
- args.setdefault('script_args',['install'])
-
- try:
- return setuptools.setup(**args)
- finally:
- distutils.core._setup_stop_after = None
-
-
-needs_bytecode = pytest.mark.skipif(
- not hasattr(dep, 'get_module_constant'),
- reason="bytecode support not available",
-)
-
-class TestDepends:
-
- def testExtractConst(self):
- if not hasattr(dep, 'extract_constant'):
- # skip on non-bytecode platforms
- return
-
- def f1():
- global x, y, z
- x = "test"
- y = z
-
- fc = func_code(f1)
-
- # unrecognized name
- assert dep.extract_constant(fc,'q', -1) is None
-
- # constant assigned
- dep.extract_constant(fc,'x', -1) == "test"
-
- # expression assigned
- dep.extract_constant(fc,'y', -1) == -1
-
- # recognized name, not assigned
- dep.extract_constant(fc,'z', -1) is None
-
- def testFindModule(self):
- with pytest.raises(ImportError):
- dep.find_module('no-such.-thing')
- with pytest.raises(ImportError):
- dep.find_module('setuptools.non-existent')
- f,p,i = dep.find_module('setuptools.tests')
- f.close()
-
- @needs_bytecode
- def testModuleExtract(self):
- from email import __version__
- assert dep.get_module_constant('email','__version__') == __version__
- assert dep.get_module_constant('sys','version') == sys.version
- assert dep.get_module_constant('setuptools.tests','__doc__') == __doc__
-
- @needs_bytecode
- def testRequire(self):
- req = Require('Email','1.0.3','email')
-
- assert req.name == 'Email'
- assert req.module == 'email'
- assert req.requested_version == '1.0.3'
- assert req.attribute == '__version__'
- assert req.full_name() == 'Email-1.0.3'
-
- from email import __version__
- assert req.get_version() == __version__
- assert req.version_ok('1.0.9')
- assert not req.version_ok('0.9.1')
- assert not req.version_ok('unknown')
-
- assert req.is_present()
- assert req.is_current()
-
- req = Require('Email 3000','03000','email',format=LooseVersion)
- assert req.is_present()
- assert not req.is_current()
- assert not req.version_ok('unknown')
-
- req = Require('Do-what-I-mean','1.0','d-w-i-m')
- assert not req.is_present()
- assert not req.is_current()
-
- req = Require('Tests', None, 'tests', homepage="http://example.com")
- assert req.format is None
- assert req.attribute is None
- assert req.requested_version is None
- assert req.full_name() == 'Tests'
- assert req.homepage == 'http://example.com'
-
- paths = [os.path.dirname(p) for p in __path__]
- assert req.is_present(paths)
- assert req.is_current(paths)
-
-
-class TestDistro:
-
- def setup_method(self, method):
- self.e1 = Extension('bar.ext',['bar.c'])
- self.e2 = Extension('c.y', ['y.c'])
-
- self.dist = makeSetup(
- packages=['a', 'a.b', 'a.b.c', 'b', 'c'],
- py_modules=['b.d','x'],
- ext_modules = (self.e1, self.e2),
- package_dir = {},
- )
-
- def testDistroType(self):
- assert isinstance(self.dist,setuptools.dist.Distribution)
-
- def testExcludePackage(self):
- self.dist.exclude_package('a')
- assert self.dist.packages == ['b','c']
-
- self.dist.exclude_package('b')
- assert self.dist.packages == ['c']
- assert self.dist.py_modules == ['x']
- assert self.dist.ext_modules == [self.e1, self.e2]
-
- self.dist.exclude_package('c')
- assert self.dist.packages == []
- assert self.dist.py_modules == ['x']
- assert self.dist.ext_modules == [self.e1]
-
- # test removals from unspecified options
- makeSetup().exclude_package('x')
-
- def testIncludeExclude(self):
- # remove an extension
- self.dist.exclude(ext_modules=[self.e1])
- assert self.dist.ext_modules == [self.e2]
-
- # add it back in
- self.dist.include(ext_modules=[self.e1])
- assert self.dist.ext_modules == [self.e2, self.e1]
-
- # should not add duplicate
- self.dist.include(ext_modules=[self.e1])
- assert self.dist.ext_modules == [self.e2, self.e1]
-
- def testExcludePackages(self):
- self.dist.exclude(packages=['c','b','a'])
- assert self.dist.packages == []
- assert self.dist.py_modules == ['x']
- assert self.dist.ext_modules == [self.e1]
-
- def testEmpty(self):
- dist = makeSetup()
- dist.include(packages=['a'], py_modules=['b'], ext_modules=[self.e2])
- dist = makeSetup()
- dist.exclude(packages=['a'], py_modules=['b'], ext_modules=[self.e2])
-
- def testContents(self):
- assert self.dist.has_contents_for('a')
- self.dist.exclude_package('a')
- assert not self.dist.has_contents_for('a')
-
- assert self.dist.has_contents_for('b')
- self.dist.exclude_package('b')
- assert not self.dist.has_contents_for('b')
-
- assert self.dist.has_contents_for('c')
- self.dist.exclude_package('c')
- assert not self.dist.has_contents_for('c')
-
- def testInvalidIncludeExclude(self):
- with pytest.raises(DistutilsSetupError):
- self.dist.include(nonexistent_option='x')
- with pytest.raises(DistutilsSetupError):
- self.dist.exclude(nonexistent_option='x')
- with pytest.raises(DistutilsSetupError):
- self.dist.include(packages={'x':'y'})
- with pytest.raises(DistutilsSetupError):
- self.dist.exclude(packages={'x':'y'})
- with pytest.raises(DistutilsSetupError):
- self.dist.include(ext_modules={'x':'y'})
- with pytest.raises(DistutilsSetupError):
- self.dist.exclude(ext_modules={'x':'y'})
-
- with pytest.raises(DistutilsSetupError):
- self.dist.include(package_dir=['q'])
- with pytest.raises(DistutilsSetupError):
- self.dist.exclude(package_dir=['q'])
-
-
-class TestFeatures:
-
- def setup_method(self, method):
- self.req = Require('Distutils','1.0.3','distutils')
- self.dist = makeSetup(
- features={
- 'foo': Feature("foo",standard=True,require_features=['baz',self.req]),
- 'bar': Feature("bar", standard=True, packages=['pkg.bar'],
- py_modules=['bar_et'], remove=['bar.ext'],
- ),
- 'baz': Feature(
- "baz", optional=False, packages=['pkg.baz'],
- scripts = ['scripts/baz_it'],
- libraries=[('libfoo','foo/foofoo.c')]
- ),
- 'dwim': Feature("DWIM", available=False, remove='bazish'),
- },
- script_args=['--without-bar', 'install'],
- packages = ['pkg.bar', 'pkg.foo'],
- py_modules = ['bar_et', 'bazish'],
- ext_modules = [Extension('bar.ext',['bar.c'])]
- )
-
- def testDefaults(self):
- assert not Feature(
- "test",standard=True,remove='x',available=False
- ).include_by_default()
- assert Feature("test",standard=True,remove='x').include_by_default()
- # Feature must have either kwargs, removes, or require_features
- with pytest.raises(DistutilsSetupError):
- Feature("test")
-
- def testAvailability(self):
- with pytest.raises(DistutilsPlatformError):
- self.dist.features['dwim'].include_in(self.dist)
-
- def testFeatureOptions(self):
- dist = self.dist
- assert (
- ('with-dwim',None,'include DWIM') in dist.feature_options
- )
- assert (
- ('without-dwim',None,'exclude DWIM (default)') in dist.feature_options
- )
- assert (
- ('with-bar',None,'include bar (default)') in dist.feature_options
- )
- assert (
- ('without-bar',None,'exclude bar') in dist.feature_options
- )
- assert dist.feature_negopt['without-foo'] == 'with-foo'
- assert dist.feature_negopt['without-bar'] == 'with-bar'
- assert dist.feature_negopt['without-dwim'] == 'with-dwim'
- assert (not 'without-baz' in dist.feature_negopt)
-
- def testUseFeatures(self):
- dist = self.dist
- assert dist.with_foo == 1
- assert dist.with_bar == 0
- assert dist.with_baz == 1
- assert (not 'bar_et' in dist.py_modules)
- assert (not 'pkg.bar' in dist.packages)
- assert ('pkg.baz' in dist.packages)
- assert ('scripts/baz_it' in dist.scripts)
- assert (('libfoo','foo/foofoo.c') in dist.libraries)
- assert dist.ext_modules == []
- assert dist.require_features == [self.req]
-
- # If we ask for bar, it should fail because we explicitly disabled
- # it on the command line
- with pytest.raises(DistutilsOptionError):
- dist.include_feature('bar')
-
- def testFeatureWithInvalidRemove(self):
- with pytest.raises(SystemExit):
- makeSetup(features={'x':Feature('x', remove='y')})
-
-class TestCommandTests:
-
- def testTestIsCommand(self):
- test_cmd = makeSetup().get_command_obj('test')
- assert (isinstance(test_cmd, distutils.cmd.Command))
-
- def testLongOptSuiteWNoDefault(self):
- ts1 = makeSetup(script_args=['test','--test-suite=foo.tests.suite'])
- ts1 = ts1.get_command_obj('test')
- ts1.ensure_finalized()
- assert ts1.test_suite == 'foo.tests.suite'
-
- def testDefaultSuite(self):
- ts2 = makeSetup(test_suite='bar.tests.suite').get_command_obj('test')
- ts2.ensure_finalized()
- assert ts2.test_suite == 'bar.tests.suite'
-
- def testDefaultWModuleOnCmdLine(self):
- ts3 = makeSetup(
- test_suite='bar.tests',
- script_args=['test','-m','foo.tests']
- ).get_command_obj('test')
- ts3.ensure_finalized()
- assert ts3.test_module == 'foo.tests'
- assert ts3.test_suite == 'foo.tests.test_suite'
-
- def testConflictingOptions(self):
- ts4 = makeSetup(
- script_args=['test','-m','bar.tests', '-s','foo.tests.suite']
- ).get_command_obj('test')
- with pytest.raises(DistutilsOptionError):
- ts4.ensure_finalized()
-
- def testNoSuite(self):
- ts5 = makeSetup().get_command_obj('test')
- ts5.ensure_finalized()
- assert ts5.test_suite == None
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/contexts.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/contexts.py
deleted file mode 100644
index 1d29284..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/contexts.py
+++ /dev/null
@@ -1,85 +0,0 @@
-import tempfile
-import os
-import shutil
-import sys
-import contextlib
-import site
-
-from ..compat import StringIO
-
-
-@contextlib.contextmanager
-def tempdir(cd=lambda dir:None, **kwargs):
- temp_dir = tempfile.mkdtemp(**kwargs)
- orig_dir = os.getcwd()
- try:
- cd(temp_dir)
- yield temp_dir
- finally:
- cd(orig_dir)
- shutil.rmtree(temp_dir)
-
-
-@contextlib.contextmanager
-def environment(**replacements):
- """
- In a context, patch the environment with replacements. Pass None values
- to clear the values.
- """
- saved = dict(
- (key, os.environ[key])
- for key in replacements
- if key in os.environ
- )
-
- # remove values that are null
- remove = (key for (key, value) in replacements.items() if value is None)
- for key in list(remove):
- os.environ.pop(key, None)
- replacements.pop(key)
-
- os.environ.update(replacements)
-
- try:
- yield saved
- finally:
- for key in replacements:
- os.environ.pop(key, None)
- os.environ.update(saved)
-
-
-@contextlib.contextmanager
-def quiet():
- """
- Redirect stdout/stderr to StringIO objects to prevent console output from
- distutils commands.
- """
-
- old_stdout = sys.stdout
- old_stderr = sys.stderr
- new_stdout = sys.stdout = StringIO()
- new_stderr = sys.stderr = StringIO()
- try:
- yield new_stdout, new_stderr
- finally:
- new_stdout.seek(0)
- new_stderr.seek(0)
- sys.stdout = old_stdout
- sys.stderr = old_stderr
-
-
-@contextlib.contextmanager
-def save_user_site_setting():
- saved = site.ENABLE_USER_SITE
- try:
- yield saved
- finally:
- site.ENABLE_USER_SITE = saved
-
-
-@contextlib.contextmanager
-def suppress_exceptions(*excs):
- try:
- yield
- except excs:
- pass
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/environment.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/environment.py
deleted file mode 100644
index a23c050..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/environment.py
+++ /dev/null
@@ -1,60 +0,0 @@
-import os
-import sys
-import unicodedata
-
-from subprocess import Popen as _Popen, PIPE as _PIPE
-
-
-def _which_dirs(cmd):
- result = set()
- for path in os.environ.get('PATH', '').split(os.pathsep):
- filename = os.path.join(path, cmd)
- if os.access(filename, os.X_OK):
- result.add(path)
- return result
-
-
-def run_setup_py(cmd, pypath=None, path=None,
- data_stream=0, env=None):
- """
- Execution command for tests, separate from those used by the
- code directly to prevent accidental behavior issues
- """
- if env is None:
- env = dict()
- for envname in os.environ:
- env[envname] = os.environ[envname]
-
- #override the python path if needed
- if pypath is not None:
- env["PYTHONPATH"] = pypath
-
- #overide the execution path if needed
- if path is not None:
- env["PATH"] = path
- if not env.get("PATH", ""):
- env["PATH"] = _which_dirs("tar").union(_which_dirs("gzip"))
- env["PATH"] = os.pathsep.join(env["PATH"])
-
- cmd = [sys.executable, "setup.py"] + list(cmd)
-
- # http://bugs.python.org/issue8557
- shell = sys.platform == 'win32'
-
- try:
- proc = _Popen(
- cmd, stdout=_PIPE, stderr=_PIPE, shell=shell, env=env,
- )
-
- data = proc.communicate()[data_stream]
- except OSError:
- return 1, ''
-
- #decode the console string if needed
- if hasattr(data, "decode"):
- # use the default encoding
- data = data.decode()
- data = unicodedata.normalize('NFC', data)
-
- #communciate calls wait()
- return proc.returncode, data
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/fixtures.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/fixtures.py
deleted file mode 100644
index c70c38c..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/fixtures.py
+++ /dev/null
@@ -1,27 +0,0 @@
-try:
- from unittest import mock
-except ImportError:
- import mock
-import pytest
-
-from . import contexts
-
-
-@pytest.yield_fixture
-def user_override():
- """
- Override site.USER_BASE and site.USER_SITE with temporary directories in
- a context.
- """
- with contexts.tempdir() as user_base:
- with mock.patch('site.USER_BASE', user_base):
- with contexts.tempdir() as user_site:
- with mock.patch('site.USER_SITE', user_site):
- with contexts.save_user_site_setting():
- yield
-
-
-@pytest.yield_fixture
-def tmpdir_cwd(tmpdir):
- with tmpdir.as_cwd() as orig:
- yield orig
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/py26compat.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/py26compat.py
deleted file mode 100644
index c568088..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/py26compat.py
+++ /dev/null
@@ -1,14 +0,0 @@
-import sys
-import tarfile
-import contextlib
-
-def _tarfile_open_ex(*args, **kwargs):
- """
- Extend result as a context manager.
- """
- return contextlib.closing(tarfile.open(*args, **kwargs))
-
-if sys.version_info[:2] < (2, 7) or (3, 0) <= sys.version_info[:2] < (3, 2):
- tarfile_open = _tarfile_open_ex
-else:
- tarfile_open = tarfile.open
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/script-with-bom.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/script-with-bom.py
deleted file mode 100644
index 22dee0d..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/script-with-bom.py
+++ /dev/null
@@ -1,3 +0,0 @@
-# -*- coding: utf-8 -*-
-
-result = 'passed'
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/server.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/server.py
deleted file mode 100644
index 6b21427..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/server.py
+++ /dev/null
@@ -1,65 +0,0 @@
-"""Basic http server for tests to simulate PyPI or custom indexes
-"""
-
-import time
-import threading
-from setuptools.compat import BaseHTTPRequestHandler
-from setuptools.compat import HTTPServer, SimpleHTTPRequestHandler
-
-class IndexServer(HTTPServer):
- """Basic single-threaded http server simulating a package index
-
- You can use this server in unittest like this::
- s = IndexServer()
- s.start()
- index_url = s.base_url() + 'mytestindex'
- # do some test requests to the index
- # The index files should be located in setuptools/tests/indexes
- s.stop()
- """
- def __init__(self, server_address=('', 0),
- RequestHandlerClass=SimpleHTTPRequestHandler):
- HTTPServer.__init__(self, server_address, RequestHandlerClass)
- self._run = True
-
- def start(self):
- self.thread = threading.Thread(target=self.serve_forever)
- self.thread.start()
-
- def stop(self):
- "Stop the server"
-
- # Let the server finish the last request and wait for a new one.
- time.sleep(0.1)
-
- self.shutdown()
- self.thread.join()
- self.socket.close()
-
- def base_url(self):
- port = self.server_port
- return 'http://127.0.0.1:%s/setuptools/tests/indexes/' % port
-
-class RequestRecorder(BaseHTTPRequestHandler):
- def do_GET(self):
- requests = vars(self.server).setdefault('requests', [])
- requests.append(self)
- self.send_response(200, 'OK')
-
-class MockServer(HTTPServer, threading.Thread):
- """
- A simple HTTP Server that records the requests made to it.
- """
- def __init__(self, server_address=('', 0),
- RequestHandlerClass=RequestRecorder):
- HTTPServer.__init__(self, server_address, RequestHandlerClass)
- threading.Thread.__init__(self)
- self.setDaemon(True)
- self.requests = []
-
- def run(self):
- self.serve_forever()
-
- @property
- def url(self):
- return 'http://localhost:%(server_port)s/' % vars(self)
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_bdist_egg.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_bdist_egg.py
deleted file mode 100644
index ccfb2ea..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_bdist_egg.py
+++ /dev/null
@@ -1,43 +0,0 @@
-"""develop tests
-"""
-import os
-import re
-
-import pytest
-
-from setuptools.dist import Distribution
-
-from . import contexts
-
-SETUP_PY = """\
-from setuptools import setup
-
-setup(name='foo', py_modules=['hi'])
-"""
-
-@pytest.yield_fixture
-def setup_context(tmpdir):
- with (tmpdir/'setup.py').open('w') as f:
- f.write(SETUP_PY)
- with (tmpdir/'hi.py').open('w') as f:
- f.write('1\n')
- with tmpdir.as_cwd():
- yield tmpdir
-
-
-class Test:
- def test_bdist_egg(self, setup_context, user_override):
- dist = Distribution(dict(
- script_name='setup.py',
- script_args=['bdist_egg'],
- name='foo',
- py_modules=['hi']
- ))
- os.makedirs(os.path.join('build', 'src'))
- with contexts.quiet():
- dist.parse_command_line()
- dist.run_commands()
-
- # let's see if we got our egg link at the right place
- [content] = os.listdir('dist')
- assert re.match('foo-0.0.0-py[23].\d.egg$', content)
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_build_ext.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_build_ext.py
deleted file mode 100644
index 0719ba4..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_build_ext.py
+++ /dev/null
@@ -1,18 +0,0 @@
-import distutils.command.build_ext as orig
-
-from setuptools.command.build_ext import build_ext
-from setuptools.dist import Distribution
-
-class TestBuildExt:
- def test_get_ext_filename(self):
- """
- Setuptools needs to give back the same
- result as distutils, even if the fullname
- is not in ext_map.
- """
- dist = Distribution()
- cmd = build_ext(dist)
- cmd.ext_map['foo/bar'] = ''
- res = cmd.get_ext_filename('foo')
- wanted = orig.build_ext.get_ext_filename(cmd, 'foo')
- assert res == wanted
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_develop.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_develop.py
deleted file mode 100644
index ed1b194..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_develop.py
+++ /dev/null
@@ -1,103 +0,0 @@
-"""develop tests
-"""
-import os
-import shutil
-import site
-import sys
-import tempfile
-
-from setuptools.command.develop import develop
-from setuptools.dist import Distribution
-
-SETUP_PY = """\
-from setuptools import setup
-
-setup(name='foo',
- packages=['foo'],
- use_2to3=True,
-)
-"""
-
-INIT_PY = """print "foo"
-"""
-
-class TestDevelopTest:
-
- def setup_method(self, method):
- if hasattr(sys, 'real_prefix'):
- return
-
- # Directory structure
- self.dir = tempfile.mkdtemp()
- os.mkdir(os.path.join(self.dir, 'foo'))
- # setup.py
- setup = os.path.join(self.dir, 'setup.py')
- f = open(setup, 'w')
- f.write(SETUP_PY)
- f.close()
- self.old_cwd = os.getcwd()
- # foo/__init__.py
- init = os.path.join(self.dir, 'foo', '__init__.py')
- f = open(init, 'w')
- f.write(INIT_PY)
- f.close()
-
- os.chdir(self.dir)
- self.old_base = site.USER_BASE
- site.USER_BASE = tempfile.mkdtemp()
- self.old_site = site.USER_SITE
- site.USER_SITE = tempfile.mkdtemp()
-
- def teardown_method(self, method):
- if hasattr(sys, 'real_prefix') or (hasattr(sys, 'base_prefix') and sys.base_prefix != sys.prefix):
- return
-
- os.chdir(self.old_cwd)
- shutil.rmtree(self.dir)
- shutil.rmtree(site.USER_BASE)
- shutil.rmtree(site.USER_SITE)
- site.USER_BASE = self.old_base
- site.USER_SITE = self.old_site
-
- def test_develop(self):
- if hasattr(sys, 'real_prefix'):
- return
- dist = Distribution(
- dict(name='foo',
- packages=['foo'],
- use_2to3=True,
- version='0.0',
- ))
- dist.script_name = 'setup.py'
- cmd = develop(dist)
- cmd.user = 1
- cmd.ensure_finalized()
- cmd.install_dir = site.USER_SITE
- cmd.user = 1
- old_stdout = sys.stdout
- #sys.stdout = StringIO()
- try:
- cmd.run()
- finally:
- sys.stdout = old_stdout
-
- # let's see if we got our egg link at the right place
- content = os.listdir(site.USER_SITE)
- content.sort()
- assert content == ['easy-install.pth', 'foo.egg-link']
-
- # Check that we are using the right code.
- egg_link_file = open(os.path.join(site.USER_SITE, 'foo.egg-link'), 'rt')
- try:
- path = egg_link_file.read().split()[0].strip()
- finally:
- egg_link_file.close()
- init_file = open(os.path.join(path, 'foo', '__init__.py'), 'rt')
- try:
- init = init_file.read().strip()
- finally:
- init_file.close()
- if sys.version < "3":
- assert init == 'print "foo"'
- else:
- assert init == 'print("foo")'
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_dist_info.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_dist_info.py
deleted file mode 100644
index 6d0ab58..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_dist_info.py
+++ /dev/null
@@ -1,70 +0,0 @@
-"""Test .dist-info style distributions.
-"""
-import os
-import shutil
-import tempfile
-
-import pytest
-
-import pkg_resources
-from .textwrap import DALS
-
-
-class TestDistInfo:
-
- def test_distinfo(self):
- dists = dict(
- (d.project_name, d)
- for d in pkg_resources.find_distributions(self.tmpdir)
- )
-
- assert len(dists) == 2, dists
-
- unversioned = dists['UnversionedDistribution']
- versioned = dists['VersionedDistribution']
-
- assert versioned.version == '2.718' # from filename
- assert unversioned.version == '0.3' # from METADATA
-
- @pytest.mark.importorskip('ast')
- def test_conditional_dependencies(self):
- specs = 'splort==4', 'quux>=1.1'
- requires = list(map(pkg_resources.Requirement.parse, specs))
-
- for d in pkg_resources.find_distributions(self.tmpdir):
- assert d.requires() == requires[:1]
- assert d.requires(extras=('baz',)) == requires
- assert d.extras == ['baz']
-
- metadata_template = DALS("""
- Metadata-Version: 1.2
- Name: {name}
- {version}
- Requires-Dist: splort (==4)
- Provides-Extra: baz
- Requires-Dist: quux (>=1.1); extra == 'baz'
- """)
-
- def setup_method(self, method):
- self.tmpdir = tempfile.mkdtemp()
- dist_info_name = 'VersionedDistribution-2.718.dist-info'
- versioned = os.path.join(self.tmpdir, dist_info_name)
- os.mkdir(versioned)
- with open(os.path.join(versioned, 'METADATA'), 'w+') as metadata_file:
- metadata = self.metadata_template.format(
- name='VersionedDistribution',
- version='',
- ).replace('\n\n', '\n')
- metadata_file.write(metadata)
- dist_info_name = 'UnversionedDistribution.dist-info'
- unversioned = os.path.join(self.tmpdir, dist_info_name)
- os.mkdir(unversioned)
- with open(os.path.join(unversioned, 'METADATA'), 'w+') as metadata_file:
- metadata = self.metadata_template.format(
- name='UnversionedDistribution',
- version='Version: 0.3',
- )
- metadata_file.write(metadata)
-
- def teardown_method(self, method):
- shutil.rmtree(self.tmpdir)
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_easy_install.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_easy_install.py
deleted file mode 100644
index e71bbfc..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_easy_install.py
+++ /dev/null
@@ -1,524 +0,0 @@
-# -*- coding: utf-8 -*-
-
-"""Easy install Tests
-"""
-from __future__ import absolute_import
-
-import sys
-import os
-import shutil
-import tempfile
-import site
-import contextlib
-import tarfile
-import logging
-import itertools
-import distutils.errors
-
-import pytest
-try:
- from unittest import mock
-except ImportError:
- import mock
-
-from setuptools import sandbox
-from setuptools import compat
-from setuptools.compat import StringIO, BytesIO, urlparse
-from setuptools.sandbox import run_setup
-import setuptools.command.easy_install as ei
-from setuptools.command.easy_install import PthDistributions
-from setuptools.command import easy_install as easy_install_pkg
-from setuptools.dist import Distribution
-from pkg_resources import working_set
-from pkg_resources import Distribution as PRDistribution
-import setuptools.tests.server
-import pkg_resources
-
-from .py26compat import tarfile_open
-from . import contexts
-from .textwrap import DALS
-
-
-class FakeDist(object):
- def get_entry_map(self, group):
- if group != 'console_scripts':
- return {}
- return {'name': 'ep'}
-
- def as_requirement(self):
- return 'spec'
-
-SETUP_PY = DALS("""
- from setuptools import setup
-
- setup(name='foo')
- """)
-
-class TestEasyInstallTest:
-
- def test_install_site_py(self):
- dist = Distribution()
- cmd = ei.easy_install(dist)
- cmd.sitepy_installed = False
- cmd.install_dir = tempfile.mkdtemp()
- try:
- cmd.install_site_py()
- sitepy = os.path.join(cmd.install_dir, 'site.py')
- assert os.path.exists(sitepy)
- finally:
- shutil.rmtree(cmd.install_dir)
-
- def test_get_script_args(self):
- header = ei.CommandSpec.best().from_environment().as_header()
- expected = header + DALS("""
- # EASY-INSTALL-ENTRY-SCRIPT: 'spec','console_scripts','name'
- __requires__ = 'spec'
- import sys
- from pkg_resources import load_entry_point
-
- if __name__ == '__main__':
- sys.exit(
- load_entry_point('spec', 'console_scripts', 'name')()
- )
- """)
- dist = FakeDist()
-
- args = next(ei.ScriptWriter.get_args(dist))
- name, script = itertools.islice(args, 2)
-
- assert script == expected
-
- def test_no_find_links(self):
- # new option '--no-find-links', that blocks find-links added at
- # the project level
- dist = Distribution()
- cmd = ei.easy_install(dist)
- cmd.check_pth_processing = lambda: True
- cmd.no_find_links = True
- cmd.find_links = ['link1', 'link2']
- cmd.install_dir = os.path.join(tempfile.mkdtemp(), 'ok')
- cmd.args = ['ok']
- cmd.ensure_finalized()
- assert cmd.package_index.scanned_urls == {}
-
- # let's try without it (default behavior)
- cmd = ei.easy_install(dist)
- cmd.check_pth_processing = lambda: True
- cmd.find_links = ['link1', 'link2']
- cmd.install_dir = os.path.join(tempfile.mkdtemp(), 'ok')
- cmd.args = ['ok']
- cmd.ensure_finalized()
- keys = sorted(cmd.package_index.scanned_urls.keys())
- assert keys == ['link1', 'link2']
-
- def test_write_exception(self):
- """
- Test that `cant_write_to_target` is rendered as a DistutilsError.
- """
- dist = Distribution()
- cmd = ei.easy_install(dist)
- cmd.install_dir = os.getcwd()
- with pytest.raises(distutils.errors.DistutilsError):
- cmd.cant_write_to_target()
-
-
-class TestPTHFileWriter:
- def test_add_from_cwd_site_sets_dirty(self):
- '''a pth file manager should set dirty
- if a distribution is in site but also the cwd
- '''
- pth = PthDistributions('does-not_exist', [os.getcwd()])
- assert not pth.dirty
- pth.add(PRDistribution(os.getcwd()))
- assert pth.dirty
-
- def test_add_from_site_is_ignored(self):
- location = '/test/location/does-not-have-to-exist'
- # PthDistributions expects all locations to be normalized
- location = pkg_resources.normalize_path(location)
- pth = PthDistributions('does-not_exist', [location, ])
- assert not pth.dirty
- pth.add(PRDistribution(location))
- assert not pth.dirty
-
-
-@pytest.yield_fixture
-def setup_context(tmpdir):
- with (tmpdir/'setup.py').open('w') as f:
- f.write(SETUP_PY)
- with tmpdir.as_cwd():
- yield tmpdir
-
-
-@pytest.mark.usefixtures("user_override")
-@pytest.mark.usefixtures("setup_context")
-class TestUserInstallTest:
-
- # prevent check that site-packages is writable. easy_install
- # shouldn't be writing to system site-packages during finalize
- # options, but while it does, bypass the behavior.
- prev_sp_write = mock.patch(
- 'setuptools.command.easy_install.easy_install.check_site_dir',
- mock.Mock(),
- )
-
- # simulate setuptools installed in user site packages
- @mock.patch('setuptools.command.easy_install.__file__', site.USER_SITE)
- @mock.patch('site.ENABLE_USER_SITE', True)
- @prev_sp_write
- def test_user_install_not_implied_user_site_enabled(self):
- self.assert_not_user_site()
-
- @mock.patch('site.ENABLE_USER_SITE', False)
- @prev_sp_write
- def test_user_install_not_implied_user_site_disabled(self):
- self.assert_not_user_site()
-
- @staticmethod
- def assert_not_user_site():
- # create a finalized easy_install command
- dist = Distribution()
- dist.script_name = 'setup.py'
- cmd = ei.easy_install(dist)
- cmd.args = ['py']
- cmd.ensure_finalized()
- assert not cmd.user, 'user should not be implied'
-
- def test_multiproc_atexit(self):
- pytest.importorskip('multiprocessing')
-
- log = logging.getLogger('test_easy_install')
- logging.basicConfig(level=logging.INFO, stream=sys.stderr)
- log.info('this should not break')
-
- @pytest.fixture()
- def foo_package(self, tmpdir):
- egg_file = tmpdir / 'foo-1.0.egg-info'
- with egg_file.open('w') as f:
- f.write('Name: foo\n')
- return str(tmpdir)
-
- @pytest.yield_fixture()
- def install_target(self, tmpdir):
- target = str(tmpdir)
- with mock.patch('sys.path', sys.path + [target]):
- python_path = os.path.pathsep.join(sys.path)
- with mock.patch.dict(os.environ, PYTHONPATH=python_path):
- yield target
-
- def test_local_index(self, foo_package, install_target):
- """
- The local index must be used when easy_install locates installed
- packages.
- """
- dist = Distribution()
- dist.script_name = 'setup.py'
- cmd = ei.easy_install(dist)
- cmd.install_dir = install_target
- cmd.args = ['foo']
- cmd.ensure_finalized()
- cmd.local_index.scan([foo_package])
- res = cmd.easy_install('foo')
- actual = os.path.normcase(os.path.realpath(res.location))
- expected = os.path.normcase(os.path.realpath(foo_package))
- assert actual == expected
-
- @contextlib.contextmanager
- def user_install_setup_context(self, *args, **kwargs):
- """
- Wrap sandbox.setup_context to patch easy_install in that context to
- appear as user-installed.
- """
- with self.orig_context(*args, **kwargs):
- import setuptools.command.easy_install as ei
- ei.__file__ = site.USER_SITE
- yield
-
- def patched_setup_context(self):
- self.orig_context = sandbox.setup_context
-
- return mock.patch(
- 'setuptools.sandbox.setup_context',
- self.user_install_setup_context,
- )
-
-
-@pytest.yield_fixture
-def distutils_package():
- distutils_setup_py = SETUP_PY.replace(
- 'from setuptools import setup',
- 'from distutils.core import setup',
- )
- with contexts.tempdir(cd=os.chdir):
- with open('setup.py', 'w') as f:
- f.write(distutils_setup_py)
- yield
-
-
-class TestDistutilsPackage:
- def test_bdist_egg_available_on_distutils_pkg(self, distutils_package):
- run_setup('setup.py', ['bdist_egg'])
-
-
-class TestSetupRequires:
-
- def test_setup_requires_honors_fetch_params(self):
- """
- When easy_install installs a source distribution which specifies
- setup_requires, it should honor the fetch parameters (such as
- allow-hosts, index-url, and find-links).
- """
- # set up a server which will simulate an alternate package index.
- p_index = setuptools.tests.server.MockServer()
- p_index.start()
- netloc = 1
- p_index_loc = urlparse(p_index.url)[netloc]
- if p_index_loc.endswith(':0'):
- # Some platforms (Jython) don't find a port to which to bind,
- # so skip this test for them.
- return
- with contexts.quiet():
- # create an sdist that has a build-time dependency.
- with TestSetupRequires.create_sdist() as dist_file:
- with contexts.tempdir() as temp_install_dir:
- with contexts.environment(PYTHONPATH=temp_install_dir):
- ei_params = [
- '--index-url', p_index.url,
- '--allow-hosts', p_index_loc,
- '--exclude-scripts',
- '--install-dir', temp_install_dir,
- dist_file,
- ]
- with sandbox.save_argv(['easy_install']):
- # attempt to install the dist. It should fail because
- # it doesn't exist.
- with pytest.raises(SystemExit):
- easy_install_pkg.main(ei_params)
- # there should have been two or three requests to the server
- # (three happens on Python 3.3a)
- assert 2 <= len(p_index.requests) <= 3
- assert p_index.requests[0].path == '/does-not-exist/'
-
- @staticmethod
- @contextlib.contextmanager
- def create_sdist():
- """
- Return an sdist with a setup_requires dependency (of something that
- doesn't exist)
- """
- with contexts.tempdir() as dir:
- dist_path = os.path.join(dir, 'setuptools-test-fetcher-1.0.tar.gz')
- script = DALS("""
- import setuptools
- setuptools.setup(
- name="setuptools-test-fetcher",
- version="1.0",
- setup_requires = ['does-not-exist'],
- )
- """)
- make_trivial_sdist(dist_path, script)
- yield dist_path
-
- def test_setup_requires_overrides_version_conflict(self):
- """
- Regression test for issue #323.
-
- Ensures that a distribution's setup_requires requirements can still be
- installed and used locally even if a conflicting version of that
- requirement is already on the path.
- """
-
- pr_state = pkg_resources.__getstate__()
- fake_dist = PRDistribution('does-not-matter', project_name='foobar',
- version='0.0')
- working_set.add(fake_dist)
-
- try:
- with contexts.tempdir() as temp_dir:
- test_pkg = create_setup_requires_package(temp_dir)
- test_setup_py = os.path.join(test_pkg, 'setup.py')
- with contexts.quiet() as (stdout, stderr):
- # Don't even need to install the package, just
- # running the setup.py at all is sufficient
- run_setup(test_setup_py, ['--name'])
-
- lines = stdout.readlines()
- assert len(lines) > 0
- assert lines[-1].strip(), 'test_pkg'
- finally:
- pkg_resources.__setstate__(pr_state)
-
-
-def create_setup_requires_package(path):
- """Creates a source tree under path for a trivial test package that has a
- single requirement in setup_requires--a tarball for that requirement is
- also created and added to the dependency_links argument.
- """
-
- test_setup_attrs = {
- 'name': 'test_pkg', 'version': '0.0',
- 'setup_requires': ['foobar==0.1'],
- 'dependency_links': [os.path.abspath(path)]
- }
-
- test_pkg = os.path.join(path, 'test_pkg')
- test_setup_py = os.path.join(test_pkg, 'setup.py')
- os.mkdir(test_pkg)
-
- with open(test_setup_py, 'w') as f:
- f.write(DALS("""
- import setuptools
- setuptools.setup(**%r)
- """ % test_setup_attrs))
-
- foobar_path = os.path.join(path, 'foobar-0.1.tar.gz')
- make_trivial_sdist(
- foobar_path,
- DALS("""
- import setuptools
- setuptools.setup(
- name='foobar',
- version='0.1'
- )
- """))
-
- return test_pkg
-
-
-def make_trivial_sdist(dist_path, setup_py):
- """Create a simple sdist tarball at dist_path, containing just a
- setup.py, the contents of which are provided by the setup_py string.
- """
-
- setup_py_file = tarfile.TarInfo(name='setup.py')
- try:
- # Python 3 (StringIO gets converted to io module)
- MemFile = BytesIO
- except AttributeError:
- MemFile = StringIO
- setup_py_bytes = MemFile(setup_py.encode('utf-8'))
- setup_py_file.size = len(setup_py_bytes.getvalue())
- with tarfile_open(dist_path, 'w:gz') as dist:
- dist.addfile(setup_py_file, fileobj=setup_py_bytes)
-
-
-class TestScriptHeader:
- non_ascii_exe = '/Users/José/bin/python'
- exe_with_spaces = r'C:\Program Files\Python33\python.exe'
-
- @pytest.mark.skipif(
- sys.platform.startswith('java') and ei.is_sh(sys.executable),
- reason="Test cannot run under java when executable is sh"
- )
- def test_get_script_header(self):
- expected = '#!%s\n' % ei.nt_quote_arg(os.path.normpath(sys.executable))
- actual = ei.ScriptWriter.get_script_header('#!/usr/local/bin/python')
- assert actual == expected
-
- expected = '#!%s -x\n' % ei.nt_quote_arg(os.path.normpath
- (sys.executable))
- actual = ei.ScriptWriter.get_script_header('#!/usr/bin/python -x')
- assert actual == expected
-
- actual = ei.ScriptWriter.get_script_header('#!/usr/bin/python',
- executable=self.non_ascii_exe)
- expected = '#!%s -x\n' % self.non_ascii_exe
- assert actual == expected
-
- actual = ei.ScriptWriter.get_script_header('#!/usr/bin/python',
- executable='"'+self.exe_with_spaces+'"')
- expected = '#!"%s"\n' % self.exe_with_spaces
- assert actual == expected
-
- @pytest.mark.xfail(
- compat.PY3 and os.environ.get("LC_CTYPE") in ("C", "POSIX"),
- reason="Test fails in this locale on Python 3"
- )
- @mock.patch.dict(sys.modules, java=mock.Mock(lang=mock.Mock(System=
- mock.Mock(getProperty=mock.Mock(return_value="")))))
- @mock.patch('sys.platform', 'java1.5.0_13')
- def test_get_script_header_jython_workaround(self, tmpdir):
- # Create a mock sys.executable that uses a shebang line
- header = DALS("""
- #!/usr/bin/python
- # -*- coding: utf-8 -*-
- """)
- exe = tmpdir / 'exe.py'
- with exe.open('w') as f:
- f.write(header)
- exe = str(exe)
-
- header = ei.ScriptWriter.get_script_header('#!/usr/local/bin/python',
- executable=exe)
- assert header == '#!/usr/bin/env %s\n' % exe
-
- expect_out = 'stdout' if sys.version_info < (2,7) else 'stderr'
-
- with contexts.quiet() as (stdout, stderr):
- # When options are included, generate a broken shebang line
- # with a warning emitted
- candidate = ei.ScriptWriter.get_script_header('#!/usr/bin/python -x',
- executable=exe)
- assert candidate == '#!%s -x\n' % exe
- output = locals()[expect_out]
- assert 'Unable to adapt shebang line' in output.getvalue()
-
- with contexts.quiet() as (stdout, stderr):
- candidate = ei.ScriptWriter.get_script_header('#!/usr/bin/python',
- executable=self.non_ascii_exe)
- assert candidate == '#!%s -x\n' % self.non_ascii_exe
- output = locals()[expect_out]
- assert 'Unable to adapt shebang line' in output.getvalue()
-
-
-class TestCommandSpec:
- def test_custom_launch_command(self):
- """
- Show how a custom CommandSpec could be used to specify a #! executable
- which takes parameters.
- """
- cmd = ei.CommandSpec(['/usr/bin/env', 'python3'])
- assert cmd.as_header() == '#!/usr/bin/env python3\n'
-
- def test_from_param_for_CommandSpec_is_passthrough(self):
- """
- from_param should return an instance of a CommandSpec
- """
- cmd = ei.CommandSpec(['python'])
- cmd_new = ei.CommandSpec.from_param(cmd)
- assert cmd is cmd_new
-
- def test_from_environment_with_spaces_in_executable(self):
- with mock.patch('sys.executable', TestScriptHeader.exe_with_spaces):
- cmd = ei.CommandSpec.from_environment()
- assert len(cmd) == 1
- assert cmd.as_header().startswith('#!"')
-
- def test_from_simple_string_uses_shlex(self):
- """
- In order to support `executable = /usr/bin/env my-python`, make sure
- from_param invokes shlex on that input.
- """
- cmd = ei.CommandSpec.from_param('/usr/bin/env my-python')
- assert len(cmd) == 2
- assert '"' not in cmd.as_header()
-
- def test_sys_executable(self):
- """
- CommandSpec.from_string(sys.executable) should contain just that param.
- """
- writer = ei.ScriptWriter.best()
- cmd = writer.command_spec_class.from_string(sys.executable)
- assert len(cmd) == 1
- assert cmd[0] == sys.executable
-
-
-class TestWindowsScriptWriter:
- def test_header(self):
- hdr = ei.WindowsScriptWriter.get_script_header('')
- assert hdr.startswith('#!')
- assert hdr.endswith('\n')
- hdr = hdr.lstrip('#!')
- hdr = hdr.rstrip('\n')
- # header should not start with an escaped quote
- assert not hdr.startswith('\\"')
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_egg_info.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_egg_info.py
deleted file mode 100644
index a1caf9f..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_egg_info.py
+++ /dev/null
@@ -1,98 +0,0 @@
-import os
-import stat
-
-import pytest
-
-from . import environment
-from .textwrap import DALS
-from . import contexts
-
-
-class TestEggInfo:
-
- setup_script = DALS("""
- from setuptools import setup
-
- setup(
- name='foo',
- py_modules=['hello'],
- entry_points={'console_scripts': ['hi = hello.run']},
- zip_safe=False,
- )
- """)
-
- def _create_project(self):
- with open('setup.py', 'w') as f:
- f.write(self.setup_script)
-
- with open('hello.py', 'w') as f:
- f.write(DALS("""
- def run():
- print('hello')
- """))
-
- @pytest.yield_fixture
- def env(self):
- class Environment(str): pass
-
- with contexts.tempdir(prefix='setuptools-test.') as env_dir:
- env = Environment(env_dir)
- os.chmod(env_dir, stat.S_IRWXU)
- subs = 'home', 'lib', 'scripts', 'data', 'egg-base'
- env.paths = dict(
- (dirname, os.path.join(env_dir, dirname))
- for dirname in subs
- )
- list(map(os.mkdir, env.paths.values()))
- config = os.path.join(env.paths['home'], '.pydistutils.cfg')
- with open(config, 'w') as f:
- f.write(DALS("""
- [egg_info]
- egg-base = %(egg-base)s
- """ % env.paths
- ))
- yield env
-
- def test_egg_base_installed_egg_info(self, tmpdir_cwd, env):
- self._create_project()
-
- environ = os.environ.copy().update(
- HOME=env.paths['home'],
- )
- cmd = [
- 'install',
- '--home', env.paths['home'],
- '--install-lib', env.paths['lib'],
- '--install-scripts', env.paths['scripts'],
- '--install-data', env.paths['data'],
- ]
- code, data = environment.run_setup_py(
- cmd=cmd,
- pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
- data_stream=1,
- env=environ,
- )
- if code:
- raise AssertionError(data)
-
- actual = self._find_egg_info_files(env.paths['lib'])
-
- expected = [
- 'PKG-INFO',
- 'SOURCES.txt',
- 'dependency_links.txt',
- 'entry_points.txt',
- 'not-zip-safe',
- 'top_level.txt',
- ]
- assert sorted(actual) == expected
-
- def _find_egg_info_files(self, root):
- results = (
- filenames
- for dirpath, dirnames, filenames in os.walk(root)
- if os.path.basename(dirpath) == 'EGG-INFO'
- )
- # expect exactly one result
- result, = results
- return result
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_find_packages.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_find_packages.py
deleted file mode 100644
index 06a7c02..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_find_packages.py
+++ /dev/null
@@ -1,170 +0,0 @@
-"""Tests for setuptools.find_packages()."""
-import os
-import sys
-import shutil
-import tempfile
-import platform
-
-import pytest
-
-import setuptools
-from setuptools import find_packages
-
-find_420_packages = setuptools.PEP420PackageFinder.find
-
-# modeled after CPython's test.support.can_symlink
-def can_symlink():
- TESTFN = tempfile.mktemp()
- symlink_path = TESTFN + "can_symlink"
- try:
- os.symlink(TESTFN, symlink_path)
- can = True
- except (OSError, NotImplementedError, AttributeError):
- can = False
- else:
- os.remove(symlink_path)
- globals().update(can_symlink=lambda: can)
- return can
-
-def has_symlink():
- bad_symlink = (
- # Windows symlink directory detection is broken on Python 3.2
- platform.system() == 'Windows' and sys.version_info[:2] == (3,2)
- )
- return can_symlink() and not bad_symlink
-
-class TestFindPackages:
-
- def setup_method(self, method):
- self.dist_dir = tempfile.mkdtemp()
- self._make_pkg_structure()
-
- def teardown_method(self, method):
- shutil.rmtree(self.dist_dir)
-
- def _make_pkg_structure(self):
- """Make basic package structure.
-
- dist/
- docs/
- conf.py
- pkg/
- __pycache__/
- nspkg/
- mod.py
- subpkg/
- assets/
- asset
- __init__.py
- setup.py
-
- """
- self.docs_dir = self._mkdir('docs', self.dist_dir)
- self._touch('conf.py', self.docs_dir)
- self.pkg_dir = self._mkdir('pkg', self.dist_dir)
- self._mkdir('__pycache__', self.pkg_dir)
- self.ns_pkg_dir = self._mkdir('nspkg', self.pkg_dir)
- self._touch('mod.py', self.ns_pkg_dir)
- self.sub_pkg_dir = self._mkdir('subpkg', self.pkg_dir)
- self.asset_dir = self._mkdir('assets', self.sub_pkg_dir)
- self._touch('asset', self.asset_dir)
- self._touch('__init__.py', self.sub_pkg_dir)
- self._touch('setup.py', self.dist_dir)
-
- def _mkdir(self, path, parent_dir=None):
- if parent_dir:
- path = os.path.join(parent_dir, path)
- os.mkdir(path)
- return path
-
- def _touch(self, path, dir_=None):
- if dir_:
- path = os.path.join(dir_, path)
- fp = open(path, 'w')
- fp.close()
- return path
-
- def test_regular_package(self):
- self._touch('__init__.py', self.pkg_dir)
- packages = find_packages(self.dist_dir)
- assert packages == ['pkg', 'pkg.subpkg']
-
- def test_exclude(self):
- self._touch('__init__.py', self.pkg_dir)
- packages = find_packages(self.dist_dir, exclude=('pkg.*',))
- assert packages == ['pkg']
-
- def test_include_excludes_other(self):
- """
- If include is specified, other packages should be excluded.
- """
- self._touch('__init__.py', self.pkg_dir)
- alt_dir = self._mkdir('other_pkg', self.dist_dir)
- self._touch('__init__.py', alt_dir)
- packages = find_packages(self.dist_dir, include=['other_pkg'])
- assert packages == ['other_pkg']
-
- def test_dir_with_dot_is_skipped(self):
- shutil.rmtree(os.path.join(self.dist_dir, 'pkg/subpkg/assets'))
- data_dir = self._mkdir('some.data', self.pkg_dir)
- self._touch('__init__.py', data_dir)
- self._touch('file.dat', data_dir)
- packages = find_packages(self.dist_dir)
- assert 'pkg.some.data' not in packages
-
- def test_dir_with_packages_in_subdir_is_excluded(self):
- """
- Ensure that a package in a non-package such as build/pkg/__init__.py
- is excluded.
- """
- build_dir = self._mkdir('build', self.dist_dir)
- build_pkg_dir = self._mkdir('pkg', build_dir)
- self._touch('__init__.py', build_pkg_dir)
- packages = find_packages(self.dist_dir)
- assert 'build.pkg' not in packages
-
- @pytest.mark.skipif(not has_symlink(), reason='Symlink support required')
- def test_symlinked_packages_are_included(self):
- """
- A symbolically-linked directory should be treated like any other
- directory when matched as a package.
-
- Create a link from lpkg -> pkg.
- """
- self._touch('__init__.py', self.pkg_dir)
- linked_pkg = os.path.join(self.dist_dir, 'lpkg')
- os.symlink('pkg', linked_pkg)
- assert os.path.isdir(linked_pkg)
- packages = find_packages(self.dist_dir)
- assert 'lpkg' in packages
-
- def _assert_packages(self, actual, expected):
- assert set(actual) == set(expected)
-
- def test_pep420_ns_package(self):
- packages = find_420_packages(
- self.dist_dir, include=['pkg*'], exclude=['pkg.subpkg.assets'])
- self._assert_packages(packages, ['pkg', 'pkg.nspkg', 'pkg.subpkg'])
-
- def test_pep420_ns_package_no_includes(self):
- packages = find_420_packages(
- self.dist_dir, exclude=['pkg.subpkg.assets'])
- self._assert_packages(packages, ['docs', 'pkg', 'pkg.nspkg', 'pkg.subpkg'])
-
- def test_pep420_ns_package_no_includes_or_excludes(self):
- packages = find_420_packages(self.dist_dir)
- expected = [
- 'docs', 'pkg', 'pkg.nspkg', 'pkg.subpkg', 'pkg.subpkg.assets']
- self._assert_packages(packages, expected)
-
- def test_regular_package_with_nested_pep420_ns_packages(self):
- self._touch('__init__.py', self.pkg_dir)
- packages = find_420_packages(
- self.dist_dir, exclude=['docs', 'pkg.subpkg.assets'])
- self._assert_packages(packages, ['pkg', 'pkg.nspkg', 'pkg.subpkg'])
-
- def test_pep420_ns_package_no_non_package_dirs(self):
- shutil.rmtree(self.docs_dir)
- shutil.rmtree(os.path.join(self.dist_dir, 'pkg/subpkg/assets'))
- packages = find_420_packages(self.dist_dir)
- self._assert_packages(packages, ['pkg', 'pkg.nspkg', 'pkg.subpkg'])
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_integration.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_integration.py
deleted file mode 100644
index 90bb431..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_integration.py
+++ /dev/null
@@ -1,99 +0,0 @@
-"""Run some integration tests.
-
-Try to install a few packages.
-"""
-
-import glob
-import os
-import sys
-
-import pytest
-
-from setuptools.command.easy_install import easy_install
-from setuptools.command import easy_install as easy_install_pkg
-from setuptools.dist import Distribution
-from setuptools.compat import urlopen
-
-
-def setup_module(module):
- packages = 'stevedore', 'virtualenvwrapper', 'pbr', 'novaclient'
- for pkg in packages:
- try:
- __import__(pkg)
- tmpl = "Integration tests cannot run when {pkg} is installed"
- pytest.skip(tmpl.format(**locals()))
- except ImportError:
- pass
-
- try:
- urlopen('https://pypi.python.org/pypi')
- except Exception as exc:
- pytest.skip(reason=str(exc))
-
-
-@pytest.fixture
-def install_context(request, tmpdir, monkeypatch):
- """Fixture to set up temporary installation directory.
- """
- # Save old values so we can restore them.
- new_cwd = tmpdir.mkdir('cwd')
- user_base = tmpdir.mkdir('user_base')
- user_site = tmpdir.mkdir('user_site')
- install_dir = tmpdir.mkdir('install_dir')
-
- def fin():
- # undo the monkeypatch, particularly needed under
- # windows because of kept handle on cwd
- monkeypatch.undo()
- new_cwd.remove()
- user_base.remove()
- user_site.remove()
- install_dir.remove()
- request.addfinalizer(fin)
-
- # Change the environment and site settings to control where the
- # files are installed and ensure we do not overwrite anything.
- monkeypatch.chdir(new_cwd)
- monkeypatch.setattr(easy_install_pkg, '__file__', user_site.strpath)
- monkeypatch.setattr('site.USER_BASE', user_base.strpath)
- monkeypatch.setattr('site.USER_SITE', user_site.strpath)
- monkeypatch.setattr('sys.path', sys.path + [install_dir.strpath])
- monkeypatch.setenv('PYTHONPATH', os.path.pathsep.join(sys.path))
-
- # Set up the command for performing the installation.
- dist = Distribution()
- cmd = easy_install(dist)
- cmd.install_dir = install_dir.strpath
- return cmd
-
-
-def _install_one(requirement, cmd, pkgname, modulename):
- cmd.args = [requirement]
- cmd.ensure_finalized()
- cmd.run()
- target = cmd.install_dir
- dest_path = glob.glob(os.path.join(target, pkgname + '*.egg'))
- assert dest_path
- assert os.path.exists(os.path.join(dest_path[0], pkgname, modulename))
-
-
-def test_stevedore(install_context):
- _install_one('stevedore', install_context,
- 'stevedore', 'extension.py')
-
-
-@pytest.mark.xfail
-def test_virtualenvwrapper(install_context):
- _install_one('virtualenvwrapper', install_context,
- 'virtualenvwrapper', 'hook_loader.py')
-
-
-def test_pbr(install_context):
- _install_one('pbr', install_context,
- 'pbr', 'core.py')
-
-
-@pytest.mark.xfail
-def test_python_novaclient(install_context):
- _install_one('python-novaclient', install_context,
- 'novaclient', 'base.py')
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_markerlib.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_markerlib.py
deleted file mode 100644
index 8197b49..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_markerlib.py
+++ /dev/null
@@ -1,63 +0,0 @@
-import os
-
-import pytest
-
-
-class TestMarkerlib:
-
- @pytest.mark.importorskip('ast')
- def test_markers(self):
- from _markerlib import interpret, default_environment, compile
-
- os_name = os.name
-
- assert interpret("")
-
- assert interpret("os.name != 'buuuu'")
- assert interpret("os_name != 'buuuu'")
- assert interpret("python_version > '1.0'")
- assert interpret("python_version < '5.0'")
- assert interpret("python_version <= '5.0'")
- assert interpret("python_version >= '1.0'")
- assert interpret("'%s' in os.name" % os_name)
- assert interpret("'%s' in os_name" % os_name)
- assert interpret("'buuuu' not in os.name")
-
- assert not interpret("os.name == 'buuuu'")
- assert not interpret("os_name == 'buuuu'")
- assert not interpret("python_version < '1.0'")
- assert not interpret("python_version > '5.0'")
- assert not interpret("python_version >= '5.0'")
- assert not interpret("python_version <= '1.0'")
- assert not interpret("'%s' not in os.name" % os_name)
- assert not interpret("'buuuu' in os.name and python_version >= '5.0'")
- assert not interpret("'buuuu' in os_name and python_version >= '5.0'")
-
- environment = default_environment()
- environment['extra'] = 'test'
- assert interpret("extra == 'test'", environment)
- assert not interpret("extra == 'doc'", environment)
-
- def raises_nameError():
- try:
- interpret("python.version == '42'")
- except NameError:
- pass
- else:
- raise Exception("Expected NameError")
-
- raises_nameError()
-
- def raises_syntaxError():
- try:
- interpret("(x for x in (4,))")
- except SyntaxError:
- pass
- else:
- raise Exception("Expected SyntaxError")
-
- raises_syntaxError()
-
- statement = "python_version == '5'"
- assert compile(statement).__doc__ == statement
-
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_msvc9compiler.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_msvc9compiler.py
deleted file mode 100644
index 09e0460..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_msvc9compiler.py
+++ /dev/null
@@ -1,179 +0,0 @@
-"""
-Tests for msvc9compiler.
-"""
-
-import os
-import contextlib
-import distutils.errors
-
-import pytest
-try:
- from unittest import mock
-except ImportError:
- import mock
-
-from . import contexts
-
-# importing only setuptools should apply the patch
-__import__('setuptools')
-
-pytest.importorskip("distutils.msvc9compiler")
-
-
-def mock_reg(hkcu=None, hklm=None):
- """
- Return a mock for distutils.msvc9compiler.Reg, patched
- to mock out the functions that access the registry.
- """
-
- _winreg = getattr(distutils.msvc9compiler, '_winreg', None)
- winreg = getattr(distutils.msvc9compiler, 'winreg', _winreg)
-
- hives = {
- winreg.HKEY_CURRENT_USER: hkcu or {},
- winreg.HKEY_LOCAL_MACHINE: hklm or {},
- }
-
- @classmethod
- def read_keys(cls, base, key):
- """Return list of registry keys."""
- hive = hives.get(base, {})
- return [
- k.rpartition('\\')[2]
- for k in hive if k.startswith(key.lower())
- ]
-
- @classmethod
- def read_values(cls, base, key):
- """Return dict of registry keys and values."""
- hive = hives.get(base, {})
- return dict(
- (k.rpartition('\\')[2], hive[k])
- for k in hive if k.startswith(key.lower())
- )
-
- return mock.patch.multiple(distutils.msvc9compiler.Reg,
- read_keys=read_keys, read_values=read_values)
-
-
-class TestModulePatch:
- """
- Ensure that importing setuptools is sufficient to replace
- the standard find_vcvarsall function with a version that
- recognizes the "Visual C++ for Python" package.
- """
-
- key_32 = r'software\microsoft\devdiv\vcforpython\9.0\installdir'
- key_64 = r'software\wow6432node\microsoft\devdiv\vcforpython\9.0\installdir'
-
- def test_patched(self):
- "Test the module is actually patched"
- mod_name = distutils.msvc9compiler.find_vcvarsall.__module__
- assert mod_name == "setuptools.msvc9_support", "find_vcvarsall unpatched"
-
- def test_no_registry_entryies_means_nothing_found(self):
- """
- No registry entries or environment variable should lead to an error
- directing the user to download vcpython27.
- """
- find_vcvarsall = distutils.msvc9compiler.find_vcvarsall
- query_vcvarsall = distutils.msvc9compiler.query_vcvarsall
-
- with contexts.environment(VS90COMNTOOLS=None):
- with mock_reg():
- assert find_vcvarsall(9.0) is None
-
- expected = distutils.errors.DistutilsPlatformError
- with pytest.raises(expected) as exc:
- query_vcvarsall(9.0)
- assert 'aka.ms/vcpython27' in str(exc)
-
- @pytest.yield_fixture
- def user_preferred_setting(self):
- """
- Set up environment with different install dirs for user vs. system
- and yield the user_install_dir for the expected result.
- """
- with self.mock_install_dir() as user_install_dir:
- with self.mock_install_dir() as system_install_dir:
- reg = mock_reg(
- hkcu={
- self.key_32: user_install_dir,
- },
- hklm={
- self.key_32: system_install_dir,
- self.key_64: system_install_dir,
- },
- )
- with reg:
- yield user_install_dir
-
- def test_prefer_current_user(self, user_preferred_setting):
- """
- Ensure user's settings are preferred.
- """
- result = distutils.msvc9compiler.find_vcvarsall(9.0)
- expected = os.path.join(user_preferred_setting, 'vcvarsall.bat')
- assert expected == result
-
- @pytest.yield_fixture
- def local_machine_setting(self):
- """
- Set up environment with only the system environment configured.
- """
- with self.mock_install_dir() as system_install_dir:
- reg = mock_reg(
- hklm={
- self.key_32: system_install_dir,
- },
- )
- with reg:
- yield system_install_dir
-
- def test_local_machine_recognized(self, local_machine_setting):
- """
- Ensure machine setting is honored if user settings are not present.
- """
- result = distutils.msvc9compiler.find_vcvarsall(9.0)
- expected = os.path.join(local_machine_setting, 'vcvarsall.bat')
- assert expected == result
-
- @pytest.yield_fixture
- def x64_preferred_setting(self):
- """
- Set up environment with 64-bit and 32-bit system settings configured
- and yield the canonical location.
- """
- with self.mock_install_dir() as x32_dir:
- with self.mock_install_dir() as x64_dir:
- reg = mock_reg(
- hklm={
- # This *should* only exist on 32-bit machines
- self.key_32: x32_dir,
- # This *should* only exist on 64-bit machines
- self.key_64: x64_dir,
- },
- )
- with reg:
- yield x32_dir
-
- def test_ensure_64_bit_preferred(self, x64_preferred_setting):
- """
- Ensure 64-bit system key is preferred.
- """
- result = distutils.msvc9compiler.find_vcvarsall(9.0)
- expected = os.path.join(x64_preferred_setting, 'vcvarsall.bat')
- assert expected == result
-
- @staticmethod
- @contextlib.contextmanager
- def mock_install_dir():
- """
- Make a mock install dir in a unique location so that tests can
- distinguish which dir was detected in a given scenario.
- """
- with contexts.tempdir() as result:
- vcvarsall = os.path.join(result, 'vcvarsall.bat')
- with open(vcvarsall, 'w'):
- pass
- yield result
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_packageindex.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_packageindex.py
deleted file mode 100644
index dcd90d6..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_packageindex.py
+++ /dev/null
@@ -1,203 +0,0 @@
-import sys
-import distutils.errors
-
-from setuptools.compat import httplib, HTTPError, unicode, pathname2url
-
-import pkg_resources
-import setuptools.package_index
-from setuptools.tests.server import IndexServer
-
-
-class TestPackageIndex:
-
- def test_bad_url_bad_port(self):
- index = setuptools.package_index.PackageIndex()
- url = 'http://127.0.0.1:0/nonesuch/test_package_index'
- try:
- v = index.open_url(url)
- except Exception as v:
- assert url in str(v)
- else:
- assert isinstance(v, HTTPError)
-
- def test_bad_url_typo(self):
- # issue 16
- # easy_install inquant.contentmirror.plone breaks because of a typo
- # in its home URL
- index = setuptools.package_index.PackageIndex(
- hosts=('www.example.com',)
- )
-
- url = 'url:%20https://svn.plone.org/svn/collective/inquant.contentmirror.plone/trunk'
- try:
- v = index.open_url(url)
- except Exception as v:
- assert url in str(v)
- else:
- assert isinstance(v, HTTPError)
-
- def test_bad_url_bad_status_line(self):
- index = setuptools.package_index.PackageIndex(
- hosts=('www.example.com',)
- )
-
- def _urlopen(*args):
- raise httplib.BadStatusLine('line')
-
- index.opener = _urlopen
- url = 'http://example.com'
- try:
- v = index.open_url(url)
- except Exception as v:
- assert 'line' in str(v)
- else:
- raise AssertionError('Should have raise here!')
-
- def test_bad_url_double_scheme(self):
- """
- A bad URL with a double scheme should raise a DistutilsError.
- """
- index = setuptools.package_index.PackageIndex(
- hosts=('www.example.com',)
- )
-
- # issue 20
- url = 'http://http://svn.pythonpaste.org/Paste/wphp/trunk'
- try:
- index.open_url(url)
- except distutils.errors.DistutilsError as error:
- msg = unicode(error)
- assert 'nonnumeric port' in msg or 'getaddrinfo failed' in msg or 'Name or service not known' in msg
- return
- raise RuntimeError("Did not raise")
-
- def test_bad_url_screwy_href(self):
- index = setuptools.package_index.PackageIndex(
- hosts=('www.example.com',)
- )
-
- # issue #160
- if sys.version_info[0] == 2 and sys.version_info[1] == 7:
- # this should not fail
- url = 'http://example.com'
- page = ('<a href="http://www.famfamfam.com]('
- 'http://www.famfamfam.com/">')
- index.process_index(url, page)
-
- def test_url_ok(self):
- index = setuptools.package_index.PackageIndex(
- hosts=('www.example.com',)
- )
- url = 'file:///tmp/test_package_index'
- assert index.url_ok(url, True)
-
- def test_links_priority(self):
- """
- Download links from the pypi simple index should be used before
- external download links.
- https://bitbucket.org/tarek/distribute/issue/163
-
- Usecase :
- - someone uploads a package on pypi, a md5 is generated
- - someone manually copies this link (with the md5 in the url) onto an
- external page accessible from the package page.
- - someone reuploads the package (with a different md5)
- - while easy_installing, an MD5 error occurs because the external link
- is used
- -> Setuptools should use the link from pypi, not the external one.
- """
- if sys.platform.startswith('java'):
- # Skip this test on jython because binding to :0 fails
- return
-
- # start an index server
- server = IndexServer()
- server.start()
- index_url = server.base_url() + 'test_links_priority/simple/'
-
- # scan a test index
- pi = setuptools.package_index.PackageIndex(index_url)
- requirement = pkg_resources.Requirement.parse('foobar')
- pi.find_packages(requirement)
- server.stop()
-
- # the distribution has been found
- assert 'foobar' in pi
- # we have only one link, because links are compared without md5
- assert len(pi['foobar'])==1
- # the link should be from the index
- assert 'correct_md5' in pi['foobar'][0].location
-
- def test_parse_bdist_wininst(self):
- parse = setuptools.package_index.parse_bdist_wininst
-
- actual = parse('reportlab-2.5.win32-py2.4.exe')
- expected = 'reportlab-2.5', '2.4', 'win32'
- assert actual == expected
-
- actual = parse('reportlab-2.5.win32.exe')
- expected = 'reportlab-2.5', None, 'win32'
- assert actual == expected
-
- actual = parse('reportlab-2.5.win-amd64-py2.7.exe')
- expected = 'reportlab-2.5', '2.7', 'win-amd64'
- assert actual == expected
-
- actual = parse('reportlab-2.5.win-amd64.exe')
- expected = 'reportlab-2.5', None, 'win-amd64'
- assert actual == expected
-
- def test__vcs_split_rev_from_url(self):
- """
- Test the basic usage of _vcs_split_rev_from_url
- """
- vsrfu = setuptools.package_index.PackageIndex._vcs_split_rev_from_url
- url, rev = vsrfu('https://example.com/bar@2995')
- assert url == 'https://example.com/bar'
- assert rev == '2995'
-
- def test_local_index(self, tmpdir):
- """
- local_open should be able to read an index from the file system.
- """
- index_file = tmpdir / 'index.html'
- with index_file.open('w') as f:
- f.write('<div>content</div>')
- url = 'file:' + pathname2url(str(tmpdir)) + '/'
- res = setuptools.package_index.local_open(url)
- assert 'content' in res.read()
-
-
-class TestContentCheckers:
-
- def test_md5(self):
- checker = setuptools.package_index.HashChecker.from_url(
- 'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478')
- checker.feed('You should probably not be using MD5'.encode('ascii'))
- assert checker.hash.hexdigest() == 'f12895fdffbd45007040d2e44df98478'
- assert checker.is_valid()
-
- def test_other_fragment(self):
- "Content checks should succeed silently if no hash is present"
- checker = setuptools.package_index.HashChecker.from_url(
- 'http://foo/bar#something%20completely%20different')
- checker.feed('anything'.encode('ascii'))
- assert checker.is_valid()
-
- def test_blank_md5(self):
- "Content checks should succeed if a hash is empty"
- checker = setuptools.package_index.HashChecker.from_url(
- 'http://foo/bar#md5=')
- checker.feed('anything'.encode('ascii'))
- assert checker.is_valid()
-
- def test_get_hash_name_md5(self):
- checker = setuptools.package_index.HashChecker.from_url(
- 'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478')
- assert checker.hash_name == 'md5'
-
- def test_report(self):
- checker = setuptools.package_index.HashChecker.from_url(
- 'http://foo/bar#md5=f12895fdffbd45007040d2e44df98478')
- rep = checker.report(lambda x: x, 'My message about %s')
- assert rep == 'My message about md5'
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sandbox.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sandbox.py
deleted file mode 100644
index 6e1e9e1..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sandbox.py
+++ /dev/null
@@ -1,102 +0,0 @@
-"""develop tests
-"""
-import os
-import types
-
-import pytest
-
-import pkg_resources
-import setuptools.sandbox
-from setuptools.sandbox import DirectorySandbox
-
-
-class TestSandbox:
-
- def test_devnull(self, tmpdir):
- sandbox = DirectorySandbox(str(tmpdir))
- sandbox.run(self._file_writer(os.devnull))
-
- @staticmethod
- def _file_writer(path):
- def do_write():
- with open(path, 'w') as f:
- f.write('xxx')
- return do_write
-
- def test_win32com(self, tmpdir):
- """
- win32com should not be prevented from caching COM interfaces
- in gen_py.
- """
- win32com = pytest.importorskip('win32com')
- gen_py = win32com.__gen_path__
- target = os.path.join(gen_py, 'test_write')
- sandbox = DirectorySandbox(str(tmpdir))
- try:
- # attempt to create gen_py file
- sandbox.run(self._file_writer(target))
- finally:
- if os.path.exists(target):
- os.remove(target)
-
- def test_setup_py_with_BOM(self):
- """
- It should be possible to execute a setup.py with a Byte Order Mark
- """
- target = pkg_resources.resource_filename(__name__,
- 'script-with-bom.py')
- namespace = types.ModuleType('namespace')
- setuptools.sandbox._execfile(target, vars(namespace))
- assert namespace.result == 'passed'
-
- def test_setup_py_with_CRLF(self, tmpdir):
- setup_py = tmpdir / 'setup.py'
- with setup_py.open('wb') as stream:
- stream.write(b'"degenerate script"\r\n')
- setuptools.sandbox._execfile(str(setup_py), globals())
-
-
-class TestExceptionSaver:
- def test_exception_trapped(self):
- with setuptools.sandbox.ExceptionSaver():
- raise ValueError("details")
-
- def test_exception_resumed(self):
- with setuptools.sandbox.ExceptionSaver() as saved_exc:
- raise ValueError("details")
-
- with pytest.raises(ValueError) as caught:
- saved_exc.resume()
-
- assert isinstance(caught.value, ValueError)
- assert str(caught.value) == 'details'
-
- def test_exception_reconstructed(self):
- orig_exc = ValueError("details")
-
- with setuptools.sandbox.ExceptionSaver() as saved_exc:
- raise orig_exc
-
- with pytest.raises(ValueError) as caught:
- saved_exc.resume()
-
- assert isinstance(caught.value, ValueError)
- assert caught.value is not orig_exc
-
- def test_no_exception_passes_quietly(self):
- with setuptools.sandbox.ExceptionSaver() as saved_exc:
- pass
-
- saved_exc.resume()
-
- def test_unpickleable_exception(self):
- class CantPickleThis(Exception):
- "This Exception is unpickleable because it's not in globals"
-
- with setuptools.sandbox.ExceptionSaver() as saved_exc:
- raise CantPickleThis('detail')
-
- with pytest.raises(setuptools.sandbox.UnpickleableException) as caught:
- saved_exc.resume()
-
- assert str(caught.value) == "CantPickleThis('detail',)"
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sdist.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sdist.py
deleted file mode 100644
index 9013b50..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_sdist.py
+++ /dev/null
@@ -1,419 +0,0 @@
-# -*- coding: utf-8 -*-
-"""sdist tests"""
-
-import locale
-import os
-import shutil
-import sys
-import tempfile
-import unicodedata
-import contextlib
-
-import pytest
-
-import pkg_resources
-from setuptools.compat import StringIO, unicode, PY3, PY2
-from setuptools.command.sdist import sdist
-from setuptools.command.egg_info import manifest_maker
-from setuptools.dist import Distribution
-
-SETUP_ATTRS = {
- 'name': 'sdist_test',
- 'version': '0.0',
- 'packages': ['sdist_test'],
- 'package_data': {'sdist_test': ['*.txt']}
-}
-
-
-SETUP_PY = """\
-from setuptools import setup
-
-setup(**%r)
-""" % SETUP_ATTRS
-
-
-if PY3:
- LATIN1_FILENAME = 'smörbröd.py'.encode('latin-1')
-else:
- LATIN1_FILENAME = 'sm\xf6rbr\xf6d.py'
-
-
-# Cannot use context manager because of Python 2.4
-@contextlib.contextmanager
-def quiet():
- old_stdout, old_stderr = sys.stdout, sys.stderr
- sys.stdout, sys.stderr = StringIO(), StringIO()
- try:
- yield
- finally:
- sys.stdout, sys.stderr = old_stdout, old_stderr
-
-
-# Fake byte literals for Python <= 2.5
-def b(s, encoding='utf-8'):
- if PY3:
- return s.encode(encoding)
- return s
-
-
-# Convert to POSIX path
-def posix(path):
- if PY3 and not isinstance(path, str):
- return path.replace(os.sep.encode('ascii'), b('/'))
- else:
- return path.replace(os.sep, '/')
-
-
-# HFS Plus uses decomposed UTF-8
-def decompose(path):
- if isinstance(path, unicode):
- return unicodedata.normalize('NFD', path)
- try:
- path = path.decode('utf-8')
- path = unicodedata.normalize('NFD', path)
- path = path.encode('utf-8')
- except UnicodeError:
- pass # Not UTF-8
- return path
-
-
-class TestSdistTest:
-
- def setup_method(self, method):
- self.temp_dir = tempfile.mkdtemp()
- f = open(os.path.join(self.temp_dir, 'setup.py'), 'w')
- f.write(SETUP_PY)
- f.close()
-
- # Set up the rest of the test package
- test_pkg = os.path.join(self.temp_dir, 'sdist_test')
- os.mkdir(test_pkg)
- # *.rst was not included in package_data, so c.rst should not be
- # automatically added to the manifest when not under version control
- for fname in ['__init__.py', 'a.txt', 'b.txt', 'c.rst']:
- # Just touch the files; their contents are irrelevant
- open(os.path.join(test_pkg, fname), 'w').close()
-
- self.old_cwd = os.getcwd()
- os.chdir(self.temp_dir)
-
- def teardown_method(self, method):
- os.chdir(self.old_cwd)
- shutil.rmtree(self.temp_dir)
-
- def test_package_data_in_sdist(self):
- """Regression test for pull request #4: ensures that files listed in
- package_data are included in the manifest even if they're not added to
- version control.
- """
-
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- with quiet():
- cmd.run()
-
- manifest = cmd.filelist.files
- assert os.path.join('sdist_test', 'a.txt') in manifest
- assert os.path.join('sdist_test', 'b.txt') in manifest
- assert os.path.join('sdist_test', 'c.rst') not in manifest
-
-
- def test_defaults_case_sensitivity(self):
- """
- Make sure default files (README.*, etc.) are added in a case-sensitive
- way to avoid problems with packages built on Windows.
- """
-
- open(os.path.join(self.temp_dir, 'readme.rst'), 'w').close()
- open(os.path.join(self.temp_dir, 'SETUP.cfg'), 'w').close()
-
- dist = Distribution(SETUP_ATTRS)
- # the extension deliberately capitalized for this test
- # to make sure the actual filename (not capitalized) gets added
- # to the manifest
- dist.script_name = 'setup.PY'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- with quiet():
- cmd.run()
-
- # lowercase all names so we can test in a case-insensitive way to make sure the files are not included
- manifest = map(lambda x: x.lower(), cmd.filelist.files)
- assert 'readme.rst' not in manifest, manifest
- assert 'setup.py' not in manifest, manifest
- assert 'setup.cfg' not in manifest, manifest
-
- def test_manifest_is_written_with_utf8_encoding(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- mm = manifest_maker(dist)
- mm.manifest = os.path.join('sdist_test.egg-info', 'SOURCES.txt')
- os.mkdir('sdist_test.egg-info')
-
- # UTF-8 filename
- filename = os.path.join('sdist_test', 'smörbröd.py')
-
- # Must create the file or it will get stripped.
- open(filename, 'w').close()
-
- # Add UTF-8 filename and write manifest
- with quiet():
- mm.run()
- mm.filelist.append(filename)
- mm.write_manifest()
-
- manifest = open(mm.manifest, 'rbU')
- contents = manifest.read()
- manifest.close()
-
- # The manifest should be UTF-8 encoded
- u_contents = contents.decode('UTF-8')
-
- # The manifest should contain the UTF-8 filename
- if PY2:
- fs_enc = sys.getfilesystemencoding()
- filename = filename.decode(fs_enc)
-
- assert posix(filename) in u_contents
-
- # Python 3 only
- if PY3:
-
- def test_write_manifest_allows_utf8_filenames(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- mm = manifest_maker(dist)
- mm.manifest = os.path.join('sdist_test.egg-info', 'SOURCES.txt')
- os.mkdir('sdist_test.egg-info')
-
- # UTF-8 filename
- filename = os.path.join(b('sdist_test'), b('smörbröd.py'))
-
- # Must touch the file or risk removal
- open(filename, "w").close()
-
- # Add filename and write manifest
- with quiet():
- mm.run()
- u_filename = filename.decode('utf-8')
- mm.filelist.files.append(u_filename)
- # Re-write manifest
- mm.write_manifest()
-
- manifest = open(mm.manifest, 'rbU')
- contents = manifest.read()
- manifest.close()
-
- # The manifest should be UTF-8 encoded
- contents.decode('UTF-8')
-
- # The manifest should contain the UTF-8 filename
- assert posix(filename) in contents
-
- # The filelist should have been updated as well
- assert u_filename in mm.filelist.files
-
- def test_write_manifest_skips_non_utf8_filenames(self):
- """
- Files that cannot be encoded to UTF-8 (specifically, those that
- weren't originally successfully decoded and have surrogate
- escapes) should be omitted from the manifest.
- See https://bitbucket.org/tarek/distribute/issue/303 for history.
- """
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- mm = manifest_maker(dist)
- mm.manifest = os.path.join('sdist_test.egg-info', 'SOURCES.txt')
- os.mkdir('sdist_test.egg-info')
-
- # Latin-1 filename
- filename = os.path.join(b('sdist_test'), LATIN1_FILENAME)
-
- # Add filename with surrogates and write manifest
- with quiet():
- mm.run()
- u_filename = filename.decode('utf-8', 'surrogateescape')
- mm.filelist.append(u_filename)
- # Re-write manifest
- mm.write_manifest()
-
- manifest = open(mm.manifest, 'rbU')
- contents = manifest.read()
- manifest.close()
-
- # The manifest should be UTF-8 encoded
- contents.decode('UTF-8')
-
- # The Latin-1 filename should have been skipped
- assert posix(filename) not in contents
-
- # The filelist should have been updated as well
- assert u_filename not in mm.filelist.files
-
- def test_manifest_is_read_with_utf8_encoding(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- # Create manifest
- with quiet():
- cmd.run()
-
- # Add UTF-8 filename to manifest
- filename = os.path.join(b('sdist_test'), b('smörbröd.py'))
- cmd.manifest = os.path.join('sdist_test.egg-info', 'SOURCES.txt')
- manifest = open(cmd.manifest, 'ab')
- manifest.write(b('\n') + filename)
- manifest.close()
-
- # The file must exist to be included in the filelist
- open(filename, 'w').close()
-
- # Re-read manifest
- cmd.filelist.files = []
- with quiet():
- cmd.read_manifest()
-
- # The filelist should contain the UTF-8 filename
- if PY3:
- filename = filename.decode('utf-8')
- assert filename in cmd.filelist.files
-
- # Python 3 only
- if PY3:
-
- def test_read_manifest_skips_non_utf8_filenames(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- # Create manifest
- with quiet():
- cmd.run()
-
- # Add Latin-1 filename to manifest
- filename = os.path.join(b('sdist_test'), LATIN1_FILENAME)
- cmd.manifest = os.path.join('sdist_test.egg-info', 'SOURCES.txt')
- manifest = open(cmd.manifest, 'ab')
- manifest.write(b('\n') + filename)
- manifest.close()
-
- # The file must exist to be included in the filelist
- open(filename, 'w').close()
-
- # Re-read manifest
- cmd.filelist.files = []
- with quiet():
- cmd.read_manifest()
-
- # The Latin-1 filename should have been skipped
- filename = filename.decode('latin-1')
- assert filename not in cmd.filelist.files
-
- @pytest.mark.skipif(PY3 and locale.getpreferredencoding() != 'UTF-8',
- reason='Unittest fails if locale is not utf-8 but the manifests is '
- 'recorded correctly')
- def test_sdist_with_utf8_encoded_filename(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- # UTF-8 filename
- filename = os.path.join(b('sdist_test'), b('smörbröd.py'))
- open(filename, 'w').close()
-
- with quiet():
- cmd.run()
-
- if sys.platform == 'darwin':
- filename = decompose(filename)
-
- if PY3:
- fs_enc = sys.getfilesystemencoding()
-
- if sys.platform == 'win32':
- if fs_enc == 'cp1252':
- # Python 3 mangles the UTF-8 filename
- filename = filename.decode('cp1252')
- assert filename in cmd.filelist.files
- else:
- filename = filename.decode('mbcs')
- assert filename in cmd.filelist.files
- else:
- filename = filename.decode('utf-8')
- assert filename in cmd.filelist.files
- else:
- assert filename in cmd.filelist.files
-
- def test_sdist_with_latin1_encoded_filename(self):
- # Test for #303.
- dist = Distribution(SETUP_ATTRS)
- dist.script_name = 'setup.py'
- cmd = sdist(dist)
- cmd.ensure_finalized()
-
- # Latin-1 filename
- filename = os.path.join(b('sdist_test'), LATIN1_FILENAME)
- open(filename, 'w').close()
- assert os.path.isfile(filename)
-
- with quiet():
- cmd.run()
-
- if PY3:
- # not all windows systems have a default FS encoding of cp1252
- if sys.platform == 'win32':
- # Latin-1 is similar to Windows-1252 however
- # on mbcs filesys it is not in latin-1 encoding
- fs_enc = sys.getfilesystemencoding()
- if fs_enc == 'mbcs':
- filename = filename.decode('mbcs')
- else:
- filename = filename.decode('latin-1')
-
- assert filename in cmd.filelist.files
- else:
- # The Latin-1 filename should have been skipped
- filename = filename.decode('latin-1')
- filename not in cmd.filelist.files
- else:
- # Under Python 2 there seems to be no decoded string in the
- # filelist. However, due to decode and encoding of the
- # file name to get utf-8 Manifest the latin1 maybe excluded
- try:
- # fs_enc should match how one is expect the decoding to
- # be proformed for the manifest output.
- fs_enc = sys.getfilesystemencoding()
- filename.decode(fs_enc)
- assert filename in cmd.filelist.files
- except UnicodeDecodeError:
- filename not in cmd.filelist.files
-
-
-def test_default_revctrl():
- """
- When _default_revctrl was removed from the `setuptools.command.sdist`
- module in 10.0, it broke some systems which keep an old install of
- setuptools (Distribute) around. Those old versions require that the
- setuptools package continue to implement that interface, so this
- function provides that interface, stubbed. See #320 for details.
-
- This interface must be maintained until Ubuntu 12.04 is no longer
- supported (by Setuptools).
- """
- ep_def = 'svn_cvs = setuptools.command.sdist:_default_revctrl'
- ep = pkg_resources.EntryPoint.parse(ep_def)
- res = ep.resolve()
- assert hasattr(res, '__iter__')
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_test.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_test.py
deleted file mode 100644
index a66294c..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_test.py
+++ /dev/null
@@ -1,91 +0,0 @@
-# -*- coding: UTF-8 -*-
-
-from __future__ import unicode_literals
-
-import os
-import site
-
-import pytest
-
-from setuptools.command.test import test
-from setuptools.dist import Distribution
-
-from .textwrap import DALS
-from . import contexts
-
-SETUP_PY = DALS("""
- from setuptools import setup
-
- setup(name='foo',
- packages=['name', 'name.space', 'name.space.tests'],
- namespace_packages=['name'],
- test_suite='name.space.tests.test_suite',
- )
- """)
-
-NS_INIT = DALS("""
- # -*- coding: Latin-1 -*-
- # Söme Arbiträry Ünicode to test Distribute Issüé 310
- try:
- __import__('pkg_resources').declare_namespace(__name__)
- except ImportError:
- from pkgutil import extend_path
- __path__ = extend_path(__path__, __name__)
- """)
-
-TEST_PY = DALS("""
- import unittest
-
- class TestTest(unittest.TestCase):
- def test_test(self):
- print "Foo" # Should fail under Python 3 unless 2to3 is used
-
- test_suite = unittest.makeSuite(TestTest)
- """)
-
-
-@pytest.fixture
-def sample_test(tmpdir_cwd):
- os.makedirs('name/space/tests')
-
- # setup.py
- with open('setup.py', 'wt') as f:
- f.write(SETUP_PY)
-
- # name/__init__.py
- with open('name/__init__.py', 'wb') as f:
- f.write(NS_INIT.encode('Latin-1'))
-
- # name/space/__init__.py
- with open('name/space/__init__.py', 'wt') as f:
- f.write('#empty\n')
-
- # name/space/tests/__init__.py
- with open('name/space/tests/__init__.py', 'wt') as f:
- f.write(TEST_PY)
-
-
-@pytest.mark.skipif('hasattr(sys, "real_prefix")')
-@pytest.mark.usefixtures('user_override')
-@pytest.mark.usefixtures('sample_test')
-class TestTestTest:
-
- def test_test(self):
- params = dict(
- name='foo',
- packages=['name', 'name.space', 'name.space.tests'],
- namespace_packages=['name'],
- test_suite='name.space.tests.test_suite',
- use_2to3=True,
- )
- dist = Distribution(params)
- dist.script_name = 'setup.py'
- cmd = test(dist)
- cmd.user = 1
- cmd.ensure_finalized()
- cmd.install_dir = site.USER_SITE
- cmd.user = 1
- with contexts.quiet():
- # The test runner calls sys.exit
- with contexts.suppress_exceptions(SystemExit):
- cmd.run()
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_upload_docs.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_upload_docs.py
deleted file mode 100644
index cc71cad..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_upload_docs.py
+++ /dev/null
@@ -1,59 +0,0 @@
-import os
-import zipfile
-import contextlib
-
-import pytest
-
-from setuptools.command.upload_docs import upload_docs
-from setuptools.dist import Distribution
-
-from .textwrap import DALS
-from . import contexts
-
-
-SETUP_PY = DALS(
- """
- from setuptools import setup
-
- setup(name='foo')
- """)
-
-
-@pytest.fixture
-def sample_project(tmpdir_cwd):
- # setup.py
- with open('setup.py', 'wt') as f:
- f.write(SETUP_PY)
-
- os.mkdir('build')
-
- # A test document.
- with open('build/index.html', 'w') as f:
- f.write("Hello world.")
-
- # An empty folder.
- os.mkdir('build/empty')
-
-
-@pytest.mark.usefixtures('sample_project')
-@pytest.mark.usefixtures('user_override')
-class TestUploadDocsTest:
-
- def test_create_zipfile(self):
- """
- Ensure zipfile creation handles common cases, including a folder
- containing an empty folder.
- """
-
- dist = Distribution()
-
- cmd = upload_docs(dist)
- cmd.target_dir = cmd.upload_dir = 'build'
- with contexts.tempdir() as tmp_dir:
- tmp_file = os.path.join(tmp_dir, 'foo.zip')
- zip_file = cmd.create_zipfile(tmp_file)
-
- assert zipfile.is_zipfile(tmp_file)
-
- with contextlib.closing(zipfile.ZipFile(tmp_file)) as zip_file:
- assert zip_file.namelist() == ['index.html']
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_windows_wrappers.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_windows_wrappers.py
deleted file mode 100644
index 5b14d07..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/test_windows_wrappers.py
+++ /dev/null
@@ -1,183 +0,0 @@
-"""
-Python Script Wrapper for Windows
-=================================
-
-setuptools includes wrappers for Python scripts that allows them to be
-executed like regular windows programs. There are 2 wrappers, one
-for command-line programs, cli.exe, and one for graphical programs,
-gui.exe. These programs are almost identical, function pretty much
-the same way, and are generated from the same source file. The
-wrapper programs are used by copying them to the directory containing
-the script they are to wrap and with the same name as the script they
-are to wrap.
-"""
-
-from __future__ import absolute_import
-
-import sys
-import textwrap
-import subprocess
-
-import pytest
-
-from setuptools.command.easy_install import nt_quote_arg
-import pkg_resources
-
-
-pytestmark = pytest.mark.skipif(sys.platform != 'win32', reason="Windows only")
-
-
-class WrapperTester:
-
- @classmethod
- def prep_script(cls, template):
- python_exe = nt_quote_arg(sys.executable)
- return template % locals()
-
- @classmethod
- def create_script(cls, tmpdir):
- """
- Create a simple script, foo-script.py
-
- Note that the script starts with a Unix-style '#!' line saying which
- Python executable to run. The wrapper will use this line to find the
- correct Python executable.
- """
-
- script = cls.prep_script(cls.script_tmpl)
-
- with (tmpdir / cls.script_name).open('w') as f:
- f.write(script)
-
- # also copy cli.exe to the sample directory
- with (tmpdir / cls.wrapper_name).open('wb') as f:
- w = pkg_resources.resource_string('setuptools', cls.wrapper_source)
- f.write(w)
-
-
-class TestCLI(WrapperTester):
- script_name = 'foo-script.py'
- wrapper_source = 'cli-32.exe'
- wrapper_name = 'foo.exe'
- script_tmpl = textwrap.dedent("""
- #!%(python_exe)s
- import sys
- input = repr(sys.stdin.read())
- print(sys.argv[0][-14:])
- print(sys.argv[1:])
- print(input)
- if __debug__:
- print('non-optimized')
- """).lstrip()
-
- def test_basic(self, tmpdir):
- """
- When the copy of cli.exe, foo.exe in this example, runs, it examines
- the path name it was run with and computes a Python script path name
- by removing the '.exe' suffix and adding the '-script.py' suffix. (For
- GUI programs, the suffix '-script.pyw' is added.) This is why we
- named out script the way we did. Now we can run out script by running
- the wrapper:
-
- This example was a little pathological in that it exercised windows
- (MS C runtime) quoting rules:
-
- - Strings containing spaces are surrounded by double quotes.
-
- - Double quotes in strings need to be escaped by preceding them with
- back slashes.
-
- - One or more backslashes preceding double quotes need to be escaped
- by preceding each of them with back slashes.
- """
- self.create_script(tmpdir)
- cmd = [
- str(tmpdir / 'foo.exe'),
- 'arg1',
- 'arg 2',
- 'arg "2\\"',
- 'arg 4\\',
- 'arg5 a\\\\b',
- ]
- proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE)
- stdout, stderr = proc.communicate('hello\nworld\n'.encode('ascii'))
- actual = stdout.decode('ascii').replace('\r\n', '\n')
- expected = textwrap.dedent(r"""
- \foo-script.py
- ['arg1', 'arg 2', 'arg "2\\"', 'arg 4\\', 'arg5 a\\\\b']
- 'hello\nworld\n'
- non-optimized
- """).lstrip()
- assert actual == expected
-
- def test_with_options(self, tmpdir):
- """
- Specifying Python Command-line Options
- --------------------------------------
-
- You can specify a single argument on the '#!' line. This can be used
- to specify Python options like -O, to run in optimized mode or -i
- to start the interactive interpreter. You can combine multiple
- options as usual. For example, to run in optimized mode and
- enter the interpreter after running the script, you could use -Oi:
- """
- self.create_script(tmpdir)
- tmpl = textwrap.dedent("""
- #!%(python_exe)s -Oi
- import sys
- input = repr(sys.stdin.read())
- print(sys.argv[0][-14:])
- print(sys.argv[1:])
- print(input)
- if __debug__:
- print('non-optimized')
- sys.ps1 = '---'
- """).lstrip()
- with (tmpdir / 'foo-script.py').open('w') as f:
- f.write(self.prep_script(tmpl))
- cmd = [str(tmpdir / 'foo.exe')]
- proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.STDOUT)
- stdout, stderr = proc.communicate()
- actual = stdout.decode('ascii').replace('\r\n', '\n')
- expected = textwrap.dedent(r"""
- \foo-script.py
- []
- ''
- ---
- """).lstrip()
- assert actual == expected
-
-
-class TestGUI(WrapperTester):
- """
- Testing the GUI Version
- -----------------------
- """
- script_name = 'bar-script.pyw'
- wrapper_source = 'gui-32.exe'
- wrapper_name = 'bar.exe'
-
- script_tmpl = textwrap.dedent("""
- #!%(python_exe)s
- import sys
- f = open(sys.argv[1], 'wb')
- bytes_written = f.write(repr(sys.argv[2]).encode('utf-8'))
- f.close()
- """).strip()
-
- def test_basic(self, tmpdir):
- """Test the GUI version with the simple scipt, bar-script.py"""
- self.create_script(tmpdir)
-
- cmd = [
- str(tmpdir / 'bar.exe'),
- str(tmpdir / 'test_output.txt'),
- 'Test Argument',
- ]
- proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.STDOUT)
- stdout, stderr = proc.communicate()
- assert not stdout
- assert not stderr
- with (tmpdir / 'test_output.txt').open('rb') as f_out:
- actual = f_out.read().decode('ascii')
- assert actual == repr('Test Argument')
diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/textwrap.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/textwrap.py
deleted file mode 100644
index 5cd9e5b..0000000
--- a/jython-tosca-parser/src/main/resources/Lib/site-packages/setuptools/tests/textwrap.py
+++ /dev/null
@@ -1,8 +0,0 @@
-from __future__ import absolute_import
-
-import textwrap
-
-
-def DALS(s):
- "dedent and left-strip"
- return textwrap.dedent(s).lstrip()