1
0
mirror of https://github.com/maximebf/php-debugbar.git synced 2025-07-25 10:41:55 +02:00
Files
php-debugbar/tests/DebugBar/Tests/Browser/DebugbarTest.php
Barry vd. Heuvel f9b5949093 Refactor browser test, test monolog bridge (#641)
* Refactor browser test, test monolog bridge

* Rename

* Add Doctrine
2024-03-31 20:14:48 +02:00

71 lines
2.6 KiB
PHP

<?php
namespace DebugBar\Tests\Browser;
use Facebook\WebDriver\WebDriverElement;
class DebugbarTest extends AbstractBrowserTest
{
public function testDebugbarTab(): void
{
$client = static::createPantherClient();
$crawler = $client->request('GET', '/demo/');
// Wait for Debugbar to load
$crawler = $client->waitFor('.phpdebugbar-body');
usleep(1000);
if (!$this->isTabActive($crawler, 'messages')) {
$client->click($this->getTabLink($crawler, 'messages'));
}
$crawler = $client->waitForVisibility('.phpdebugbar-panel[data-collector=messages] .phpdebugbar-widgets-list');
$messages = $crawler->filter('.phpdebugbar-panel[data-collector=messages] .phpdebugbar-widgets-value')
->each(function(WebDriverElement $node){
return $node->getText();
});
$this->assertEquals('hello', $messages[0]);
$this->assertCount(4, $messages);
// Close it again
$client->click($this->getTabLink($crawler, 'messages'));
$client->waitForInvisibility('.phpdebugbar-panel[data-collector=messages] .phpdebugbar-widgets-list');
}
public function testDebugbarAjax(): void
{
$client = static::createPantherClient();
$crawler = $client->request('GET', '/demo/');
// Wait for Debugbar to load
$crawler = $client->waitFor('.phpdebugbar-body');
usleep(1000);
if (!$this->isTabActive($crawler, 'messages')) {
$client->click($this->getTabLink($crawler, 'messages'));
}
$crawler = $client->waitForVisibility('.phpdebugbar-widgets-messages .phpdebugbar-widgets-list');
$crawler->selectLink('load ajax content')->click();
$client->waitForElementToContain('.phpdebugbar-panel[data-collector=messages]', 'hello from ajax');
$client->waitForElementToContain('.phpdebugbar-datasets-switcher', 'ajax.php');
$messages = $crawler->filter('.phpdebugbar-panel[data-collector=messages] .phpdebugbar-widgets-value')
->each(function(WebDriverElement $node){
return $node->getText();
});
$this->assertEquals('hello from ajax', $messages[0]);
$crawler->selectLink('load ajax content with exception')->click();
$client->click($this->getTabLink($crawler, 'exceptions'));
$client->waitForElementToContain('.phpdebugbar-datasets-switcher', 'ajax_exception.php');
$client->waitForElementToContain('.phpdebugbar-panel[data-collector=exceptions] .phpdebugbar-widgets-message', 'Something failed!');
}
}