_elementFactory->createBlock ( 'Each', array ( new jQueryTmpl_Token_EachStart(0, array('name'=>'key3'), ''), new jQueryTmpl_Token_NoOp(1, array(), 'TEST'), new jQueryTmpl_Token_EachEnd(0, array(), '') ) ); $this->assertEquals ( '', $element->setData($this->_data)->render() ); } public function testShoudLoopThroughArray() { $element = $this->_elementFactory->createBlock ( 'Each', array ( new jQueryTmpl_Token_EachStart(0, array('name'=>'array'), ''), new jQueryTmpl_Token_NoOp(1, array(), '
  • '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'$index'), ''), new jQueryTmpl_Token_NoOp(1, array(), ': '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'$value'), ''), new jQueryTmpl_Token_NoOp(1, array(), '
  • '), new jQueryTmpl_Token_EachEnd(0, array(), '') ) ); $this->assertEquals ( '
  • 0: av1
  • 1: av2
  • 2: av3
  • ', $element->setData($this->_data)->render() ); } public function testShoudLoopThroughArrayWithCustomIndex() { $element = $this->_elementFactory->createBlock ( 'Each', array ( new jQueryTmpl_Token_EachStart(0, array('name'=>'array','index'=>'idx','value'=>'val'), ''), new jQueryTmpl_Token_NoOp(1, array(), '
  • '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'idx'), ''), new jQueryTmpl_Token_NoOp(1, array(), ': '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'val'), ''), new jQueryTmpl_Token_NoOp(1, array(), '
  • '), new jQueryTmpl_Token_EachEnd(0, array(), '') ) ); $this->assertEquals ( '
  • 0: av1
  • 1: av2
  • 2: av3
  • ', $element->setData($this->_data)->render() ); } public function testShoudLoopThroughNestedEach() { $element = $this->_elementFactory->createBlock ( 'Each', array ( new jQueryTmpl_Token_EachStart(0, array('name'=>'array'), ''), new jQueryTmpl_Token_NoOp(1, array(), ''), new jQueryTmpl_Token_EachEnd(0, array(), '') ) ); $this->assertEquals ( '', $element->setData($this->_data)->render() ); } public function testShoudLoopThroughObject() { $element = $this->_elementFactory->createBlock ( 'Each', array ( new jQueryTmpl_Token_EachStart(0, array('name'=>'object'), ''), new jQueryTmpl_Token_NoOp(1, array(), '
  • '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'$value.gender'), ''), new jQueryTmpl_Token_NoOp(1, array(), ': '), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'this.name'), ''), new jQueryTmpl_Token_NoOp(1, array(), '('), new jQueryTmpl_Token_ValueEscaped(1, array('name'=>'attn'), ''), new jQueryTmpl_Token_NoOp(1, array(), ')
  • '), new jQueryTmpl_Token_EachEnd(0, array(), '') ) ); $this->assertEquals ( '
  • F: Sophia(!)
  • M: Zack(!)
  • F: Zoe(!)
  • : Morgan(!)
  • ', $element->setData($this->_data)->render() ); } }