> -- Александр Ильин писал(а):
> Что касается тестирования, то надёжнее всего будет сделать интерфейс для имитации сбоев. Например, флажок завести какой-то, который будет приводить к облому выделения памяти. Никто не запрещает ориентироваться на тестирование и официально его поддерживать на уровне интерфейса модуля.
С интерфейсом идея интересная. Пока для себя решил сделать модуль UnitTest, который будет иметь функции IsCondition, SetCondition, ResetConditions.
В коде программы можно будет писать так:
## Код:
```
NEW(pointer);
(* Первый параметр, имя модуля и функции, а второй параметр, порядковый номер NEW в функции. *)
IF UnitTest.IsCondition("ModuleName.FunctionName", 1) THEN
  pointer := NIL;
END;
```


Затем в самом тесте предварительно можно будет устанавливать условия, которые должны сработать:
## Код:
```
UnitTest.SetCondition("ModuleName.FunctionName", 1);
```
