Различное поведение grails mockDomain () при запуске в тесте и во всех тестах - PullRequest
0 голосов
/ 25 октября 2011

Я использую два mockDomain в модульном тесте.Когда я запускаю только один UT (используя Grails test-app -unit MyTest), тест проходит нормально, но если я запускаю весь набор тестов (grails test-app -unit), тесты, в которых у меня есть два определенных mockDomain, не пройдены.

Есть ли разница в способах выполнения тестов при запуске по одному или при запуске всего пакета?

мой пример кода:

void testSaveTranslation_ok() {

    mockDomain(Translation)
    mockDomain(HelpSubject, [new HelpSubject(name_fr: "subject")])

    assertEquals(1, HelpSubject.count())
    HelpSubject helpSubject = HelpSubject.findAll().get(0)
    assertNull(helpSubject.name)

    def translation = new Translation(defaultVal:"defaultVal", enVal: "enVal", frVal: "frVal", meta: "helpSubject#name#${helpSubject.id}")
    assertEquals(0, Translation.count())

    translationService.saveTranslation(translation)
    assertEquals(1, Translation.count())

    assertNotNull(helpSubject.name)
}

С уважением,

Дэвид.

1 Ответ

0 голосов
/ 26 октября 2011

Я вижу разницу в том, как вы высмеиваете Перевод и HelpSubject.

Попробуйте использовать это: mockDomain (Перевод, [перевод])

...