Beispiel #1
0
 /**
  * 指定された HelperObject の変換結果を返します.
  * このヘルパーに設定されている Builder を使って, 引数の HelperObject を build した結果を返します.
  * @param  HelperObject $object
  * @return mixed
  */
 public function write(HelperObject $object)
 {
     return $this->builder->build($object->getNode());
 }
Beispiel #2
0
 /**
  * attr() のテストです. 以下を確認します.
  * 
  * - このオブジェクトがラップしているノードが Element ではなかった場合, 何も変化しないこと
  * - 引数が空の場合, 何も変化しないこと
  * - 引数に文字列を 1 つ指定した場合, 指定された名前の boolean 属性が追加されること
  * - 引数に文字列を 2 つ指定した場合, 指定された属性名および属性値を持つ属性が追加されること
  * - 引数に配列を指定した場合, キーを属性名, 値を属性値とする属性が追加されること
  * 
  * @covers Peach\Markup\HelperObject::attr
  */
 public function testAttr()
 {
     $h = $this->helper;
     $obj1 = new HelperObject($h, "");
     $obj1->attr(array("class" => "test"));
     $this->assertEquals(new NodeList(), $obj1->getNode());
     $obj2 = new HelperObject($h, "input");
     $obj2->attr();
     $this->assertEquals(array(), $obj2->getNode()->getAttributes());
     $obj2->attr("readonly");
     $obj2->attr("class", "test");
     $obj2->attr(array("name" => "age", "value" => 18));
     $attrList = array("readonly" => null, "class" => "test", "name" => "age", "value" => "18");
     $this->assertEquals($attrList, $obj2->getNode()->getAttributes());
 }