Я не мог заставить его работать. Вроде метод не издевается.
Существуют ли альтернативные фреймворки для тестирования Groovy, которые лучше работают для имитации статических методов Java?
Обновление от 02 марта 2011 г.: добавлен код:
На самом деле я пытаюсь издеваться над классом Scala XML.loadXml (я пробую Groovy для модульного тестирования):
Это мой тестовый пример:
// ContentManagementGatewayTest.groovy
class ContentManagementGatewayTest extends GMockTestCase
{
void testGetFileList()
{
// Preparing mocks code will go here, see below
play {
GetFileGateway gateway = new GetFileGateway();
gateway.getData();
}
}
}
// GetFileGateway.scala
class GetFileGateway {
def getData()
{
// ...
val xmlData = XML.loadData("file1.txt");
}
}
Я пробовал тестировать, используя как gmock, так и метакласс:
// metaClass:
XML.metaClass.'static'.loadFile = {file ->
return "test"
}
// gmock:
def xmlMock = mock(XML)
xmlMock.static.loadFile().returns(stream.getText())