Neos\FluidAdaptor\ViewHelpers\Form\ButtonViewHelper::render PHP Method

render() public method

Renders the button.
public render ( string $type = 'submit' ) : string
$type string Specifies the type of button (e.g. "button", "reset" or "submit")
return string
    public function render($type = 'submit')
    {
        $name = $this->getName();
        $this->registerFieldNameForFormTokenGeneration($name);
        $this->addAdditionalIdentityPropertiesIfNeeded();
        $this->tag->addAttribute('type', $type);
        $this->tag->addAttribute('name', $name);
        $this->tag->addAttribute('value', $this->getValueAttribute(true));
        $this->tag->setContent($this->renderChildren());
        return $this->tag->render();
    }

Usage Example

 /**
  * @test
  */
 public function renderCorrectlySetsTagNameAndDefaultAttributes()
 {
     $mockTagBuilder = $this->getMockBuilder(TagBuilder::class)->setMethods(array('setTagName', 'addAttribute', 'setContent'))->getMock();
     $mockTagBuilder->expects($this->any())->method('setTagName')->with('button');
     $mockTagBuilder->expects($this->at(2))->method('addAttribute')->with('type', 'submit');
     $mockTagBuilder->expects($this->at(3))->method('addAttribute')->with('name', '');
     $mockTagBuilder->expects($this->at(4))->method('addAttribute')->with('value', '');
     $mockTagBuilder->expects($this->at(5))->method('setContent')->with('Button Content');
     $this->viewHelper->expects($this->atLeastOnce())->method('renderChildren')->will($this->returnValue('Button Content'));
     $this->viewHelper->injectTagBuilder($mockTagBuilder);
     $this->viewHelper->initialize();
     $this->viewHelper->render();
 }