olypy is a collection of code related to the epic fantasy strategy game Olympia, which currently lives in SVN (yuck) at
https://sourceforge.net/projects/olympiag3/
olypy supports:
Generating a game database for testing the Olympia code
Actual end-to-end tests of the Olympia code
Generating a game database from player turn output to support simulations for players
Installing
Install python 3.5 or better, using pyenv or your favorite equivalent.
Clone the repo.
Install dependent python modules, and see if olypy passes tests:
python -m pip install -r requirements.txt make test
Generating the QA database
make defaultlib
Running Olympia tests
You need a compiled Olympia binary with support for the ‘assert’ command.
cd sim; python run-tests.py
Tests are YAML files. Here’s an example:
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
This example contains 3 tests. assert is similar to wait; it passes if the wait is 0-time, and fails elsewise. The foo not foo syntax is a way of expressing exact values.
Metadata
Release files for olypy 0.9.30
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| olypy-0.9.30-py3-none-any.whl | Python 3 | none | any | Details |
Release files / olypy-0.9.30-py3-none-any.whl
| Download URL | olypy-0.9.30-py3-none-any.whl |
|---|---|
| Size | 260.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d31f4ee65fa0ca134f9349fad3fcc8975232f3a8456500549bb905468b966160
|
|
BLAKE2b-256 checksum How to use checksums |
c751620bb111af1394bbdd5ef8af1cb54a3b964e4b402083b02c69fa924d913d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |