Чтобы решить вашу непосредственную проблему, вы можете взглянуть на Pex , который представляет собой инструмент от Microsoft Research, который решает эту проблему, находя все соответствующие граничные значения, чтобы все пути кода могли быть казненным.
Тем не менее, если бы вы использовали Test-Driven Development (TDD), вы бы никогда не оказались в такой ситуации, поскольку было бы почти невозможно написать модульные тесты, которые управляют этим видом API.
Метод, подобный тому, который вы описываете, звучит так, будто он пытается сделать слишком много вещей одновременно. Одним из ключевых преимуществ TDD является то, что он заставляет вас реализовывать свой код из небольших компонуемых объектов вместо больших классов с негибкими интерфейсами.