xtext и junit pde

Я делаю некоторые модульные тесты своих приложений xtext, используя junit pde. Класс, который я хочу протестировать, использует внедренный IResourceSetProvider, но когда я вызываю свой класс из своего тестового класса, провайдер ResourceSet имеет значение null. Я думаю, мне нужно как-то ввести его.

Кроме того, я должен упомянуть, что я работаю с двумя проектами плагинов. Один с моими приложениями xtext, а другой с моими тестовыми примерами.

Как я могу вызвать свой класс xtext из тестового примера и внедрить провайдер ResourceSet?


person Muchiko    schedule 06.02.2012    source источник


Ответы (1)


Вы должны создать тестовый файл, используя класс XtextRunner, и используя аннотацию InjectWith, вы можете ввести необходимые данные. Например. видеть

@RunWith(XtextRunner.class)
@InjectWith(XXXLanguageInjectorProvider.class)
public class ParserTest {

Где XXXLanguageInjectorProvider — это класс, созданный Xtext в тестовом проекте по умолчанию.

person Zoltán Ujhelyi    schedule 06.02.2012