You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Alexander Yakovlev 871a03c27f
note
2 years ago
morph initial commit 2 years ago
parser initial commit 2 years ago
unittest однообразие 2 years ago
.gitignore unit testing 2 years ago
README.md note 2 years ago
main3.lua readme и проверка склонений 2 years ago

README.md

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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

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

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

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

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

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

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

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

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

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

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

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