browser->find("xpath", '//*[@id="form_1014473"]'); $this->assertEquals(0, $notFound["page_id"]); } public function testFindInvalidSelector() { $selector = "xpath"; $invalidSelection = '//*INVALID_SELECTOR[@id="form_1014473"]'; try { $this->browser->find($selector, $invalidSelection); } catch (InvalidSelector $e) { $this->assertEquals($selector, $e->getMethod()); $this->assertEquals($invalidSelection, $e->getSelector()); } } public function testFindElementPage() { $this->visitUrl($this->getTestPageBaseUrl() . "/test/standard_form/form.html"); $element = $this->browser->find("xpath", '//*[@id="form_1014473"]'); $this->assertEquals(1, $element["page_id"]); $this->assertEquals(0, $element["ids"][0]); $cssElement = $this->browser->find("css", "#form_1014473 > div"); $this->assertEquals(1, $cssElement["page_id"]); $this->assertEquals(1, $cssElement["ids"][0]); } public function testFindWithinElementNoPage() { try { $this->browser->findWithin(1, 0, "xpath", '//*[@id="li_1"]'); } catch (\Exception $e) { $this->assertInstanceOf("Zumba\\GastonJS\\Exception\\ObsoleteNode", $e); } } public function testFindWithinElementPage() { $this->visitUrl($this->getTestPageBaseUrl() . "/test/standard_form/form.html"); $this->browser->find("css", "#form_1014473"); $withinElement = $this->browser->findWithin(1, 0, "css", "div"); $this->assertCount(4, $withinElement); } public function testGetParents() { $this->visitUrl($this->getTestPageBaseUrl() . "/test/standard_form/form.html"); $this->browser->find("xpath", '//*[@id="form_1014473"]'); $this->assertArraySubset(array(1, 2, 3), $this->browser->getParents(1, 0)); } public function testTagName() { $this->visitUrl($this->getTestPageBaseUrl() . "/test/standard_form/form.html"); $this->browser->find("xpath", '//*[@id="form_1014473"]'); $this->assertEquals("form", $this->browser->tagName(1, 0)); } public function testEquals() { $this->visitUrl($this->getTestPageBaseUrl() . "/test/standard_form/form.html"); try { $this->browser->equals(1, 0, 1); } catch (ObsoleteNode $e) { } //TODO: equals method seems to be broken or i do not know how to use it } public function testIsVisible() { $this->visitUrl($this->getTestPageBaseUrl() . "/static/basic.html"); $this->browser->find("xpath", '//*[@id="break"]'); $this->assertTrue($this->browser->isVisible(1, 0)); $this->browser->find("xpath", '/html/body/p[1]'); $this->assertFalse($this->browser->isVisible(1, 1)); } public function testIsDisabled() { $this->visitUrl($this->getTestPageBaseUrl() . "/static/basic.html"); $this->browser->find("xpath", '//*[@id="disabled_check"]'); $this->browser->find("xpath", '//*[@id="enabled_check"]'); $this->assertTrue($this->browser->isDisabled(1, 0)); $this->assertFalse($this->browser->isDisabled(1, 1)); } }