Javax.Persistence.Tuple, как издеваться над данными - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть метод репозитория, который возвращает List, который под капотом использует CriteriaQueryTupleTransformer.TupleImpl.В тестах я хочу смоделировать Repository, а в Repository.method вернуть предопределенные смоделированные данные.

Примерно так:

MyRepository myRepository = mock(MyRepository.class);
List<Tuple> = new ArrayList<>();
Tuple tuple = TupleImpl.Builder() //TupleImpl is private class and has no Factory or Builders
            //.addMockedData()
            //.addMockedData()
            .build();

tuples.add(tuple);
//add more mocked data

when(myRepository.findByIds(any())).thenReturn(tuples);

//Assert business logic that everything 
//went as expected when a specific Tuple structure was returned by repo

Моя главная проблема заключается в том, что мне нужно создать экземпляр CriteriaQueryTupleTransformer.TupleImpl, которыйкакой-то закрытый класс, и я не смог найти методы Builders или Factory для простого создания.

...