Atualmente, acho que temos apenas duas opções:
- Definir o template com uma lista hard-coded e toda vez a lista será a mesma:
Fixture.of(Bean.class).addTemplate("hardcoded", new Rule() {{
add("myList", Arrays.asList(1L, 2L, 3L));
}});
- Criar uma AtomicFunction para gerar a lista, podendo ter valores/tamanhos diferentes a cada chamada, de acordo com as suas necessidades:
Fixture.of(Bean.class).addTemplate("dynamic", new Rule() {{
add("myList", new AtomicFunction() {
@Override
public List<Long> generateValue() {
List<Long> values = new ArrayList<Long>();
// lógica para geração dos números da lista
return values;
}
});
}});
Exemplifiquei com annonymous inner class pra dar a idéia geral. Externalizando, fica bem menos verbose e você pode reutilizar em outros lugares.