/** * @param NodeElement $node */ public function setNode(NodeElement $node) { $this->node = $node; $this->setXpath($node->getXpath()); $this->visible = $node->isVisible(); $id = $node->getAttribute('id'); if ($id) { $this->setId($id); } $classes = $node->getAttribute('class'); if ($classes) { $this->classes = explode(' ', $classes); } $this->attributes = self::parseAttribs($node); }
public function testIsVisible() { $node = new NodeElement('some_xpath', $this->session); $this->driver->expects($this->exactly(2))->method('isVisible')->with('some_xpath')->will($this->onConsecutiveCalls(true, false)); $this->assertTrue($node->isVisible()); $this->assertFalse($node->isVisible()); }
/** * @param NodeElement $resource */ public function toggleResource(NodeElement $resource) { $groupTitleElement = $this->spin(function () use($resource) { return $resource->getParent()->getParent()->getParent()->find('css', 'h3'); }, 'Group title not found for resource.'); $groupTitle = $groupTitleElement->getHtml(); $this->navigateToGroup($groupTitle); $this->spin(function () use($resource) { return $resource->isVisible(); }, sprintf('Resource is not visible on the group %s.', $groupTitle)); $resource->click(); }