/** * Genera un breadcrumb a partir de la información de los nodos * que debe contener. * * @param array $nodesInfo Arreglo asociativo con información sobre los * nodos del breadcrumb a generar. Se esperan las claves 'url' y 'label'. * * @result Bluegrass\Blues\Component\Breadcrumb\Model\Breadcrumb Breadcrumb * generado. */ protected function createBreadcrumb(array $nodesInfo) { $result = new Breadcrumb(); //Agregar los items al breadcrumb foreach ($nodesInfo as $item) { $result->add(new Item($item['name'], $item['label'], $item['location'])); } return $result; }
protected function createWidget() { $model = new BreadcrumbModel(); $url = $this->getMockBuilder('Bluegrass\\Blues\\Component\\Model\\Web\\Location\\RouteBasedLocation')->disableOriginalConstructor()->getMock(); $url->expects($this->any())->method('getParameters')->will($this->returnValue(array())); $model->add(new Item('root', 'root', $url)); $url = $this->getMockBuilder('Bluegrass\\Blues\\Component\\Model\\Web\\Location\\RouteBasedLocation')->disableOriginalConstructor()->getMock(); $url->expects($this->any())->method('getParameters')->will($this->returnValue(array('param1' => 'param1_value'))); $model->add(new Item('node_1', 'node_1', $url)); $url = $this->getMockBuilder('Bluegrass\\Blues\\Component\\Model\\Web\\Location\\RouteBasedLocation')->disableOriginalConstructor()->getMock(); $url->expects($this->any())->method('getParameters')->will($this->returnValue(array('param1' => 'param1_value', 'param2' => 'param2_value'))); $model->add(new Item('node_2', 'node_2', $url)); return new BreadcrumbWidget($model); }