]> git.proxmox.com Git - mirror_edk2.git/blame - AppPkg/Applications/Python/Python-2.7.2/Lib/distutils/tests/test_install_scripts.py
EmbeddedPkg: Extend NvVarStoreFormattedLib LIBRARY_CLASS
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / distutils / tests / test_install_scripts.py
CommitLineData
4710c53d 1"""Tests for distutils.command.install_scripts."""\r
2\r
3import os\r
4import unittest\r
5\r
6from distutils.command.install_scripts import install_scripts\r
7from distutils.core import Distribution\r
8\r
9from distutils.tests import support\r
10from test.test_support import run_unittest\r
11\r
12\r
13class InstallScriptsTestCase(support.TempdirManager,\r
14 support.LoggingSilencer,\r
15 unittest.TestCase):\r
16\r
17 def test_default_settings(self):\r
18 dist = Distribution()\r
19 dist.command_obj["build"] = support.DummyCommand(\r
20 build_scripts="/foo/bar")\r
21 dist.command_obj["install"] = support.DummyCommand(\r
22 install_scripts="/splat/funk",\r
23 force=1,\r
24 skip_build=1,\r
25 )\r
26 cmd = install_scripts(dist)\r
27 self.assertTrue(not cmd.force)\r
28 self.assertTrue(not cmd.skip_build)\r
29 self.assertTrue(cmd.build_dir is None)\r
30 self.assertTrue(cmd.install_dir is None)\r
31\r
32 cmd.finalize_options()\r
33\r
34 self.assertTrue(cmd.force)\r
35 self.assertTrue(cmd.skip_build)\r
36 self.assertEqual(cmd.build_dir, "/foo/bar")\r
37 self.assertEqual(cmd.install_dir, "/splat/funk")\r
38\r
39 def test_installation(self):\r
40 source = self.mkdtemp()\r
41 expected = []\r
42\r
43 def write_script(name, text):\r
44 expected.append(name)\r
45 f = open(os.path.join(source, name), "w")\r
46 try:\r
47 f.write(text)\r
48 finally:\r
49 f.close()\r
50\r
51 write_script("script1.py", ("#! /usr/bin/env python2.3\n"\r
52 "# bogus script w/ Python sh-bang\n"\r
53 "pass\n"))\r
54 write_script("script2.py", ("#!/usr/bin/python\n"\r
55 "# bogus script w/ Python sh-bang\n"\r
56 "pass\n"))\r
57 write_script("shell.sh", ("#!/bin/sh\n"\r
58 "# bogus shell script w/ sh-bang\n"\r
59 "exit 0\n"))\r
60\r
61 target = self.mkdtemp()\r
62 dist = Distribution()\r
63 dist.command_obj["build"] = support.DummyCommand(build_scripts=source)\r
64 dist.command_obj["install"] = support.DummyCommand(\r
65 install_scripts=target,\r
66 force=1,\r
67 skip_build=1,\r
68 )\r
69 cmd = install_scripts(dist)\r
70 cmd.finalize_options()\r
71 cmd.run()\r
72\r
73 installed = os.listdir(target)\r
74 for name in expected:\r
75 self.assertTrue(name in installed)\r
76\r
77\r
78def test_suite():\r
79 return unittest.makeSuite(InstallScriptsTestCase)\r
80\r
81if __name__ == "__main__":\r
82 run_unittest(test_suite())\r