def test_closed_invalid_events(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_INSERT) event_q.put(BUTTON_CONFIRM) event_q.put(CARD_REMOVE) event_q.put(BUTTON_CONFIRM) event_q.put(SWITCH_FLIP_ON) event_q.put(BUTTON_CONFIRM) event_q.put(SWITCH_FLIP_ON) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_CANCEL) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_MONEY) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_CHANGE_POD) event_q.put(BUTTON_CONFIRM) event_q.put(BUTTON_DISCHARGE_USER) event_q.put(BUTTON_CONFIRM) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.CLOSED print
def main(): event_q = queue.Queue() message_q = queue.Queue() print "Connecting to Database..." shop_user_db = shop_user_database.ShopUserDatabase() print "Setting up ID Logger..." thread_id_logger = id_logger.IdLogger(event_q) thread_id_logger.daemon = True thread_id_logger.start() print "Setting up IO Moderator..." thread_io_moderator = io_moderator.IoModerator(event_q, message_q) thread_io_moderator.daemon = True thread_io_moderator.start() print "Setting up FSM..." board = fsm.BoardFsm(event_q, message_q, shop_user_db) print "Starting webserver..." server = LiveSite(board._shop) server.daemon = True server.start() print "Running FSM" board.run_fsm() print "Board shutting down"
def test_signin_signout_separate(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_CERTIFIED) event_q.put(CARD_INSERT) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_CERTIFIED) event_q.put(CARD_INSERT_OTHER) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_REMOVE) event_q.put(BUTTON_DISCHARGE_USER) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_REMOVE_OTHER) event_q.put(BUTTON_DISCHARGE_USER) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.STANDBY print
def test_open_shop(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.STANDBY print
def test_cancel_opening(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(BUTTON_CANCEL) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.CLOSED print
def test_unlock_try_add_pod_to_machine(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_POD) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.UNLOCKED print
def test_unlock_change_pod(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(BUTTON_CHANGE_POD) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.CHANGING_POD print
def test_unlock_remove(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_REMOVE) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.REMOVING_USER print
def test_clearing_debt_valid_swipe(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(BUTTON_MONEY) event_q.put(CARD_SWIPE_CERTIFIED) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.STANDBY print
def test_unlock_add_user_swipe(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_PROCTOR) event_q.put(CARD_SWIPE_CERTIFIED) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.ADDING_USERS print
def test_unlock_add_two_users_cancel(self): event_q = queue.Queue() message_q = queue.Queue() shop_user_db = shop_user_database.ShopUserDatabaseTesting() board = fsm.BoardFsm(event_q, message_q, shop_user_db) event_q.put(CARD_SWIPE_POD) event_q.put(SWITCH_FLIP_ON) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_POD) event_q.put(CARD_SWIPE_CERTIFIED) event_q.put(BUTTON_CANCEL) event_q.put(TERMINATE_PROGRAM) print "\n" end_state = board.run_fsm() assert end_state == fsm.STANDBY print
def __init__(self): self._event_q = queue.Queue() self._message_q = queue.Queue() self._shop_user_db = shop_user_database.ShopUserDatabaseTesting() self._board = fsm.BoardFsm(self._event_q, self._message_q, self._shop_user_db)