通常、テンプレートから渡される異なるパラメータに応じてスニペットの出力をテストするSpecs2テストを作成しようとしていますしかし、私はそれを行う方法を理解することができませんでした。例えばScala/Lift:異なるパラメータに対するスニペットの応答をテストする単体テストを書くにはどうすればいいですか?
、このdivの中にスニペットコールアウトで:
<div class="lift:Snippet.method?param1=foo"></div>
Iは、スニペットに、パラメータPARAM1を渡しています。私のスニペットは、このようなものになります。だから私のテスト中に、私はスニペットが異なるの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"
}
}
}
値?
私はビッグタイムのスケーラであり、newb(python + djangoから来ている)を持ち上げているので、間違ったツリーを吠えている場合は、私に正しいものを指示してください。私はそれが事実かもしれないと思う、私はこれを一日中検索していて、これと遠隔的に何の質問も見つけられていない。
おかげで、
ブレイク
注それが見えることLift 2.4のように、使用するWebSpecの特性には、[Specs2](http://etorreborre.github.com/)ではなく[Dependated] [仕様](https://code.google.com/p/specs/)が必要です。 specs2 /)。私は、[Assembla Lift wikiの[ログインしたユーザーによる単位テストのスニペット]](http://www.windowsfiles.jpを参照)を介して、要点(https://gist.github.com/2235088)でWebSpec2の特性を見つけました。アセンブリルート。 –
ほんの少しでも役立つかどうかわかりません:https://www.assembla.com/wiki/show/liftweb/Testing_Lift_Applications – tyoc213