]> git.proxmox.com Git - mirror_edk2.git/blame - AppPkg/Applications/Python/Python-2.7.2/Lib/distutils/tests/test_config.py
EmbeddedPkg: Extend NvVarStoreFormattedLib LIBRARY_CLASS
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / distutils / tests / test_config.py
CommitLineData
4710c53d 1"""Tests for distutils.pypirc.pypirc."""\r
2import sys\r
3import os\r
4import unittest\r
5import tempfile\r
6import shutil\r
7\r
8from distutils.core import PyPIRCCommand\r
9from distutils.core import Distribution\r
10from distutils.log import set_threshold\r
11from distutils.log import WARN\r
12\r
13from distutils.tests import support\r
14from test.test_support import run_unittest\r
15\r
16PYPIRC = """\\r
17[distutils]\r
18\r
19index-servers =\r
20 server1\r
21 server2\r
22\r
23[server1]\r
24username:me\r
25password:secret\r
26\r
27[server2]\r
28username:meagain\r
29password: secret\r
30realm:acme\r
31repository:http://another.pypi/\r
32"""\r
33\r
34PYPIRC_OLD = """\\r
35[server-login]\r
36username:tarek\r
37password:secret\r
38"""\r
39\r
40WANTED = """\\r
41[distutils]\r
42index-servers =\r
43 pypi\r
44\r
45[pypi]\r
46username:tarek\r
47password:xxx\r
48"""\r
49\r
50\r
51class PyPIRCCommandTestCase(support.TempdirManager,\r
52 support.LoggingSilencer,\r
53 support.EnvironGuard,\r
54 unittest.TestCase):\r
55\r
56 def setUp(self):\r
57 """Patches the environment."""\r
58 super(PyPIRCCommandTestCase, self).setUp()\r
59 self.tmp_dir = self.mkdtemp()\r
60 os.environ['HOME'] = self.tmp_dir\r
61 self.rc = os.path.join(self.tmp_dir, '.pypirc')\r
62 self.dist = Distribution()\r
63\r
64 class command(PyPIRCCommand):\r
65 def __init__(self, dist):\r
66 PyPIRCCommand.__init__(self, dist)\r
67 def initialize_options(self):\r
68 pass\r
69 finalize_options = initialize_options\r
70\r
71 self._cmd = command\r
72 self.old_threshold = set_threshold(WARN)\r
73\r
74 def tearDown(self):\r
75 """Removes the patch."""\r
76 set_threshold(self.old_threshold)\r
77 super(PyPIRCCommandTestCase, self).tearDown()\r
78\r
79 def test_server_registration(self):\r
80 # This test makes sure PyPIRCCommand knows how to:\r
81 # 1. handle several sections in .pypirc\r
82 # 2. handle the old format\r
83\r
84 # new format\r
85 self.write_file(self.rc, PYPIRC)\r
86 cmd = self._cmd(self.dist)\r
87 config = cmd._read_pypirc()\r
88\r
89 config = config.items()\r
90 config.sort()\r
91 waited = [('password', 'secret'), ('realm', 'pypi'),\r
92 ('repository', 'http://pypi.python.org/pypi'),\r
93 ('server', 'server1'), ('username', 'me')]\r
94 self.assertEqual(config, waited)\r
95\r
96 # old format\r
97 self.write_file(self.rc, PYPIRC_OLD)\r
98 config = cmd._read_pypirc()\r
99 config = config.items()\r
100 config.sort()\r
101 waited = [('password', 'secret'), ('realm', 'pypi'),\r
102 ('repository', 'http://pypi.python.org/pypi'),\r
103 ('server', 'server-login'), ('username', 'tarek')]\r
104 self.assertEqual(config, waited)\r
105\r
106 def test_server_empty_registration(self):\r
107 cmd = self._cmd(self.dist)\r
108 rc = cmd._get_rc_file()\r
109 self.assertTrue(not os.path.exists(rc))\r
110 cmd._store_pypirc('tarek', 'xxx')\r
111 self.assertTrue(os.path.exists(rc))\r
112 f = open(rc)\r
113 try:\r
114 content = f.read()\r
115 self.assertEqual(content, WANTED)\r
116 finally:\r
117 f.close()\r
118\r
119def test_suite():\r
120 return unittest.makeSuite(PyPIRCCommandTestCase)\r
121\r
122if __name__ == "__main__":\r
123 run_unittest(test_suite())\r