Changeset 210

Show
Ignore:
Timestamp:
06/10/08 15:57:12 (5 months ago)
Author:
edsuom
Message:

Added pybywire.flexarray, cleaned up repo

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • projects/Twisted-Goodies/trunk/twisted_goodies/pybywire/params.py

    r162 r210  
    2828from twisted.python.reflect import namedObject 
    2929import pack 
     30from flexarray import FlexArray 
    3031 
    3132 
     
    182183                        state['_packedNames'].append(name) 
    183184                        packer.append(value) 
     185                    elif isinstance(value, FlexArray): 
     186                        if '_flexArrays' not in state: 
     187                            state['_flexArrays'] = [] 
     188                        state['_flexArrays'].append(name, value.asTuple()) 
    184189                    else: 
    185190                        state[name] = value 
     
    199204            for k, value in enumerate(unpacker): 
    200205                object.__setattr__(self, packedNames[k], value) 
     206        if '_flexArrays' in state: 
     207            for name, x in state['_flexArrays']: 
     208                object.__setattr__(self, name, FlexArray.fromTuple(x)) 
    201209        self.__dict__.update(state) 
  • projects/Twisted-Goodies/trunk/twisted_goodies/pybywire/test/test_pack.py

    r114 r210  
    2525import scipy as s 
    2626 
    27 import mock, pack 
     27import util, pack 
    2828 
    2929 
    30 class Test_PackUnpack(mock.TestCase): 
     30class Test_PackUnpack(util.TestCase): 
    3131    def test_packFloat(self): 
    3232        for val in (s.pi, 0.0, 1.23E5, s.exp(0), 10, -1.7985E20): 
     
    8989 
    9090 
    91 class Test_packwrap(mock.TestCase): 
    92     class Thingy(mock.Mock): 
     91class Test_packwrap(util.TestCase): 
     92    class Thingy(util.Mock): 
    9393        def stupidMethod(self): 
    9494            return 10 
  • projects/Twisted-Goodies/trunk/twisted_goodies/pybywire/test/test_params.py

    r162 r210  
    2727from twisted.spread import pb 
    2828 
    29 import mock, params 
     29import util, params 
    3030 
    3131 
     
    6161 
    6262 
    63 class Test_Parameterized_Caching(mock.TestCase): 
     63class Test_Parameterized_Caching(util.TestCase): 
    6464    def setUp(self): 
    6565        self.ct = Thingy(a=1.0, b=2.0, c=3.0, d=4.0) 
     
    8888 
    8989 
    90 class Test_Parameterized_Local(mock.TestCase): 
     90class Test_Parameterized_Local(util.TestCase): 
    9191    def setUp(self): 
    9292        self.ct = Thingy(a=1.0, b=2.0, c=3.0, d=4.0) 
     
    9999            'a':1.0, 'b':2.0, 'c':3.0, 'd':4.0, 
    100100            'name':None, 'paramNames':self.ct.paramNames} 
    101         self.failUnlessElementsEqual(state.keys(), expectedState.keys()) 
    102         self.failUnlessElementsEqual(state.values(), expectedState.values()) 
     101        self.failUnlessEqual(state, expectedState) 
    103102     
    104103    def test_mixinMethod(self): 
     
    106105 
    107106 
    108 class Test_Parameterized_Remote(mock.TestCase): 
     107class Test_Parameterized_Remote(util.TestCase): 
    109108    class CopyableReturner(pb.Root): 
    110109        def __init__(self, copyable): 
  • projects/Twisted-Goodies/trunk/twisted_goodies/test/util.py

    r101 r210  
    158158        self.failUnlessEqual(*args) 
    159159 
     160    def failUnlessElementsEqual(self, *args, **kw): 
     161        args = list(args) 
     162        msg = kw.pop('msg', None) 
     163        for k, arg in enumerate(args): 
     164            if isinstance(arg, (list, tuple)): 
     165                arg = args[k] = s.array(arg) 
     166        for j, x in enumerate(args): 
     167            for k, y in enumerate(args): 
     168                if j == k: 
     169                    continue 
     170                if x.shape != y.shape: 
     171                    self.fail(msg=msg) 
     172                yr = y.ravel() 
     173                for m, xm in enumerate(x.ravel()): 
     174                    self.failUnlessEqual(yr[m], xm, msg=msg) 
     175 
    160176    def failUnlessArraysAlmostEqual(self, X, Y, places=15): 
    161177        import scipy as s