Я довольно много использовал Spock, и мне очень нравится возможность использовать таблицы в тестах для сценариев ввода/вывода.
пример из документации Спока:
class Math extends Specification {
def "maximum of two numbers"(int a, int b, int c) {
expect:
Math.max(a, b) == c
where:
a | b | c
1 | 3 | 3
7 | 4 | 4
0 | 0 | 0
}
}
Я работаю в финансовой сфере, где мы имеем дело с большим количеством торговых «книг».
Было бы здорово представить эти книги в табличной форме.
Поэтому вместо использования строителей, например:
builder.addQuote( 1000000, 1.1220, 1.2230)
.addQuote( 2000000, 1.1219, 1.2233)
.addQuote(10000000, 1.1217, 1.2234)
.addQuote(15000000, 1.1216, 1.2240)
Было бы здорово использовать какую-то таблицу:
List<Quote> quotes = new ArrayList<Quote>();
MyUtil.insertInto(quotes).fromTable{
quantity | bid | ask
1000000 | 1.1220 | 1.2230
2000000 | 1.1219 | 1.2233
10000000 | 1.1217 | 1.2234
15000000 | 1.1216 | 1.2240
}
Видели, как кто-то делал это здесь, но в примере результаты присваиваются общему объекту «Строка».
Было бы здорово иметь утилиту, которая записывает значения строк в заданный объект домена, используя имена полей из первой строки.