本文整理汇总了Python中fysom.Fysom.walk方法的典型用法代码示例。如果您正苦于以下问题:Python Fysom.walk方法的具体用法?Python Fysom.walk怎么用?Python Fysom.walk使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类fysom.Fysom
的用法示例。
在下文中一共展示了Fysom.walk方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_if_src_not_specified_then_is_wildcard
# 需要导入模块: from fysom import Fysom [as 别名]
# 或者: from fysom.Fysom import walk [as 别名]
def test_if_src_not_specified_then_is_wildcard(self):
fsm = Fysom({
'initial': 'hungry',
'events': [
{'name': 'eat', 'src': 'hungry', 'dst': 'satisfied'},
{'name': 'eat', 'src': 'satisfied', 'dst': 'full'},
{'name': 'eat', 'src': 'full', 'dst': 'sick'},
{'name': 'eat', 'src': 'sick', 'dst': '='},
{'name': 'rest', 'src': '*', 'dst': 'hungry'},
{'name': 'walk', 'src': '*', 'dst': '='},
{'name': 'run', 'src': ['hungry', 'sick'], 'dst': '='},
{'name': 'run', 'src': 'satisfied', 'dst': 'hungry'},
{'name': 'run', 'src': 'full', 'dst': 'satisfied'}
]
})
fsm.walk()
self.assertEqual(fsm.current, 'hungry')
fsm.run()
self.assertEqual(fsm.current, 'hungry')
fsm.eat()
self.assertEqual(fsm.current, 'satisfied')
fsm.walk()
self.assertEqual(fsm.current, 'satisfied')
fsm.run()
self.assertEqual(fsm.current, 'hungry')
fsm.eat()
self.assertEqual(fsm.current, 'satisfied')
fsm.eat()
self.assertEqual(fsm.current, 'full')
fsm.walk()
self.assertEqual(fsm.current, 'full')
fsm.eat()
self.assertEqual(fsm.current, 'sick')
fsm.walk()
self.assertEqual(fsm.current, 'sick')
fsm.run()
self.assertEqual(fsm.current, 'sick')
fsm.rest()
self.assertEqual(fsm.current, 'hungry')
fsm.eat()
self.assertEqual(fsm.current, 'satisfied')
fsm.run()
self.assertEqual(fsm.current, 'hungry')