[Subversion] / Trellis / test_trellis.py  

Diff of /Trellis/test_trellis.py

Parent Directory | Revision Log

version 2595, Mon Nov 3 23:22:37 2008 UTC version 2599, Sun Feb 22 04:20:24 2009 UTC
Line 982 
Line 982 
   
   
   
       def testSetAfterSchedule(self):
           def A():
               B.value
               C.value
   
           A = trellis.Cell(A, None)
   
           d(trellis.Cell)
           def B():
               A.value = C.value
   
           C = trellis.Value()
   
           A.value
           C.value = 1
   
     def run_modifier_and_rule(self, func, rule):      def run_modifier_and_rule(self, func, rule):
         d(self.ctrl.atomically)          d(self.ctrl.atomically)
         def go():          def go():
Line 1007 
Line 1023 
   
   
   
       def _testNonterminatingXXX(self):
   
           class InfiniteLoop(trellis.Component):
               trellis.attrs(v1=False, v2=False)
   
               trellis.maintain()
               def a(self):
                   #print 'A'
                   if self.v1:
                       self.v2
                       return True
   
               trellis.maintain()
               def b(self):
                   #print 'B'
                   if self.v1:
                       self.a
                       self.v2 = True
   
           comp = InfiniteLoop()
           comp.v1 = True
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
       def _testFalseCircularityXXX(self):
   
           class FalseCircularity(trellis.Component):
               trellis.attrs(v1=False, v2=False)
   
               trellis.maintain()
               def a(self):
                   if self.v1:
                       self.v2
                       return True
   
               trellis.maintain()
               def b(self):
                   if self.v1:
                       self.v2 = True
                   else:
                       self.a
   
           comp = FalseCircularity()
           comp.v1 = True
   
           # there's no actual circularity, but the correct order can't be found
   
   
   
Line 1023 
Line 1101 
   
   
   
   
   
   
   
       def testSensorRollback(self):
           connector = trellis.Connector(
               connect=lambda sensor:None, disconnect=lambda sensor, key: None
           )
   
           sensor = trellis.Cell(connector)
   
           class SensorInitUndoTest(trellis.Component):
               trellis.attrs(v1=False)
   
               trellis.maintain()
               def a(self):
                   if self.v1:
                       return _Comp()
   
               trellis.maintain()
               def b(self):
                   if self.v1:
                       self.a
   
           class _Comp(trellis.Component):
               trellis.maintain()
               def c(self):
                   sensor.value
   
           comp = SensorInitUndoTest()
           comp.__cells__['a'].layer =  comp.__cells__['b'].layer + 1
           comp.v1 = True
           self.failUnless(sensor.next_listener() is comp.a.__cells__['c'])
           self.failUnless(sensor.listening is not trellis.NOT_GIVEN)
   
   
   
   
   
   
   
   
   
   
   
     def testSetShouldOverrideInitialCalculatedValue(self):      def testSetShouldOverrideInitialCalculatedValue(self):
         class C(trellis.Component):          class C(trellis.Component):
             trellis.maintain(optional=True)              trellis.maintain(optional=True)
Line 1474 
Line 1597 
   
   
   
   class SortedSetTestCase(unittest.TestCase):
   
       def testUnicodeSort(self):
           data = trellis.Set([1, 2])
           sorted_set = collections.SortedSet(
               data=data, sort_key=unicode, reverse=True
           )
   
           self.failUnlessEqual(list(sorted_set), [2, 1])
           data.add(0)
           self.failUnlessEqual(list(sorted_set), [2, 1, 0])
   
       def testStrSort(self):
           data = trellis.Set([1, 3, 4])
           sorted_set = collections.SortedSet(data=data, sort_key=str)
   
           self.failUnlessEqual(list(sorted_set), [1, 3, 4])
           data.add(2)
           self.failUnlessEqual(list(sorted_set), [1, 2, 3, 4])
   
       def testRemoveLast(self):
           data = trellis.Set([1, 2])
           sorted_set = collections.SortedSet(data=data)
           data.remove(2)
           self.failUnlessEqual(list(sorted_set), [1])
   
       def testAddToEnd(self):
           data = trellis.Set([1])
           sorted_set = collections.SortedSet(data=data)
           data.add(2)
           self.failUnlessEqual(list(sorted_set), [1, 2])
   
   
   
   
   
   
   
   
   
   
 def additional_tests():  def additional_tests():
     import doctest, sys      import doctest, sys
     files = [      files = [


Generate output suitable for use with a patch program
Legend:
Removed from v.2595  
changed lines
  Added in v.2599

cvs-admin@eby-sarna.com

Powered by ViewCVS 1.0-dev

ViewCVS and CVS Help