def __init__(self, left_button=None, left_led=None, right_button=None, right_led=None, track=None, strawberry_factory=None, chocolate_factory=None): self.buttons_locked = False self.micro_lock = threading.Lock() self.pending_cookies = Queue.Queue() self.left_button = left_button self.left_button.register(self.button_pressed) self.left_led = left_led self.left_led.off() self.right_button = right_button self.right_button.register(self.button_pressed) self.right_led = right_led self.right_led.off() self.track = track self.strawberry_factory = strawberry_factory self.chocolate_factory = chocolate_factory self.evolution = Evolution() self._fsm = Fysom(initial='waiting', events=[('reproduce', 'waiting', 'waiting')], callbacks=[('on_state_waiting', self._unlock), ('onreproduce', self._reproduce)])
def run_simulation(): logformat = "%(asctime)s %(levelname)s [%(name)s][%(threadName)s] %(message)s" logging.basicConfig(format=logformat, level=logging.DEBUG) evolution = Evolution() while (True): time.sleep(20) anc = random.choice(evolution.ancestors) evolution.next(anc.last())
def setup_method(self, method): self.evolution = Evolution()