Skip to content

Commit 1650c80

Browse files
mvorisekrobocoder
authored andcommitted
Fix Selenium 3 testing to keep it green
1 parent 50204fa commit 1650c80

File tree

2 files changed

+13
-18
lines changed

2 files changed

+13
-18
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,11 @@ jobs:
1212
runs-on: ubuntu-20.04
1313
strategy:
1414
matrix:
15-
selenium: [ '2.53.1', '3.141.59' ]
15+
selenium: [ '3.141.59' ]
1616
php: [ '7.2', '7.3', '7.4', '8.0', '8.1' ]
17+
include:
18+
- selenium: '2.53.1'
19+
php: 'latest'
1720
fail-fast: false
1821

1922
steps:
@@ -48,7 +51,7 @@ jobs:
4851
sed -i "s~vendor/~../../../vendor/~" vendor/behat/mink-selenium2-driver/phpunit.xml.dist
4952
# remove test excludes once https://github.com/minkphp/MinkSelenium2Driver/pull/354 Selenium 3 issues are fixed
5053
if [ "${{ matrix.selenium }}" = "3.141.59" ]; then
51-
vendor/bin/phpunit --exclude-group none --no-coverage -v -c vendor/behat/mink-selenium2-driver --filter '^(?!Behat\\Mink\\Tests\\Driver\\(?:Basic\\IFrameTest::testIFrame|Js\\ChangeEventTest::testSetValueChangeEvent.*|Js\\WindowTest::testWindow|Custom\\TimeoutTest::testInvalidTimeoutSettingThrowsException|Js\\EventsTest::testRightClick)$)'
54+
vendor/bin/phpunit --exclude-group none --no-coverage -v -c vendor/behat/mink-selenium2-driver --filter '^(?!Behat\\Mink\\Tests\\Driver\\(?:Basic\\IFrameTest::testIFrame|Js\\ChangeEventTest::testSetValueChangeEvent.*|Js\\WindowTest::(?:testWindow|testResizeWindow)|Custom\\TimeoutTest::testInvalidTimeoutSettingThrowsException|Js\\EventsTest::testRightClick)$)'
5255
else
5356
vendor/bin/phpunit --exclude-group none --no-coverage -v -c vendor/behat/mink-selenium2-driver
5457
fi

lib/WebDriver/Execute.php

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -70,22 +70,14 @@ public function sync(array $jsonScript)
7070
protected function serializeArguments(array $arguments)
7171
{
7272
foreach ($arguments as $key => $value) {
73-
switch (true) {
74-
case $value instanceof LegacyElement:
75-
$arguments[$key] = [LegacyElement::LEGACY_ELEMENT_ID => $value->getID()];
76-
break;
77-
78-
case $value instanceof Element:
79-
$arguments[$key] = [Element::WEB_ELEMENT_ID => $value->getID()];
80-
break;
81-
82-
case $value instanceof Shadow:
83-
$arguments[$key] = [Shadow::SHADOW_ROOT_ID => $value->getID()];
84-
break;
85-
86-
case is_array($value):
87-
$arguments[$key] = $this->serializeArguments($value);
88-
break;
73+
if ($value instanceof LegacyElement) {
74+
$arguments[$key] = [LegacyElement::LEGACY_ELEMENT_ID => $value->getID()];
75+
} elseif ($value instanceof Element) {
76+
$arguments[$key] = [Element::WEB_ELEMENT_ID => $value->getID()];
77+
} elseif ($value instanceof Shadow) {
78+
$arguments[$key] = [Shadow::SHADOW_ROOT_ID => $value->getID()];
79+
} elseif (is_array($value)) {
80+
$arguments[$key] = $this->serializeArguments($value);
8981
}
9082
}
9183

0 commit comments

Comments
 (0)