add test state machine