]> granicus.if.org Git - python/commitdiff
added a test for finalize_options
authorTarek Ziadé <ziade.tarek@gmail.com>
Sun, 12 Apr 2009 16:45:32 +0000 (16:45 +0000)
committerTarek Ziadé <ziade.tarek@gmail.com>
Sun, 12 Apr 2009 16:45:32 +0000 (16:45 +0000)
Lib/distutils/command/config.py
Lib/distutils/tests/test_config_cmd.py

index 43a8dc843936c58c7b4540d57a92c8cf2ac797dc..f2ebe37dc9074bea9dee26cbd6c424ead816d83a 100644 (file)
@@ -12,7 +12,7 @@ this header file lives".
 __revision__ = "$Id$"
 
 import sys, os, string, re
-from types import *
+
 from distutils.core import Command
 from distutils.errors import DistutilsExecError
 from distutils.sysconfig import customize_compiler
@@ -68,19 +68,18 @@ class config(Command):
     def finalize_options(self):
         if self.include_dirs is None:
             self.include_dirs = self.distribution.include_dirs or []
-        elif type(self.include_dirs) is StringType:
-            self.include_dirs = string.split(self.include_dirs, os.pathsep)
+        elif isinstance(self.include_dirs, str):
+            self.include_dirs = self.include_dirs.split(os.pathsep)
 
         if self.libraries is None:
             self.libraries = []
-        elif type(self.libraries) is StringType:
+        elif isinstance(self.libraries, str):
             self.libraries = [self.libraries]
 
         if self.library_dirs is None:
             self.library_dirs = []
-        elif type(self.library_dirs) is StringType:
-            self.library_dirs = string.split(self.library_dirs, os.pathsep)
-
+        elif isinstance(self.library_dirs, str):
+            self.library_dirs = self.library_dirs.split(os.pathsep)
 
     def run (self):
         pass
index af16d4c8219ed820a69e1f45d32f430218bc7e11..45d480ba5aadff3e13330d83e463e259b7603733 100644 (file)
@@ -46,6 +46,21 @@ class ConfigTestCase(support.LoggingSilencer,
         match = cmd.search_cpp(pattern='command', body='// xxx')
         self.assertEquals(match, 1)
 
+    def test_finalize_options(self):
+        # finalize_options does a bit of transformation
+        # on options
+        pkg_dir, dist = self.create_dist()
+        cmd = config(dist)
+        cmd.include_dirs = 'one%stwo' % os.pathsep
+        cmd.libraries = 'one'
+        cmd.library_dirs = 'three%sfour' % os.pathsep
+        cmd.ensure_finalized()
+
+        self.assertEquals(cmd.include_dirs, ['one', 'two'])
+        self.assertEquals(cmd.libraries, ['one'])
+        self.assertEquals(cmd.library_dirs, ['three', 'four'])
+
+
 def test_suite():
     return unittest.makeSuite(ConfigTestCase)