EasyMock: имитируйте вызов конструктора в java

Я просмотрел похожие вопросы на этой доске, но ни один из них не ответил на мой вопрос. Звучит странно, но можно ли имитировать вызов конструктора над объектом, над которым вы насмехаетесь?

Пример:

class RealGuy {

   ....
   public void someMethod(Customer customer) {
     Customer customer = new Customer(145);
   }
}
class MyUnitTest() {
  public Customer customerMock = createMock(Customer.class)
  public void test1() {
    //i can inject the mock object, but it's still calling the constuctor
    realGuyobj.someMethod(customerMock);
    //the constructor call for constructor makes database connections, and such.
  }
}

Как я могу ожидать вызова конструктора? Я могу изменить вызов конструктора Customer на использование newInstance, но я не уверен, поможет ли это. Я не могу контролировать, что делает тело конструктора new Customer (145) .

Возможно ли это?

8
задан George Kagan 6 November 2016 в 19:16
поделиться