Я пытаюсь написать тест Specs2, который будет тестировать вывод snippet в ответ на различные параметры, которые обычно передаются из шаблона, но я не смог понять, как это сделать.
Например, с выводом фрагмента в этом div:
<div class="lift:Snippet.method?param1=foo"></div>
Я передаю параметр param1 в фрагмент. Мой фрагмент будет выглядеть примерно так:
class Snippet {
def method(in:NodeSeq):NodeSeq = {
val param1 = S.attr("param1") openOr ""
param1 match {
case "foo" => //do something
case "bar" => //do something else
case _ => //do yet another thing
}
}
}
Итак, в рамках моего теста я хочу проверить, как фрагмент реагирует на разные значения param1
class SnippetTest extends Specification {
"Snippet" should {
"do something" in {
val html = <ul>
<li class="first">
<li class="second">
<li class="third">
</ul>
//I need to set param1 here somehow
val out = Snippet.method(html)
//then check that it did what it was supposed to
out.something must be "xyz"
}
}
}
Как установить param1?
Я занимаюсь большим временем scala и поднимаю newb (исходя из python + django), поэтому, если я лаю неправильное дерево, пожалуйста, направьте меня в нужное место. Я думаю, что это может быть так, я весь день занимался поиском в Интернете и не нашел вопросов, отдаленно похожих на этот.
Спасибо,
Блейк