Changeset 4919

Show
Ignore:
Timestamp:
06/23/09 02:52:17 (4 years ago)
Author:
getxsick
Message:

auto attr for fields is unset if field value is changed manually

Location:
branch/UMPA
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • branch/UMPA/tests/unit/test_protocols/test__fields.py

    r4916 r4919  
    8888        py.test.raises(UMPAAttributeException, f.set, 10) 
    8989 
     90        # __________________ 
     91        # auto 
     92        f = self.cls_field('foobar', bits=4, auto=True) 
     93        assert f.auto is True 
     94        f.set(10) 
     95        assert f.auto is False 
     96 
    9097    def test_clear(self): 
    9198        f = self.cls_field('foobar', 10, 8) 
     
    152159        assert f.get() == 10 
    153160        assert f.get(True) == 'bar' 
     161 
     162        # __________________ 
     163        # auto 
     164        f = self.cls_field('foobar', bits=4, auto=True) 
     165        assert f.auto is True 
     166        f.set(10) 
     167        assert f.auto is False 
    154168 
    155169class TestAddrField(TestField): 
  • branch/UMPA/umpa/protocols/_fields.py

    r4916 r4919  
    119119 
    120120        The new value is validing before assigment. 
     121        'auto' parameter is unset. 
    121122 
    122123        @param value: new value for the field. 
     
    127128        else: 
    128129            raise UMPAAttributeException(str(value) + ' is not allowed') 
     130 
     131        if self.auto: 
     132            self.auto = False 
    129133 
    130134    def clear(self):