2014-08-27 2 views
0

Возможно, это глупый вопрос.Тест Gradle groovy плагина не собирает тестовые ресурсы

Я пишу модульный тест для своего плагина с градиентом. Я понимаю, что у плагина gradle custom добавлен groovy плагин, поэтому plugin/src/test/resources будет включен по умолчанию в качестве моих тестовых ресурсов.

Факты:

  • Тест местоположение класса: плагин/SRC/тест/заводной/Foo/бар/Test.groovy
  • Тест расположение ресурса: плагин/SRC/тест/ресурсы/Foo/бар/MyFile

Я пытаюсь получить доступ к MYFILE из Test.groovy через

new File(this.class.getResource(".").toURI()) 

Когда отладка вышеуказанного кода разрешается в этот каталог, и myfile не существует.

  • плагин/строить/классы/тест/Foo/бар

MyFile, однако, может быть найден в

  • плагин/строить/ресурсы/тест/Foo/бар/myfile

Вопрос: Как мне получить доступ myfile от Test.groovy? Является ли это стандартным поведением от groovy plugin?

UPDATE

То, что я хотел бы получить в моем первоначальном прецеденту был каталог, потому что у меня есть несколько ресурсов (это было потеряно в переводе на этот вопрос SO). Кажется, что ресурс правильно разрешен, когда я указываю myfile, как то, что говорит Питер. Итак:

  • новый файл (this.class.getResource() Touri() "".) -> плагин/строить/классы/тест/Foo/бар
  • новый файл (это. class.getResource ("MyFile") Touri()) -.> плагин/строить/ресурсы/тест/Foo/бар/MyFile

я приняв этот хак, прежде чем, наконец, фиксируя его с явным названия ресурсов: https://code.google.com/p/android/issues/detail?id=64887#c13

ответ

0

Вместо ., используйте myfile. Если это не поможет, попробуйте getClass().classLoader.getResource("foo/bar/myfile").

+0

'myfile' works. Кстати, моим исходным вариантом использования было получение ресурсов каталога/test/foo/bar. – ceilfors

Смежные вопросы