Back to index

python3.2  3.2.2
Public Member Functions | Public Attributes
distutils.tests.test_build_scripts.BuildScriptsTestCase Class Reference
Inheritance diagram for distutils.tests.test_build_scripts.BuildScriptsTestCase:
Inheritance graph
[legend]
Collaboration diagram for distutils.tests.test_build_scripts.BuildScriptsTestCase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def test_default_settings
def test_build
def get_build_scripts_cmd
def write_sample_scripts
def write_script
def test_version_int
def setUp
def tearDown
def mkdtemp
def write_file
def create_dist
def setUp
def tearDown
def get_logs
def clear_logs

Public Attributes

 old_cwd
 tempdirs
_PyObject_HEAD_EXTRA Py_ssize_t ob_refcnt
struct _typeobjectob_type
 threshold
 logs
_PyObject_HEAD_EXTRA Py_ssize_t ob_refcnt
struct _typeobjectob_type

Detailed Description

Definition at line 16 of file test_build_scripts.py.


Member Function Documentation

Definition at line 45 of file support.py.

00045 
00046     def clear_logs(self):
00047         self.logs = []
00048 

Here is the caller graph for this function:

def distutils.tests.support.TempdirManager.create_dist (   self,
  pkg_name = 'foo',
  kw 
) [inherited]
Will generate a test environment.

This function creates:
 - a Distribution instance using keywords
 - a temporary directory with a package structure

It returns the package directory and the distribution
instance.

Definition at line 92 of file support.py.

00092 
00093     def create_dist(self, pkg_name='foo', **kw):
00094         """Will generate a test environment.
00095 
00096         This function creates:
00097          - a Distribution instance using keywords
00098          - a temporary directory with a package structure
00099 
00100         It returns the package directory and the distribution
00101         instance.
00102         """
00103         tmp_dir = self.mkdtemp()
00104         pkg_dir = os.path.join(tmp_dir, pkg_name)
00105         os.mkdir(pkg_dir)
00106         dist = Distribution(attrs=kw)
00107 
00108         return pkg_dir, dist
00109 

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 43 of file test_build_scripts.py.

00043 
00044     def get_build_scripts_cmd(self, target, scripts):
00045         import sys
00046         dist = Distribution()
00047         dist.scripts = scripts
00048         dist.command_obj["build"] = support.DummyCommand(
00049             build_scripts=target,
00050             force=1,
00051             executable=sys.executable
00052             )
00053         return build_scripts(dist)

Here is the caller graph for this function:

def distutils.tests.support.LoggingSilencer.get_logs (   self,
  levels 
) [inherited]

Definition at line 37 of file support.py.

00037 
00038     def get_logs(self, *levels):
00039         def _format(msg, args):
00040             if len(args) == 0:
00041                 return msg
00042             return msg % args
00043         return [_format(msg, args) for level, msg, args
00044                 in self.logs if level in levels]

Here is the call graph for this function:

Here is the caller graph for this function:

Create a temporary directory that will be cleaned up.

Returns the path of the directory.

Definition at line 69 of file support.py.

00069 
00070     def mkdtemp(self):
00071         """Create a temporary directory that will be cleaned up.
00072 
00073         Returns the path of the directory.
00074         """
00075         d = tempfile.mkdtemp()
00076         self.tempdirs.append(d)
00077         return d

Here is the call graph for this function:

Here is the caller graph for this function:

Reimplemented in distutils.tests.test_upload.uploadTestCase, distutils.tests.test_register.RegisterTestCase, distutils.tests.test_config.PyPIRCCommandTestCase, distutils.tests.test_sdist.SDistTestCase, distutils.tests.test_dist.DistributionTestCase, distutils.tests.test_bdist_dumb.BuildDumbTestCase, distutils.tests.test_bdist_rpm.BuildRpmTestCase, and distutils.tests.test_config_cmd.ConfigTestCase.

Definition at line 17 of file support.py.

00017 
00018     def setUp(self):
00019         super().setUp()
00020         self.threshold = log.set_threshold(log.FATAL)
00021         # catching warnings
00022         # when log will be replaced by logging
00023         # we won't need such monkey-patch anymore
00024         self._old_log = log.Log._log
00025         log.Log._log = self._log
00026         self.logs = []

Here is the caller graph for this function:

Reimplemented in distutils.tests.test_dist.MetadataTestCase, distutils.tests.test_register.RegisterTestCase, distutils.tests.test_upload.uploadTestCase, distutils.tests.test_config.PyPIRCCommandTestCase, distutils.tests.test_sdist.SDistTestCase, distutils.tests.test_cygwinccompiler.CygwinCCompilerTestCase, distutils.tests.test_bdist_dumb.BuildDumbTestCase, distutils.tests.test_bdist_rpm.BuildRpmTestCase, distutils.tests.test_dir_util.DirUtilTestCase, distutils.tests.test_file_util.FileUtilTestCase, and distutils.tests.test_config_cmd.ConfigTestCase.

