帮助奥林匹亚游戏的python代码
olyp的Python项目详细描述
olypy是一个与史诗级幻想策略游戏相关的代码集合。 奥林匹亚,目前居住在SVN(讨厌的)的
https://sourceforge.net/projects/olympiag3/
olypy支架:
- 生成用于测试奥林匹亚代码的游戏数据库
- 奥林匹亚代码的实际端到端测试
- 从玩家回合输出生成游戏数据库以支持 玩家模拟
安装
使用pyenv或您喜欢的等效软件安装python 3.5或更高版本。
克隆回购协议。
安装依赖的python模块,并查看olypy是否通过测试:
python -m pip install -r requirements.txt make test
生成质量保证数据库
make defaultlib
运行奥林匹亚测试
你需要一个编译好的支持'assert'的olympia二进制文件 命令。
cd sim; python run-tests.py
测试是yaml文件。下面是一个示例:
description: test move-related things lib: defaultlib aa1 orders: | unit 1102 # A2 in Aachen [c18] # test movement delays claim 10 20 assert item 10 20 not item 10 21 # exactly 20 move out # 2 days assert day 3 not day 4 drop 10 1 move c18 assert day 4 not day 5
本例包含3个测试。assert类似于wait;它 如果等待时间为0,则通过,否则失败。那foo not foo 语法是表达精确值的一种方法。