Обычно указанная система (SUS) - это код, который вы указываете, а не данные.
Тогда основные различия между SUS и обычными примерами / подпримерами в specs заключаются в том, что SUS имеет несколько дополнительных методов для установки контекста, таких как -> - метод .
Что бы я на самом деле предложил в вашем случае, если данные фактически одинаковы для каждого алгоритма, это просто определить метод для создания ваших примеров:
def examplesMustPassFor(algo: Algorithm) = {
"The algo "+algo.name should {
"pass the data set 1" in { ... }
"pass the data set 2" in { ... }
"pass the data set 3" in { ... }
}
}
examplesMustPassFor(algo1)
examplesMustPassFor(algo2)
examplesMustPassFor(algo3)
Еще один важный момент, который я хочу упомянуть, заключается в том, что specs проект был заменен specs2 , поэтому вы можете проверить это, если только начинаете писать свои спецификации.
Конечно, не стесняйтесь задавать более конкретные вопросы с кодомобразцы в списке рассылки , если хотите.
Эрик.