Definition at line 60 of file support.py.

00060 
00061     def tearDown(self):
00062         # Restore working dir, for Solaris and derivatives, where rmdir()
00063         # on the current directory fails.
00064         os.chdir(self.old_cwd)
00065         super().tearDown()
00066         while self.tempdirs:
00067             d = self.tempdirs.pop()
00068             shutil.rmtree(d, os.name in ('nt', 'cygwin'))

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 28 of file test_build_scripts.py.

00028 
00029     def test_build(self):
00030         source = self.mkdtemp()
00031         target = self.mkdtemp()
00032         expected = self.write_sample_scripts(source)
00033 
00034         cmd = self.get_build_scripts_cmd(target,
00035                                          [os.path.join(source, fn)
00036                                           for fn in expected])
00037         cmd.finalize_options()
00038         cmd.run()
00039 
00040         built = os.listdir(target)
00041         for name in expected:
00042             self.assertTrue(name in built)

Here is the call graph for this function:

Definition at line 18 of file test_build_scripts.py.

00018 
00019     def test_default_settings(self):
00020         cmd = self.get_build_scripts_cmd("/foo/bar", [])
00021         self.assertTrue(not cmd.force)
00022         self.assertTrue(cmd.build_dir is None)
00023 
00024         cmd.finalize_options()
00025 
00026         self.assertTrue(cmd.force)
00027         self.assertEqual(cmd.build_dir, "/foo/bar")

Here is the call graph for this function:

Definition at line 80 of file test_build_scripts.py.

00080 
00081     def test_version_int(self):
00082         source = self.mkdtemp()
00083         target = self.mkdtemp()
00084         expected = self.write_sample_scripts(source)
00085 
00086 
00087         cmd = self.get_build_scripts_cmd(target,
00088                                          [os.path.join(source, fn)
00089                                           for fn in expected])
00090         cmd.finalize_options()
00091 
00092         # http://bugs.python.org/issue4524
00093         #
00094         # On linux-g++-32 with command line `./configure --enable-ipv6
00095         # --with-suffix=3`, python is compiled okay but the build scripts
00096         # failed when writing the name of the executable
00097         old = sysconfig.get_config_vars().get('VERSION')
00098         sysconfig._config_vars['VERSION'] = 4
00099         try:
00100             cmd.run()
00101         finally:
00102             if old is not None:
00103                 sysconfig._config_vars['VERSION'] = old
00104 
00105         built = os.listdir(target)
00106         for name in expected:
00107             self.assertTrue(name in built)

Here is the call graph for this function:

def distutils.tests.support.TempdirManager.write_file (   self,
  path,
  content = 'xxx' 
) [inherited]
Writes a file in the given path.


path can be a string or a sequence.

Definition at line 78 of file support.py.

00078 
00079     def write_file(self, path, content='xxx'):
00080         """Writes a file in the given path.
00081 
00082 
00083         path can be a string or a sequence.
00084         """
00085         if isinstance(path, (list, tuple)):
00086             path = os.path.join(*path)
00087         f = open(path, 'w')
00088         try:
00089             f.write(content)
00090         finally:
00091             f.close()

Here is the caller graph for this function:

Definition at line 54 of file test_build_scripts.py.

00054 
00055     def write_sample_scripts(self, dir):
00056         expected = []
00057         expected.append("script1.py")
00058         self.write_script(dir, "script1.py",
00059                           ("#! /usr/bin/env python2.3\n"
00060                            "# bogus script w/ Python sh-bang\n"
00061                            "pass\n"))
00062         expected.append("script2.py")
00063         self.write_script(dir, "script2.py",
00064                           ("#!/usr/bin/python\n"
00065                            "# bogus script w/ Python sh-bang\n"
00066                            "pass\n"))
00067         expected.append("shell.sh")
00068         self.write_script(dir, "shell.sh",
00069                           ("#!/bin/sh\n"
00070                            "# bogus shell script w/ sh-bang\n"
00071                            "exit 0\n"))
00072         return expected

Here is the call graph for this function:

Here is the caller graph for this function:

def distutils.tests.test_build_scripts.BuildScriptsTestCase.write_script (   self,
  dir,
  name,
  text 
)

Definition at line 73 of file test_build_scripts.py.

00073 
00074     def write_script(self, dir, name, text):
00075         f = open(os.path.join(dir, name), "w")
00076         try:
00077             f.write(text)
00078         finally:
00079             f.close()

Here is the caller graph for this function:


Member Data Documentation

Definition at line 25 of file support.py.

Definition at line 107 of file object.h.

Definition at line 107 of file object.h.

struct _typeobject* _object::ob_type [inherited]

Definition at line 108 of file object.h.

struct _typeobject* _object::ob_type [inherited]

Definition at line 108 of file object.h.

Definition at line 57 of file support.py.

Definition at line 58 of file support.py.

Definition at line 19 of file support.py.


The documentation for this class was generated from the following file: