77 lines
2 KiB
PHP
77 lines
2 KiB
PHP
![]() |
<?php
|
||
|
|
||
|
namespace Behat\Mink\Tests\Driver\Css;
|
||
|
|
||
|
use Behat\Mink\Tests\Driver\TestCase;
|
||
|
|
||
|
class HoverTest extends TestCase
|
||
|
{
|
||
|
/**
|
||
|
* @group mouse-events
|
||
|
*/
|
||
|
public function testMouseOverHover()
|
||
|
{
|
||
|
$this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
|
||
|
|
||
|
$this->findById('reset-square')->mouseOver();
|
||
|
$this->assertActionSquareHeight(100);
|
||
|
|
||
|
$this->findById('action-square')->mouseOver();
|
||
|
$this->assertActionSquareHeight(200);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group mouse-events
|
||
|
* @depends testMouseOverHover
|
||
|
*/
|
||
|
public function testClickHover()
|
||
|
{
|
||
|
$this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
|
||
|
|
||
|
$this->findById('reset-square')->mouseOver();
|
||
|
$this->assertActionSquareHeight(100);
|
||
|
|
||
|
$this->findById('action-square')->click();
|
||
|
$this->assertActionSquareHeight(200);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group mouse-events
|
||
|
* @depends testMouseOverHover
|
||
|
*/
|
||
|
public function testDoubleClickHover()
|
||
|
{
|
||
|
$this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
|
||
|
|
||
|
$this->findById('reset-square')->mouseOver();
|
||
|
$this->assertActionSquareHeight(100);
|
||
|
|
||
|
$this->findById('action-square')->doubleClick();
|
||
|
$this->assertActionSquareHeight(200);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @group mouse-events
|
||
|
* @depends testMouseOverHover
|
||
|
*/
|
||
|
public function testRightClickHover()
|
||
|
{
|
||
|
$this->getSession()->visit($this->pathTo('/css_mouse_events.html'));
|
||
|
|
||
|
$this->findById('reset-square')->mouseOver();
|
||
|
$this->assertActionSquareHeight(100);
|
||
|
|
||
|
$this->findById('action-square')->rightClick();
|
||
|
$this->assertActionSquareHeight(200);
|
||
|
}
|
||
|
|
||
|
private function assertActionSquareHeight($expected)
|
||
|
{
|
||
|
$this->assertEquals(
|
||
|
$expected,
|
||
|
$this->getSession()->evaluateScript("return window.$('#action-square').height();"),
|
||
|
'Mouse is located over the object when mouse-related action is performed'
|
||
|
);
|
||
|
}
|
||
|
}
|