public function testProfileScreen()
{
$this->loginAndWait()->click('a.view-profile');
$this->see('#profileWrapper')->typeIn('#profileWrapper input[name="name"]', 'Mr Bar')->typeIn('#profileWrapper input[name="email"]', '[email protected]')->enter()->see('.sweet-alert')->press(WebDriverKeys::ESCAPE)->notSee('.sweet-alert');
$avatar = $this->el('a.view-profile img');
// Expect the Gravatar to be updated
static::assertEquals('https://www.gravatar.com/avatar/36df72b4484fed183fad058f30b55d21?s=256', $avatar->getAttribute('src'));
// Check "Confirm Closing" and validate its functionality
$this->click('#profileWrapper input[name="confirmClosing"]');
$this->refresh()->waitUntil(WebDriverExpectedCondition::alertIsPresent());
$this->driver->switchTo()->alert()->dismiss();
// Reverse all changes for other tests to not be affected
$this->typeIn('#profileWrapper input[name="name"]', 'Koel Admin')->typeIn('#profileWrapper input[name="email"]', '[email protected]')->enter()->see('.sweet-alert')->press(WebDriverKeys::ESCAPE)->notSee('.sweet-alert')->click('#profileWrapper input[name="confirmClosing"]');
}