Учитывая объем service
, предполагая, что тест находится в том же пакете, вы можете сделать следующее.
public class UtilTest {
@Test
public void formatData() {
DbService service = mock(DbService.class);
Data expected = new Data();
expect(service.getData()).andReturn(expected);
replay(service);
Util.service = service;
assertSame(expected, Util.formatData());
verify(service);
}
}
Если по какой-то причине тест не находится в том же пакете, просто заменить Util.service = service;
на
Field field = Util.class.getDeclaredField("service");
field.setAccessible(true);
field.set(null, service);