Насмешка объекта в Scala с помощью PowerMock - PullRequest
0 голосов
/ 13 ноября 2018

Я пытаюсь провести юнит-тестирование одним из моих методов.Внутри этого метода есть строка:

val dynamicFrame = DynamicFrame(dataFrame, glueContext)

Проблема в том, что DynamicFrame - это объект:

object DynamicFrame {
   ... methods()
}

, и я пытаюсь использовать PowerMock для насмешки вызоваDynamicFrame(dataFrame, glueContext).Я знаю, что PowerMock может издеваться над классами , но как я могу издеваться над объектом?Я видел подобные вопросы здесь и здесь , но это не кажется простым.

В моем тестовом коде я пробовал

PowerMockito.whenNew(classOf[DynamicFrame])
  .withAnyArguments().thenReturn(mockDynamicFrame)

, но я получаю NullPointerException в строке, где создается DynamicFrame.Я предполагаю, что это потому, что я использовал синтаксис для насмешливых классов, но DynamicFrame - это объект.

Поддерживает ли PowerMock (от Mockito) эту функцию вне шлюза?Если нет, то как мне сделать мой тест успешным?

...