Skip to content

Commit d05ea44

Browse files
authored
Merge pull request moodlehq#30 from stronk7/behat36
Bump to Behat 3.6.x (master)
2 parents 7a2df21 + 6bde70a commit d05ea44

File tree

3 files changed

+62
-12
lines changed

3 files changed

+62
-12
lines changed

composer.json

+4-4
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
"require": {
1616
"php": ">=7.2.0",
1717
"behat/mink": "~1.8",
18-
"behat/mink-extension": "~2.2",
18+
"behat/mink-extension": "~2.3",
1919
"behat/mink-goutte-driver": "~1.2",
20-
"behat/mink-selenium2-driver": "~1.3",
21-
"symfony/process": "2.8.*",
22-
"behat/behat": "3.5.*"
20+
"behat/mink-selenium2-driver": "~1.4",
21+
"symfony/process": "^4.0 || ^5.0",
22+
"behat/behat": "3.6.*"
2323
},
2424
"autoload": {
2525
"psr-0": {

src/Moodle/BehatExtension/EventDispatcher/Tester/ChainedStepTester.php

+29-4
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
use Behat\Gherkin\Node\StepNode;
3636
use Behat\Testwork\Call\CallResult;
3737
use Behat\Testwork\Environment\Environment;
38+
use Behat\Testwork\EventDispatcher\TestworkEventDispatcher;
3839
use Behat\Behat\EventDispatcher\Event\AfterStepSetup;
3940
use Behat\Behat\EventDispatcher\Event\AfterStepTested;
4041
use Behat\Behat\EventDispatcher\Event\BeforeStepTeardown;
@@ -186,24 +187,48 @@ private function runChainedSteps(Environment $env, FeatureNode $feature, Execute
186187
foreach ($steps as $step) {
187188
// Setup new step.
188189
$event = new BeforeStepTested($env, $feature, $step);
189-
$this->eventDispatcher->dispatch($event::BEFORE, $event);
190+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
191+
// Symfony 4.3 and up.
192+
$this->eventDispatcher->dispatch($event, $event::BEFORE);
193+
} else {
194+
// TODO: Remove when our min supported version is >= 4.3.
195+
$this->eventDispatcher->dispatch($event::BEFORE, $event);
196+
}
190197

191198
$setup = $this->setUp($env, $feature, $step, $skip);
192199

193200
$event = new AfterStepSetup($env, $feature, $step, $setup);
194-
$this->eventDispatcher->dispatch($event::AFTER_SETUP, $event);
201+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
202+
// Symfony 4.3 and up.
203+
$this->eventDispatcher->dispatch($event, $event::AFTER_SETUP);
204+
} else {
205+
// TODO: Remove when our min supported version is >= 4.3.
206+
$this->eventDispatcher->dispatch($event::AFTER_SETUP, $event);
207+
}
195208

196209
// Test it.
197210
$stepResult = $this->test($env, $feature, $step, $skip);
198211

199212
// Tear down.
200213
$event = new BeforeStepTeardown($env, $feature, $step, $result);
201-
$this->eventDispatcher->dispatch($event::BEFORE_TEARDOWN, $event);
214+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
215+
// Symfony 4.3 and up.
216+
$this->eventDispatcher->dispatch($event, $event::BEFORE_TEARDOWN);
217+
} else {
218+
// TODO: Remove when our min supported version is >= 4.3.
219+
$this->eventDispatcher->dispatch($event::BEFORE_TEARDOWN, $event);
220+
}
202221

203222
$teardown = $this->tearDown($env, $feature, $step, $skip, $result);
204223

205224
$event = new AfterStepTested($env, $feature, $step, $result, $teardown);
206-
$this->eventDispatcher->dispatch($event::AFTER, $event);
225+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
226+
// Symfony 4.3 and up.
227+
$this->eventDispatcher->dispatch($event, $event::AFTER);
228+
} else {
229+
// TODO: Remove when our min supported version is >= 4.3.
230+
$this->eventDispatcher->dispatch($event::AFTER, $event);
231+
}
207232

208233
//
209234
if (!$stepResult->isPassed()) {

src/Moodle/BehatExtension/EventDispatcher/Tester/MoodleEventDispatchingStepTester.php

+29-4
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
use Behat\Gherkin\Node\FeatureNode;
3535
use Behat\Gherkin\Node\StepNode;
3636
use Behat\Testwork\Environment\Environment;
37+
use Behat\Testwork\EventDispatcher\TestworkEventDispatcher;
3738
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
3839

3940
/**
@@ -70,13 +71,25 @@ public function __construct(StepTester $baseTester, EventDispatcherInterface $ev
7071
*/
7172
public function setUp(Environment $env, FeatureNode $feature, StepNode $step, $skip) {
7273
$event = new BeforeStepTested($env, $feature, $step);
73-
$this->eventDispatcher->dispatch($event::BEFORE, $event);
74+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
75+
// Symfony 4.3 and up.
76+
$this->eventDispatcher->dispatch($event, $event::BEFORE);
77+
} else {
78+
// TODO: Remove when our min supported version is >= 4.3.
79+
$this->eventDispatcher->dispatch($event::BEFORE, $event);
80+
}
7481

7582
$setup = $this->baseTester->setUp($env, $feature, $step, $skip);
7683
$this->baseTester->setEventDispatcher($this->eventDispatcher);
7784

7885
$event = new AfterStepSetup($env, $feature, $step, $setup);
79-
$this->eventDispatcher->dispatch($event::AFTER_SETUP, $event);
86+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
87+
// Symfony 4.3 and up.
88+
$this->eventDispatcher->dispatch($event, $event::AFTER_SETUP);
89+
} else {
90+
// TODO: Remove when our min supported version is >= 4.3.
91+
$this->eventDispatcher->dispatch($event::AFTER_SETUP, $event);
92+
}
8093

8194
return $setup;
8295
}
@@ -93,12 +106,24 @@ public function test(Environment $env, FeatureNode $feature, StepNode $step, $sk
93106
*/
94107
public function tearDown(Environment $env, FeatureNode $feature, StepNode $step, $skip, StepResult $result) {
95108
$event = new BeforeStepTeardown($env, $feature, $step, $result);
96-
$this->eventDispatcher->dispatch($event::BEFORE_TEARDOWN, $event);
109+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
110+
// Symfony 4.3 and up.
111+
$this->eventDispatcher->dispatch($event, $event::BEFORE_TEARDOWN);
112+
} else {
113+
// TODO: Remove when our min supported version is >= 4.3.
114+
$this->eventDispatcher->dispatch($event::BEFORE_TEARDOWN, $event);
115+
}
97116

98117
$teardown = $this->baseTester->tearDown($env, $feature, $step, $skip, $result);
99118

100119
$event = new AfterStepTested($env, $feature, $step, $result, $teardown);
101-
$this->eventDispatcher->dispatch($event::AFTER, $event);
120+
if (TestworkEventDispatcher::DISPATCHER_VERSION === 2) {
121+
// Symfony 4.3 and up.
122+
$this->eventDispatcher->dispatch($event, $event::AFTER);
123+
} else {
124+
// TODO: Remove when our min supported version is >= 4.3.
125+
$this->eventDispatcher->dispatch($event::AFTER, $event);
126+
}
102127

103128
return $teardown;
104129
}

0 commit comments

Comments
 (0)