From 843a686359a0f64a8d19e9d50bbb4b06826b7ae5 Mon Sep 17 00:00:00 2001 From: Matthias Pigulla Date: Wed, 17 Dec 2025 10:03:25 +0100 Subject: [PATCH] Remove Goutte support --- behat.yml.dist | 2 +- composer.json | 2 +- doc/index.rst | 50 +++---------------- .../Listener/SessionsListenerSpec.php | 10 ++-- .../ServiceContainer/MinkExtension.php | 2 - 5 files changed, 15 insertions(+), 51 deletions(-) diff --git a/behat.yml.dist b/behat.yml.dist index 5fab9305..0784e454 100644 --- a/behat.yml.dist +++ b/behat.yml.dist @@ -8,4 +8,4 @@ default: base_url: http://en.wikipedia.org/ sessions: default: - goutte: ~ + browserkit_http: ~ diff --git a/composer.json b/composer.json index 80d39463..1ab092ce 100644 --- a/composer.json +++ b/composer.json @@ -27,7 +27,7 @@ "symfony/config": "^4.4 || ^5.0 || ^6.0 || ^7.0" }, "require-dev": { - "behat/mink-goutte-driver": "^1.1 || ^2.0", + "behat/mink-browserkit-driver": "^2.0", "phpspec/phpspec": "^6.0 || ^7.0 || 7.1.x-dev", "mink/webdriver-classic-driver": "^1.0@dev" }, diff --git a/doc/index.rst b/doc/index.rst index 2c15ebf0..f25ed356 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -50,7 +50,7 @@ The easiest way to keep your suite updated is to use `Composer beConstructedWith($mink, 'goutte', 'selenium2', array('selenium2', 'sahi')); + $this->beConstructedWith($mink, 'browserkit_http', 'selenium2', array('selenium2', 'sahi')); $event->getSuite()->willReturn($suite); $event->getFeature()->willReturn($feature); @@ -38,7 +38,7 @@ function it_is_an_event_subscriber() function it_resets_the_default_session_before_scenarios($event, $mink) { $mink->resetSessions()->shouldBeCalled(); - $mink->setDefaultSessionName('goutte')->shouldBeCalled(); + $mink->setDefaultSessionName('browserkit_http')->shouldBeCalled(); $this->prepareDefaultMinkSession($event); } @@ -120,7 +120,7 @@ function it_fails_for_invalid_javascript_suite_session($event, $scenario, $suite function it_fails_when_the_javascript_session_is_used_but_not_defined($event, $mink, $feature, $suite) { $suite->hasSetting('mink_javascript_session')->willReturn(false); - $this->beConstructedWith($mink, 'goutte', null); + $this->beConstructedWith($mink, 'browserkit_http', null); $feature->getTags()->willReturn(array('javascript')); $this->shouldThrow(new ProcessingException('The @javascript tag cannot be used without enabling a javascript session')) @@ -151,7 +151,7 @@ function it_stops_the_sessions_for_insulated_scenarios($event, $mink, $scenario) { $scenario->hasTag('insulated')->willReturn(true); $mink->stopSessions()->shouldBeCalled(); - $mink->setDefaultSessionName('goutte')->shouldBeCalled(); + $mink->setDefaultSessionName('browserkit_http')->shouldBeCalled(); $this->prepareDefaultMinkSession($event); } @@ -160,7 +160,7 @@ function it_stops_the_sessions_for_insulated_features($event, $mink, $feature) { $feature->hasTag('insulated')->willReturn(true); $mink->stopSessions()->shouldBeCalled(); - $mink->setDefaultSessionName('goutte')->shouldBeCalled(); + $mink->setDefaultSessionName('browserkit_http')->shouldBeCalled(); $this->prepareDefaultMinkSession($event); } diff --git a/src/Behat/MinkExtension/ServiceContainer/MinkExtension.php b/src/Behat/MinkExtension/ServiceContainer/MinkExtension.php index 7a75ce55..5cd1bbd2 100644 --- a/src/Behat/MinkExtension/ServiceContainer/MinkExtension.php +++ b/src/Behat/MinkExtension/ServiceContainer/MinkExtension.php @@ -15,7 +15,6 @@ use Behat\MinkExtension\ServiceContainer\Driver\BrowserKitFactory; use Behat\MinkExtension\ServiceContainer\Driver\BrowserStackFactory; use Behat\MinkExtension\ServiceContainer\Driver\DriverFactory; -use Behat\MinkExtension\ServiceContainer\Driver\GoutteFactory; use Behat\MinkExtension\ServiceContainer\Driver\SahiFactory; use Behat\MinkExtension\ServiceContainer\Driver\SauceLabsFactory; use Behat\MinkExtension\ServiceContainer\Driver\Selenium2Factory; @@ -53,7 +52,6 @@ class MinkExtension implements ExtensionInterface public function __construct() { - $this->registerDriverFactory(new GoutteFactory()); $this->registerDriverFactory(new BrowserKitFactory()); $this->registerDriverFactory(new SahiFactory()); $this->registerDriverFactory(new SeleniumFactory());