#!/bin/bash
MAVKA="$1"
if [ -z "$MAVKA" ]; then
echo "Usage: $0 <path_to_mavka_executable>"
exit 1
fi
# Визначення кольорів
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m' # No Color
run_test() {
test_file="$1"
# Виводимо назву тесту без переносу рядка
echo -n "$test_file: "
# Запускаємо тест і захоплюємо як стандартний вивід (stdout), так і помилки (stderr)
output=$($MAVKA "$test_file" 2>&1)
status=$?
if [ $status -eq 0 ]; then
echo -e "${GREEN}УСПІХ${NC}"
else
echo -e "${RED}НЕВДАЧА${NC}"
# Виводимо збережений текст помилки з невеликим відступом
echo -e "-------------------------"
echo "$output"
echo -e "-------------------------\n"
fi
}
run_test тестування/Число/більше_цілого.м
run_test тестування/Число/віднімання_цілого.м
run_test тестування/Число/двійкове_або_цілого.м
run_test тестування/Число/двійкове_вабо_цілого.м
run_test тестування/Число/двійкове_і_цілого.м
run_test тестування/Число/двійкове_не_цілого.м
run_test тестування/Число/ділення_цілого.м
run_test тестування/Число/додавання_цілого.м
run_test тестування/Число/змінити_знак_цілого.м
run_test тестування/Число/зсув_вліво_цілого.м
run_test тестування/Число/зсув_вправо_цілого.м
run_test тестування/Число/менше_цілого.м
run_test тестування/Число/множення_цілого.м
run_test тестування/Число/не_більше_цілого.м
run_test тестування/Число/не_менше_цілого.м
run_test тестування/Число/остача_цілого.м
run_test тестування/Число/степінь_цілого.м
run_test тестування/Число/більше_рухомого.м
run_test тестування/Число/віднімання_рухомого.м
run_test тестування/Число/ділення_рухомого.м
run_test тестування/Число/додавання_рухомого.м
run_test тестування/Число/змінити_знак_рухомого.м
run_test тестування/Число/менше_рухомого.м
run_test тестування/Число/множення_рухомого.м
run_test тестування/Число/не_більше_рухомого.м
run_test тестування/Число/не_менше_рухомого.м
run_test тестування/Число/остача_рухомого.м
run_test тестування/Число/степінь_рухомого.м
echo ""
run_test тестування/Дані/Дані.м
run_test тестування/Дані/виділити.м
run_test тестування/Дані/обнулено.м
run_test тестування/Дані/з_тексту.м
run_test тестування/Дані/з_послідовності.м
run_test тестування/Дані/зі_списку.м
run_test тестування/Дані/з_даних.м
run_test тестування/Дані/чародія_перебір.м
echo ""
run_test тестування/Послідовність/Послідовність.м
run_test тестування/Послідовність/з_тексту.м
run_test тестування/Послідовність/з_послідовності.м
run_test тестування/Послідовність/зі_списку.м
run_test тестування/Послідовність/з_даних.м
run_test тестування/Послідовність/чародія_перебір.м
echo ""
run_test тестування/Список/Список.м
run_test тестування/Список/з_тексту.м
run_test тестування/Список/з_послідовності.м
run_test тестування/Список/зі_списку.м
run_test тестування/Список/з_даних.м
run_test тестування/Список/чародія_перебір.м
run_test тестування/Список/додати.м
run_test тестування/Список/забрати.м
run_test тестування/Список/позиція.м
run_test тестування/Список/знайти.м
run_test тестування/Список/знайти_позицію.м
run_test тестування/Список/відібрати.м
run_test тестування/Список/перетворити.м
run_test тестування/Список/обернути.м
run_test тестування/Список/містить.м
run_test тестування/Список/змінити_елемент.м
echo ""
run_test тестування/ПроміжокЧисел/ПроміжокЧисел.м
echo ""
run_test тестування/Текст/Текст.м
echo ""
run_test тестування/Словник/Словник.м
echo ""
run_test тестування/Дія/Дія.м
run_test тестування/Дія/назва.м
run_test тестування/Дія/створити_вручну.м
run_test тестування/Дія/позиційні.м
run_test тестування/Дія/іменовані.м
run_test тестування/Дія/позиційні_іменовані.м
echo ""
run_test тестування/Клас/Клас.м
run_test тестування/Клас/назва.м
run_test тестування/Клас/створити_вручну.м
run_test тестування/Клас/лише_ознаки.м
run_test тестування/Клас/чародія.м
run_test тестування/Клас/ознаки_і_чародія.м
run_test тестування/Клас/метод.м
run_test тестування/Клас/метод1.м
echo ""
run_test тестування/Код/Код.м
run_test тестування/Код/створити_вручну.м
echo ""
run_test тестування/Модуль/Модуль.м
run_test тестування/Модуль/отримати_назву.м
run_test тестування/Модуль/створити_вручну.м
run_test тестування/Модуль/дати1.м
echo ""
run_test тестування/Параметр/Параметр.м
run_test тестування/Параметр/створити_вручну.м
echo ""
run_test тестування/Ознака/Ознака.м
run_test тестування/Ознака/створити_вручну.м
echo ""
run_test тестування/ПеребірДаних/ПеребірДаних.м
run_test тестування/ПеребірДаних/створити_вручну.м
echo ""
run_test тестування/ПеребірПослідовності/ПеребірПослідовності.м
run_test тестування/ПеребірПослідовності/створити_вручну.м
echo ""
run_test тестування/ПеребірПроміжкаЧисел/ПеребірПроміжкаЧисел.м
run_test тестування/ПеребірПроміжкаЧисел/створити_вручну.м
echo ""
run_test тестування/ПеребірСловника/ПеребірСловника.м
run_test тестування/ПеребірСловника/створити_вручну.м
echo ""
run_test тестування/ПеребірСписку/ПеребірСписку.м
run_test тестування/ПеребірСписку/створити_вручну.м
echo ""
run_test тестування/ПеребірТексту/ПеребірТексту.м
run_test тестування/ПеребірТексту/створити_вручну.м
echo ""
run_test тестування/біб/система/записати_прочитати.м