summaryrefslogtreecommitdiff
path: root/scipy/weave/tests/test_ast_tools.py
blob: bddba5ed3d0740576902e9fcc67f98e9acc8db32 (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
import unittest
from scipy_base.numerix import *
# The following try/except so that non-SciPy users can still use blitz
from scipy_base.numeric import RandomArray
import time

from scipy_test.testing import *
set_package_path()
from weave import ast_tools
restore_path()

set_local_path()
from weave_test_utils import *
restore_path()

class test_harvest_variables(unittest.TestCase):
    """ Not much testing going on here, but 
        at least it is a flame test.
    """    
    def generic_test(self,expr,desired):
        import parser
        ast_list = parser.suite(expr).tolist()
        actual = ast_tools.harvest_variables(ast_list)
        print_assert_equal(expr,actual,desired)

    def check_simple_expr(self):
        """convert simple expr to blitz
           
           a[:1:2] = b[:1+i+2:]
        """
        expr = "a[:1:2] = b[:1+i+2:]"        
        desired = ['a','b','i']        
        self.generic_test(expr,desired)

if __name__ == "__main__":
    ScipyTest('weave.ast_tools').run()