diff options
| author | xoviat <xoviat@users.noreply.github.com> | 2017-11-08 16:41:32 -0600 |
|---|---|---|
| committer | Jason R. Coombs <jaraco@jaraco.com> | 2020-05-25 15:57:07 -0400 |
| commit | cd7d6d56a1cf84cafea44f7cf7e357a926821f03 (patch) | |
| tree | 751497929ea17cfab861942590197d2b574d7dfd /distutils/tests/test_install_scripts.py | |
| parent | 5210488f65e41038e5721d31792fae784c39d649 (diff) | |
| download | python-setuptools-git-cd7d6d56a1cf84cafea44f7cf7e357a926821f03.tar.gz | |
[maint] move all files into subfolder
Diffstat (limited to 'distutils/tests/test_install_scripts.py')
| -rw-r--r-- | distutils/tests/test_install_scripts.py | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/distutils/tests/test_install_scripts.py b/distutils/tests/test_install_scripts.py new file mode 100644 index 00000000..1f7b1038 --- /dev/null +++ b/distutils/tests/test_install_scripts.py @@ -0,0 +1,82 @@ +"""Tests for distutils.command.install_scripts.""" + +import os +import unittest + +from distutils.command.install_scripts import install_scripts +from distutils.core import Distribution + +from distutils.tests import support +from test.support import run_unittest + + +class InstallScriptsTestCase(support.TempdirManager, + support.LoggingSilencer, + unittest.TestCase): + + def test_default_settings(self): + dist = Distribution() + dist.command_obj["build"] = support.DummyCommand( + build_scripts="/foo/bar") + dist.command_obj["install"] = support.DummyCommand( + install_scripts="/splat/funk", + force=1, + skip_build=1, + ) + cmd = install_scripts(dist) + self.assertFalse(cmd.force) + self.assertFalse(cmd.skip_build) + self.assertIsNone(cmd.build_dir) + self.assertIsNone(cmd.install_dir) + + cmd.finalize_options() + + self.assertTrue(cmd.force) + self.assertTrue(cmd.skip_build) + self.assertEqual(cmd.build_dir, "/foo/bar") + self.assertEqual(cmd.install_dir, "/splat/funk") + + def test_installation(self): + source = self.mkdtemp() + expected = [] + + def write_script(name, text): + expected.append(name) + f = open(os.path.join(source, name), "w") + try: + f.write(text) + finally: + f.close() + + write_script("script1.py", ("#! /usr/bin/env python2.3\n" + "# bogus script w/ Python sh-bang\n" + "pass\n")) + write_script("script2.py", ("#!/usr/bin/python\n" + "# bogus script w/ Python sh-bang\n" + "pass\n")) + write_script("shell.sh", ("#!/bin/sh\n" + "# bogus shell script w/ sh-bang\n" + "exit 0\n")) + + target = self.mkdtemp() + dist = Distribution() + dist.command_obj["build"] = support.DummyCommand(build_scripts=source) + dist.command_obj["install"] = support.DummyCommand( + install_scripts=target, + force=1, + skip_build=1, + ) + cmd = install_scripts(dist) + cmd.finalize_options() + cmd.run() + + installed = os.listdir(target) + for name in expected: + self.assertIn(name, installed) + + +def test_suite(): + return unittest.makeSuite(InstallScriptsTestCase) + +if __name__ == "__main__": + run_unittest(test_suite()) |
