url = "http://127.0.0.1"; } public function testClient(): void { $client = Client::createFirefoxClient(); $crawler = $client->request('GET', $this->url.'/index.php/apps/gestion'); $form = $crawler->selectButton('Log in')->form(); $form['user'] = 'nextcloud'; $form['password'] = 'nextcloud'; $client->submit($form); $client->request('GET', $this->url.'/index.php/apps/gestion'); $client->takeScreenshot('tests/Unit/Panther/screens/index_test_first.png'); //Check page showing $crawler = $client->waitForVisibility('#newClient'); $this->assertEquals('Add customer',$crawler->filter('#newClient')->text()); //Sorting (this is for the screenshot) $client->executeScript("document.getElementById('client').childNodes[1].childNodes[1].childNodes[0].click()"); //Init lenght for datatable $initLenght = $client->executeScript("return document.getElementById('client').rows.length"); //Add client $client->executeScript("document.getElementById('newClient').click()"); sleep(1); //Waiting XHR $this->assertTrue($initLenght < $client->executeScript("return document.getElementById('client').rows.length")); //Delete client $client->executeScript("document.getElementById('client').rows[1].childNodes[8].childNodes[0].childNodes[0].click()"); $client->getWebDriver()->switchTo()->alert()->accept(); sleep(1); $this->assertTrue($initLenght == $client->executeScript("return document.getElementById('client').rows.length")); // $client->takeScreenshot('tests/Unit/Panther/screens/index_test_first.png'); } }