Changeset View
Changeset View
Standalone View
Standalone View
src/tests/Browser/Pages/Meet/Room.php
Show First 20 Lines • Show All 155 Lines • ▼ Show 20 Lines | class Room extends Page | ||||
* Set the nickname for the participant | * Set the nickname for the participant | ||||
* | * | ||||
* @param \Tests\Browser $browser The browser object | * @param \Tests\Browser $browser The browser object | ||||
* @param string $selector Participant element selector | * @param string $selector Participant element selector | ||||
* @param string $nickname Nickname | * @param string $nickname Nickname | ||||
*/ | */ | ||||
public function setNickname($browser, $selector, $nickname): void | public function setNickname($browser, $selector, $nickname): void | ||||
{ | { | ||||
$element = "$selector .meet-nickname .content"; | |||||
$browser->click("$selector .meet-nickname") | |||||
->waitFor("$selector .dropdown-menu") | |||||
->assertSeeIn("$selector .dropdown-menu > .action-nickname", 'Nickname') | |||||
->click("$selector .dropdown-menu > .action-nickname") | |||||
->waitUntilMissing('.dropdown-menu') | |||||
// Use script() because type() does not work with this contenteditable widget | // Use script() because type() does not work with this contenteditable widget | ||||
$selector = $selector . ' .meet-nickname .content'; | ->script( | ||||
$browser->script( | "var element = document.querySelector('$element');" | ||||
"var element = document.querySelector('$selector');" | |||||
. "element.focus();" | |||||
. "element.innerText = '$nickname';" | . "element.innerText = '$nickname';" | ||||
. "element.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 27 }))" | . "element.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 27 }))" | ||||
); | ); | ||||
} | } | ||||
/** | /** | ||||
* Submit logon form. | * Submit logon form. | ||||
* | * | ||||
* @param \Tests\Browser $browser The browser object | * @param \Tests\Browser $browser The browser object | ||||
* @param string $username User name | * @param string $username User name | ||||
* @param string $password User password | * @param string $password User password | ||||
Show All 21 Lines |