                ДЕФИНИРАНЕ НА ТЕСТОВИ СЛУЧАИ.


  Този документ дефинира възможните тест случаи. И дава описание
на реализираните тест случаи и как да се ползват.


  Работата с данни, които трябва да бъдат коректни означава, че
самите данни трябва да бъдат много стриктно проверени. Поради
тази причина се дефинират тестове, които проверят за коректност
на данните. Възможни тестови случаи:

1. Проверка на допустимите символи. Трябва да проверява дали в
различните секции се използват само набор от допустимите
символи:
 - Окончание за изваждане: 0 или български малки букви, ако има
клас квадратни скоби. Истинският филтър не подлежи на проверка.
 - Останалите окончания: 0, - или български малки букви, ако има
клас въпросителна с изключение на тип 145 където не всички
окончания се образуват по този начин. Ако има дублетни форми се
проверява също за запетайка.
 - Тестови случаи: - или български малки букви. Ако има дублетни
форми се проверя също за запетайка.
 - Думите трябва да съдържат само български малки букви. След
тип 194 включително първата буква трябва да е главна.

2. Проверка валидността на тестовите случаи. Целта на секцията
Тест във файловете е да дефинира тестови случаи. Чрез прилагане
на правилата за образуване на словоформи върху основната форма
трябва да се получат дадените словоформи. След първоначалното
изграждане на базата смисъла на тази проверка се губи. Но може
да се запази за в бъдеще ако има промяна на условията.

3. Проверка за броя на окончанията, дали отговарят на главния
файл с описанието.

4. Проверка за думите дали отговарят на филтъра.

5. Проверка на някой специфични условия като:
 - Основната форма дали съответства на първата форма. Има само
малък брой изключения на това правило.
 - Формите за 2л. ед.ч. и 3л. ед.ч. за минало време при
глаголите трябва да са еднакви за всички типове.
 - Образуването на кратък член, пълен член, множествено число и
пр. се образува горе долу по един и същи начин. Има малки
изключения от това правило разбира се.


  Всички описани случаи са реализирани. Като само случай 5
печата изключенията и под формата на грешки, които трябва да
бъдат проверени след това дали са наистина изключения или
грешки. Този скрипт не е включен в стандартната обща проверка.
Разбира се тази проверка не се налага да се пуска толкова често.
Неговото предназначение е да извърши проверка като се добавят
нови типове (файлове) или се модифицират основно съществуващите
типове.


  При добавяне на нови думи е достатъчно да пуснете тестове 1
и 4. При промяна на някой условия и добавяне на нови букви към
класа на някой тип, който съдържа клас трябва да се пуснат пак
същите тестове 1 и 4.


  За простота и улеснение е дефиниран скрипт, който стартира
първите четири теста. Най-добре е след добавяне на нови думи или
промени в структурата да се стартира този скрипт.
