Установить свойство для макета объекта jmock - PullRequest
1 голос
/ 29 сентября 2010

Возможно ли придание значения макету объекта.Пример:

myMockObject = context.mock(MyObject.class);

myMockObject.setId("someId");

Мой метод, который я тестирую, подходит к концу, но в конце есть метод для проверки этого объекта, поэтому объект без идентификатора считается недействительным.Что еще я могу с этим поделать?

Могу ли я как-то указать, нормально, я ожидаю это исключение, но все равно пройду тест?

Я нашел эту ссылку, но не смог найтирешение:

http://www.jmock.org/yoga.html

Я ожидаю, что регистратор сгенерирует исключительную ситуацию со строкой сообщения, кто-нибудь сталкивался с этим раньше?

Я пробовал это:

context.checking(new Expectations() {
            {

allowing(logger).error(with(exceptionMessage));

    }
        });

Примечание Сообщение исключенияMessage генерируется методом проверки, который проверяет объект в конце метода, который я тестирую.

Ответы [ 2 ]

2 голосов
/ 01 октября 2010

Это был ответ, который я искал:

http://www.jmock.org/throwing.html

1 голос
/ 29 сентября 2010

Вам нужно добавить Ожидание, которое заставит метод mock вернуть ожидаемое вами значение:

allowing (myMockObject).getId(); will(returnValue("someId"));

Это приведет к тому, что getId вернет ожидаемое вами значение, и поскольку оно использует разрешенный счетчик вызововэто не приведет к провалу теста, если он не вызван.

...