blob: 9c43c5a4c799c2d18da721486d132e5b151bdb66 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# still needed
# tests for MingW32Compiler
# don't know how to test gcc_exists() and msvc_exists()...
import unittest
import os, sys, tempfile
from scipy_test.testing import *
set_package_path()
from weave import build_tools
restore_path()
def is_writable(val):
return os.access(val,os.W_OK)
class test_configure_build_dir(unittest.TestCase):
def check_default(self):
" default behavior is to return current directory "
d = build_tools.configure_build_dir()
if is_writable('.'):
assert(d == os.path.abspath('.'))
assert(is_writable(d))
def check_curdir(self):
" make sure it handles relative values. "
d = build_tools.configure_build_dir('.')
if is_writable('.'):
assert(d == os.path.abspath('.'))
assert(is_writable(d))
def check_pardir(self):
" make sure it handles relative values "
d = build_tools.configure_build_dir('..')
if is_writable('..'):
assert(d == os.path.abspath('..'))
assert(is_writable(d))
def check_bad_path(self):
" bad path should return same as default (and warn) "
d = build_tools.configure_build_dir('_bad_path_')
d2 = build_tools.configure_build_dir()
assert(d == d2)
assert(is_writable(d))
class test_configure_temp_dir(test_configure_build_dir):
def check_default(self):
" default behavior returns tempdir"
# this'll fail if the temp directory isn't writable.
d = build_tools.configure_temp_dir()
assert(d == tempfile.gettempdir())
assert(is_writable(d))
class test_configure_sys_argv(unittest.TestCase):
def check_simple(self):
build_dir = 'build_dir'
temp_dir = 'temp_dir'
compiler = 'compiler'
pre_argv = sys.argv[:]
build_tools.configure_sys_argv(compiler,temp_dir,build_dir)
argv = sys.argv[:]
bd = argv[argv.index('--build-lib')+1]
assert(bd == build_dir)
td = argv[argv.index('--build-temp')+1]
assert(td == temp_dir)
argv.index('--compiler='+compiler)
build_tools.restore_sys_argv()
assert(pre_argv == sys.argv[:])
if __name__ == "__main__":
ScipyTest('weave.build_tools').run()
|