]> git.proxmox.com Git - mirror_edk2.git/blobdiff - AppPkg/Applications/Python/Python-2.7.2/Lib/distutils/tests/test_install_scripts.py
AppPkg/Applications/Python: Add Python 2.7.2 sources since the release of Python...
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / distutils / tests / test_install_scripts.py
diff --git a/AppPkg/Applications/Python/Python-2.7.2/Lib/distutils/tests/test_install_scripts.py b/AppPkg/Applications/Python/Python-2.7.2/Lib/distutils/tests/test_install_scripts.py
new file mode 100644 (file)
index 0000000..2777c4f
--- /dev/null
@@ -0,0 +1,82 @@
+"""Tests for distutils.command.install_scripts."""\r
+\r
+import os\r
+import unittest\r
+\r
+from distutils.command.install_scripts import install_scripts\r
+from distutils.core import Distribution\r
+\r
+from distutils.tests import support\r
+from test.test_support import run_unittest\r
+\r
+\r
+class InstallScriptsTestCase(support.TempdirManager,\r
+                             support.LoggingSilencer,\r
+                             unittest.TestCase):\r
+\r
+    def test_default_settings(self):\r
+        dist = Distribution()\r
+        dist.command_obj["build"] = support.DummyCommand(\r
+            build_scripts="/foo/bar")\r
+        dist.command_obj["install"] = support.DummyCommand(\r
+            install_scripts="/splat/funk",\r
+            force=1,\r
+            skip_build=1,\r
+            )\r
+        cmd = install_scripts(dist)\r
+        self.assertTrue(not cmd.force)\r
+        self.assertTrue(not cmd.skip_build)\r
+        self.assertTrue(cmd.build_dir is None)\r
+        self.assertTrue(cmd.install_dir is None)\r
+\r
+        cmd.finalize_options()\r
+\r
+        self.assertTrue(cmd.force)\r
+        self.assertTrue(cmd.skip_build)\r
+        self.assertEqual(cmd.build_dir, "/foo/bar")\r
+        self.assertEqual(cmd.install_dir, "/splat/funk")\r
+\r
+    def test_installation(self):\r
+        source = self.mkdtemp()\r
+        expected = []\r
+\r
+        def write_script(name, text):\r
+            expected.append(name)\r
+            f = open(os.path.join(source, name), "w")\r
+            try:\r
+                f.write(text)\r
+            finally:\r
+                f.close()\r
+\r
+        write_script("script1.py", ("#! /usr/bin/env python2.3\n"\r
+                                    "# bogus script w/ Python sh-bang\n"\r
+                                    "pass\n"))\r
+        write_script("script2.py", ("#!/usr/bin/python\n"\r
+                                    "# bogus script w/ Python sh-bang\n"\r
+                                    "pass\n"))\r
+        write_script("shell.sh", ("#!/bin/sh\n"\r
+                                  "# bogus shell script w/ sh-bang\n"\r
+                                  "exit 0\n"))\r
+\r
+        target = self.mkdtemp()\r
+        dist = Distribution()\r
+        dist.command_obj["build"] = support.DummyCommand(build_scripts=source)\r
+        dist.command_obj["install"] = support.DummyCommand(\r
+            install_scripts=target,\r
+            force=1,\r
+            skip_build=1,\r
+            )\r
+        cmd = install_scripts(dist)\r
+        cmd.finalize_options()\r
+        cmd.run()\r
+\r
+        installed = os.listdir(target)\r
+        for name in expected:\r
+            self.assertTrue(name in installed)\r
+\r
+\r
+def test_suite():\r
+    return unittest.makeSuite(InstallScriptsTestCase)\r
+\r
+if __name__ == "__main__":\r
+    run_unittest(test_suite())\r