Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 1 | """Tests for distutils.util.""" |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 2 | import os |
| 3 | import sys |
| 4 | import unittest |
Tarek Ziadé | 822e1d4 | 2009-04-13 12:37:57 +0000 | [diff] [blame] | 5 | from copy import copy |
Éric Araujo | 70ec44a | 2010-11-06 02:44:43 +0000 | [diff] [blame] | 6 | from test.support import run_unittest |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 7 | |
Tarek Ziadé | 04fe7c0 | 2009-10-25 23:08:47 +0000 | [diff] [blame] | 8 | from distutils.errors import DistutilsPlatformError, DistutilsByteCompileError |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 9 | from distutils.util import (get_platform, convert_path, change_root, |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 10 | check_environ, split_quoted, strtobool, |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 11 | rfc822_escape, byte_compile) |
| 12 | from distutils import util # used to patch _environ_checked |
| 13 | from distutils.sysconfig import get_config_vars |
| 14 | from distutils import sysconfig |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 15 | from distutils.tests import support |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 16 | import _osx_support |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 17 | |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 18 | class UtilTestCase(support.EnvironGuard, unittest.TestCase): |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 19 | |
| 20 | def setUp(self): |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 21 | super(UtilTestCase, self).setUp() |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 22 | # saving the environment |
| 23 | self.name = os.name |
| 24 | self.platform = sys.platform |
| 25 | self.version = sys.version |
| 26 | self.sep = os.sep |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 27 | self.join = os.path.join |
| 28 | self.isabs = os.path.isabs |
| 29 | self.splitdrive = os.path.splitdrive |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 30 | self._config_vars = copy(sysconfig._config_vars) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 31 | |
| 32 | # patching os.uname |
| 33 | if hasattr(os, 'uname'): |
| 34 | self.uname = os.uname |
| 35 | self._uname = os.uname() |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 36 | else: |
| 37 | self.uname = None |
| 38 | self._uname = None |
Tarek Ziadé | 8c20189 | 2009-02-13 23:48:11 +0000 | [diff] [blame] | 39 | |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 40 | os.uname = self._get_uname |
Tarek Ziadé | f8926b2 | 2009-07-16 16:18:19 +0000 | [diff] [blame] | 41 | |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 42 | def tearDown(self): |
Tarek Ziadé | 822e1d4 | 2009-04-13 12:37:57 +0000 | [diff] [blame] | 43 | # getting back the environment |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 44 | os.name = self.name |
| 45 | sys.platform = self.platform |
| 46 | sys.version = self.version |
| 47 | os.sep = self.sep |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 48 | os.path.join = self.join |
| 49 | os.path.isabs = self.isabs |
| 50 | os.path.splitdrive = self.splitdrive |
| 51 | if self.uname is not None: |
| 52 | os.uname = self.uname |
Tarek Ziadé | 516db94 | 2009-03-11 12:52:00 +0000 | [diff] [blame] | 53 | else: |
| 54 | del os.uname |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 55 | sysconfig._config_vars = copy(self._config_vars) |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 56 | super(UtilTestCase, self).tearDown() |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 57 | |
| 58 | def _set_uname(self, uname): |
| 59 | self._uname = uname |
| 60 | |
| 61 | def _get_uname(self): |
| 62 | return self._uname |
| 63 | |
Tarek Ziadé | 8b441d0 | 2010-01-29 11:46:31 +0000 | [diff] [blame] | 64 | def test_get_platform(self): |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 65 | |
| 66 | # windows XP, 32bits |
| 67 | os.name = 'nt' |
| 68 | sys.version = ('2.4.4 (#71, Oct 18 2006, 08:34:43) ' |
| 69 | '[MSC v.1310 32 bit (Intel)]') |
| 70 | sys.platform = 'win32' |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 71 | self.assertEqual(get_platform(), 'win32') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 72 | |
| 73 | # windows XP, amd64 |
| 74 | os.name = 'nt' |
| 75 | sys.version = ('2.4.4 (#71, Oct 18 2006, 08:34:43) ' |
| 76 | '[MSC v.1310 32 bit (Amd64)]') |
| 77 | sys.platform = 'win32' |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 78 | self.assertEqual(get_platform(), 'win-amd64') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 79 | |
| 80 | # windows XP, itanium |
| 81 | os.name = 'nt' |
| 82 | sys.version = ('2.4.4 (#71, Oct 18 2006, 08:34:43) ' |
| 83 | '[MSC v.1310 32 bit (Itanium)]') |
| 84 | sys.platform = 'win32' |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 85 | self.assertEqual(get_platform(), 'win-ia64') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 86 | |
| 87 | # macbook |
| 88 | os.name = 'posix' |
| 89 | sys.version = ('2.5 (r25:51918, Sep 19 2006, 08:49:13) ' |
| 90 | '\n[GCC 4.0.1 (Apple Computer, Inc. build 5341)]') |
| 91 | sys.platform = 'darwin' |
| 92 | self._set_uname(('Darwin', 'macziade', '8.11.1', |
| 93 | ('Darwin Kernel Version 8.11.1: ' |
| 94 | 'Wed Oct 10 18:23:28 PDT 2007; ' |
| 95 | 'root:xnu-792.25.20~1/RELEASE_I386'), 'i386')) |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 96 | _osx_support._remove_original_values(get_config_vars()) |
Ronald Oussoren | 222e89a | 2011-05-15 16:46:11 +0200 | [diff] [blame] | 97 | get_config_vars()['MACOSX_DEPLOYMENT_TARGET'] = '10.3' |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 98 | |
| 99 | get_config_vars()['CFLAGS'] = ('-fno-strict-aliasing -DNDEBUG -g ' |
| 100 | '-fwrapv -O3 -Wall -Wstrict-prototypes') |
| 101 | |
| 102 | cursize = sys.maxsize |
| 103 | sys.maxsize = (2 ** 31)-1 |
| 104 | try: |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 105 | self.assertEqual(get_platform(), 'macosx-10.3-i386') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 106 | finally: |
| 107 | sys.maxsize = cursize |
| 108 | |
| 109 | # macbook with fat binaries (fat, universal or fat64) |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 110 | _osx_support._remove_original_values(get_config_vars()) |
Ronald Oussoren | 222e89a | 2011-05-15 16:46:11 +0200 | [diff] [blame] | 111 | get_config_vars()['MACOSX_DEPLOYMENT_TARGET'] = '10.4' |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 112 | get_config_vars()['CFLAGS'] = ('-arch ppc -arch i386 -isysroot ' |
| 113 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 114 | '-fno-strict-aliasing -fno-common ' |
| 115 | '-dynamic -DNDEBUG -g -O3') |
| 116 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 117 | self.assertEqual(get_platform(), 'macosx-10.4-fat') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 118 | |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 119 | _osx_support._remove_original_values(get_config_vars()) |
Ronald Oussoren | 222e89a | 2011-05-15 16:46:11 +0200 | [diff] [blame] | 120 | os.environ['MACOSX_DEPLOYMENT_TARGET'] = '10.1' |
| 121 | self.assertEqual(get_platform(), 'macosx-10.4-fat') |
| 122 | |
| 123 | |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 124 | _osx_support._remove_original_values(get_config_vars()) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 125 | get_config_vars()['CFLAGS'] = ('-arch x86_64 -arch i386 -isysroot ' |
| 126 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 127 | '-fno-strict-aliasing -fno-common ' |
| 128 | '-dynamic -DNDEBUG -g -O3') |
| 129 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 130 | self.assertEqual(get_platform(), 'macosx-10.4-intel') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 131 | |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 132 | _osx_support._remove_original_values(get_config_vars()) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 133 | get_config_vars()['CFLAGS'] = ('-arch x86_64 -arch ppc -arch i386 -isysroot ' |
| 134 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 135 | '-fno-strict-aliasing -fno-common ' |
| 136 | '-dynamic -DNDEBUG -g -O3') |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 137 | self.assertEqual(get_platform(), 'macosx-10.4-fat3') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 138 | |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 139 | _osx_support._remove_original_values(get_config_vars()) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 140 | get_config_vars()['CFLAGS'] = ('-arch ppc64 -arch x86_64 -arch ppc -arch i386 -isysroot ' |
| 141 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 142 | '-fno-strict-aliasing -fno-common ' |
| 143 | '-dynamic -DNDEBUG -g -O3') |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 144 | self.assertEqual(get_platform(), 'macosx-10.4-universal') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 145 | |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 146 | _osx_support._remove_original_values(get_config_vars()) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 147 | get_config_vars()['CFLAGS'] = ('-arch x86_64 -arch ppc64 -isysroot ' |
| 148 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 149 | '-fno-strict-aliasing -fno-common ' |
| 150 | '-dynamic -DNDEBUG -g -O3') |
| 151 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 152 | self.assertEqual(get_platform(), 'macosx-10.4-fat64') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 153 | |
| 154 | for arch in ('ppc', 'i386', 'x86_64', 'ppc64'): |
Ned Deily | df8aa2b | 2012-07-21 05:36:30 -0700 | [diff] [blame] | 155 | _osx_support._remove_original_values(get_config_vars()) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 156 | get_config_vars()['CFLAGS'] = ('-arch %s -isysroot ' |
| 157 | '/Developer/SDKs/MacOSX10.4u.sdk ' |
| 158 | '-fno-strict-aliasing -fno-common ' |
| 159 | '-dynamic -DNDEBUG -g -O3'%(arch,)) |
| 160 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 161 | self.assertEqual(get_platform(), 'macosx-10.4-%s'%(arch,)) |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 162 | |
Ronald Oussoren | 222e89a | 2011-05-15 16:46:11 +0200 | [diff] [blame] | 163 | |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 164 | # linux debian sarge |
| 165 | os.name = 'posix' |
| 166 | sys.version = ('2.3.5 (#1, Jul 4 2007, 17:28:59) ' |
| 167 | '\n[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)]') |
| 168 | sys.platform = 'linux2' |
| 169 | self._set_uname(('Linux', 'aglae', '2.6.21.1dedibox-r7', |
| 170 | '#1 Mon Apr 30 17:25:38 CEST 2007', 'i686')) |
| 171 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 172 | self.assertEqual(get_platform(), 'linux-i686') |
Tarek Ziadé | 3679727 | 2010-07-22 12:50:05 +0000 | [diff] [blame] | 173 | |
| 174 | # XXX more platforms to tests here |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 175 | |
| 176 | def test_convert_path(self): |
| 177 | # linux/mac |
| 178 | os.sep = '/' |
| 179 | def _join(path): |
| 180 | return '/'.join(path) |
| 181 | os.path.join = _join |
| 182 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 183 | self.assertEqual(convert_path('/home/to/my/stuff'), |
| 184 | '/home/to/my/stuff') |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 185 | |
| 186 | # win |
| 187 | os.sep = '\\' |
| 188 | def _join(*path): |
| 189 | return '\\'.join(path) |
| 190 | os.path.join = _join |
| 191 | |
| 192 | self.assertRaises(ValueError, convert_path, '/home/to/my/stuff') |
| 193 | self.assertRaises(ValueError, convert_path, 'home/to/my/stuff/') |
| 194 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 195 | self.assertEqual(convert_path('home/to/my/stuff'), |
| 196 | 'home\\to\\my\\stuff') |
| 197 | self.assertEqual(convert_path('.'), |
| 198 | os.curdir) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 199 | |
| 200 | def test_change_root(self): |
| 201 | # linux/mac |
| 202 | os.name = 'posix' |
| 203 | def _isabs(path): |
| 204 | return path[0] == '/' |
| 205 | os.path.isabs = _isabs |
Tarek Ziadé | 8c20189 | 2009-02-13 23:48:11 +0000 | [diff] [blame] | 206 | def _join(*path): |
| 207 | return '/'.join(path) |
| 208 | os.path.join = _join |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 209 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 210 | self.assertEqual(change_root('/root', '/old/its/here'), |
| 211 | '/root/old/its/here') |
| 212 | self.assertEqual(change_root('/root', 'its/here'), |
| 213 | '/root/its/here') |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 214 | |
| 215 | # windows |
| 216 | os.name = 'nt' |
| 217 | def _isabs(path): |
| 218 | return path.startswith('c:\\') |
| 219 | os.path.isabs = _isabs |
| 220 | def _splitdrive(path): |
| 221 | if path.startswith('c:'): |
| 222 | return ('', path.replace('c:', '')) |
| 223 | return ('', path) |
| 224 | os.path.splitdrive = _splitdrive |
| 225 | def _join(*path): |
| 226 | return '\\'.join(path) |
| 227 | os.path.join = _join |
| 228 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 229 | self.assertEqual(change_root('c:\\root', 'c:\\old\\its\\here'), |
| 230 | 'c:\\root\\old\\its\\here') |
| 231 | self.assertEqual(change_root('c:\\root', 'its\\here'), |
| 232 | 'c:\\root\\its\\here') |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 233 | |
| 234 | # BugsBunny os (it's a great os) |
| 235 | os.name = 'BugsBunny' |
| 236 | self.assertRaises(DistutilsPlatformError, |
| 237 | change_root, 'c:\\root', 'its\\here') |
| 238 | |
| 239 | # XXX platforms to be covered: os2, mac |
| 240 | |
| 241 | def test_check_environ(self): |
| 242 | util._environ_checked = 0 |
Tarek Ziadé | 430fb63 | 2009-10-18 11:34:51 +0000 | [diff] [blame] | 243 | if 'HOME' in os.environ: |
| 244 | del os.environ['HOME'] |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 245 | |
| 246 | # posix without HOME |
| 247 | if os.name == 'posix': # this test won't run on windows |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 248 | check_environ() |
| 249 | import pwd |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 250 | self.assertEqual(os.environ['HOME'], pwd.getpwuid(os.getuid())[5]) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 251 | else: |
| 252 | check_environ() |
| 253 | |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 254 | self.assertEqual(os.environ['PLAT'], get_platform()) |
| 255 | self.assertEqual(util._environ_checked, 1) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 256 | |
| 257 | def test_split_quoted(self): |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 258 | self.assertEqual(split_quoted('""one"" "two" \'three\' \\four'), |
| 259 | ['one', 'two', 'three', 'four']) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 260 | |
| 261 | def test_strtobool(self): |
| 262 | yes = ('y', 'Y', 'yes', 'True', 't', 'true', 'True', 'On', 'on', '1') |
| 263 | no = ('n', 'no', 'f', 'false', 'off', '0', 'Off', 'No', 'N') |
| 264 | |
| 265 | for y in yes: |
Benjamin Peterson | c9c0f20 | 2009-06-30 23:06:06 +0000 | [diff] [blame] | 266 | self.assertTrue(strtobool(y)) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 267 | |
| 268 | for n in no: |
Benjamin Peterson | c9c0f20 | 2009-06-30 23:06:06 +0000 | [diff] [blame] | 269 | self.assertTrue(not strtobool(n)) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 270 | |
| 271 | def test_rfc822_escape(self): |
| 272 | header = 'I am a\npoor\nlonesome\nheader\n' |
| 273 | res = rfc822_escape(header) |
| 274 | wanted = ('I am a%(8s)spoor%(8s)slonesome%(8s)s' |
| 275 | 'header%(8s)s') % {'8s': '\n'+8*' '} |
Ezio Melotti | b3aedd4 | 2010-11-20 19:04:17 +0000 | [diff] [blame] | 276 | self.assertEqual(res, wanted) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 277 | |
Tarek Ziadé | 04fe7c0 | 2009-10-25 23:08:47 +0000 | [diff] [blame] | 278 | def test_dont_write_bytecode(self): |
| 279 | # makes sure byte_compile raise a DistutilsError |
| 280 | # if sys.dont_write_bytecode is True |
| 281 | old_dont_write_bytecode = sys.dont_write_bytecode |
| 282 | sys.dont_write_bytecode = True |
| 283 | try: |
| 284 | self.assertRaises(DistutilsByteCompileError, byte_compile, []) |
| 285 | finally: |
| 286 | sys.dont_write_bytecode = old_dont_write_bytecode |
| 287 | |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 288 | def test_suite(): |
Tarek Ziadé | bbf1f18 | 2009-05-10 12:20:44 +0000 | [diff] [blame] | 289 | return unittest.makeSuite(UtilTestCase) |
Tarek Ziadé | 811d624 | 2009-02-13 22:26:15 +0000 | [diff] [blame] | 290 | |
| 291 | if __name__ == "__main__": |
Éric Araujo | 70ec44a | 2010-11-06 02:44:43 +0000 | [diff] [blame] | 292 | run_unittest(test_suite()) |