instead-unittest/README.md

1.8 KiB
Raw Blame History

Юниттесты для INSTEAD

Здесь я пытаюсь сделать юнит-тест простой игры. Чтобы его запустить, откройте папку unittest как игру в SDL-INSTEAD или tiny-instead.

Подробнее см. библиотеку lust

В реальной игре придётся сделать символьные ссылки на все lua-файлы в папке unittest, чтобы инстед мог их найти по тем же путям.

Тестовая игра содержит простой пазл "ключ-замок", но приближенный к реальным паззлам:

Несколько вариантов решений

К замку должно подходить два разных ключа двумя разными способами. (В идеале каждый из этих ключей должен использоваться ещё где-то, но это уже усложнение.)

Это же не даёт использовать свойство with_key.

Замок нельзя закрыть

Замок нельзя закрыть, после того как вы его открыли. Игрок не сможет случайно вернуть загадку после того, как её решил.

Единственный способ автотестов - это юнит-тест

Два пункта выше делают стандартный автоскрипт инстеда неприменимым: он может проверить только одно решение за раз и не сможет закрыть замок, чтобы попытаться по-другому. Нужно сооружать юнит-тесты.