Блок дистанционного управления не назначает переменные - PullRequest
0 голосов
/ 12 ноября 2018

Я пишу функциональные тесты со Spock и Geb в Grails 2.5.6 с помощью плагина дистанционного управления.

У меня есть что-то вроде этого в блоке when:

String someString
remote {
    someString = SomeDomain.findByName("Some Name").someValue
}

В следующем блоке then someString равно null.При попытке отладить проблему, точка останова в блоке remote не достигнута.

Что я делаю не так?

1 Ответ

0 голосов
/ 12 ноября 2018

В связи с тем, что remote-control выполняет заданное замыкание, присвоение локальной переменной не выполняется.

Сделайте это вместо:

String someString = remote {
    return SomeDomain.findByName("Some Name").someValue
}

Имейте в виду, что там выполняется сериализация, так что это не будет работать для каждого типа.

...