| 11 | |
| 12 | |
| 13 | class aDriver(Driver): |
| 14 | |
| 15 | def __init__(self, slow=False, *args, **kwargs): |
| 16 | super().__init__() |
| 17 | self.slow = slow |
| 18 | self._eggs = None |
| 19 | self._ham = None |
| 20 | |
| 21 | @Feat() |
| 22 | def eggs(self): |
| 23 | if self.slow: |
| 24 | sleep(SLEEP) |
| 25 | return self._eggs |
| 26 | |
| 27 | @eggs.setter |
| 28 | def eggs(self, value): |
| 29 | if self.slow: |
| 30 | sleep(SLEEP) |
| 31 | self._eggs = value |
| 32 | |
| 33 | @Feat() |
| 34 | def ham(self): |
| 35 | if self.slow: |
| 36 | sleep(SLEEP) |
| 37 | return self._ham |
| 38 | |
| 39 | @ham.setter |
| 40 | def ham(self, value): |
| 41 | if self.slow: |
| 42 | sleep(SLEEP) |
| 43 | self._ham = value |
| 44 | |
| 45 | @Action() |
| 46 | def run(self): |
| 47 | return 42 |
| 48 | |
| 49 | @Action() |
| 50 | def run2(self, value): |
| 51 | return 42 * value |
| 52 | |
| 53 | @Action() |
| 54 | def run3(self, value): |
| 55 | return 42 * value |
| 56 | |
| 57 | @Action(units='ms') |
| 58 | def run4(self, value): |
| 59 | return value |
| 60 | |
| 61 | |
| 62 | class DriverTest(unittest.TestCase): |
no outgoing calls