diff --git a/composer.json b/composer.json
index 41801fec..98516517 100644
--- a/composer.json
+++ b/composer.json
@@ -28,19 +28,19 @@
"ext-dom": "*",
"ext-libxml": "*",
"php-webdriver/webdriver": "^1.8.2",
- "symfony/browser-kit": "^5.4 || ^6.4 || ^7.0",
- "symfony/dependency-injection": "^5.4 || ^6.4 || ^7.0",
+ "symfony/browser-kit": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/dependency-injection": "^5.4 || ^6.4 || ^7.0 || ^8.0",
"symfony/deprecation-contracts": "^2.4 || ^3",
- "symfony/dom-crawler": "^5.4 || ^6.4 || ^7.0",
- "symfony/http-client": "^6.4 || ^7.0",
- "symfony/http-kernel": "^5.4 || ^6.4 || ^7.0",
- "symfony/process": "^5.4 || ^6.4 || ^7.0"
+ "symfony/dom-crawler": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/http-client": "^6.4 || ^7.0 || ^8.0",
+ "symfony/http-kernel": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/process": "^5.4 || ^6.4 || ^7.0 || ^8.0"
},
"require-dev": {
- "symfony/css-selector": "^5.4 || ^6.4 || ^7.0",
- "symfony/framework-bundle": "^5.4 || ^6.4 || ^7.0",
- "symfony/mime": "^5.4 || ^6.4 || ^7.0",
- "symfony/phpunit-bridge": "^7.2.0"
+ "symfony/css-selector": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/framework-bundle": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/mime": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/phpunit-bridge": "^7.2.0 || ^8.0"
},
"minimum-stability": "dev",
"prefer-stable": true,
diff --git a/tests/AssertionsTest.php b/tests/AssertionsTest.php
index 65ee6da1..f078d002 100644
--- a/tests/AssertionsTest.php
+++ b/tests/AssertionsTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Symfony\Component\BrowserKit\AbstractBrowser;
@@ -29,6 +30,7 @@ protected function setUp(): void
}
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/ClientTest.php b/tests/ClientTest.php
index edda41dd..9a33a7af 100644
--- a/tests/ClientTest.php
+++ b/tests/ClientTest.php
@@ -20,6 +20,7 @@
use Facebook\WebDriver\JavaScriptExecutor;
use Facebook\WebDriver\WebDriver;
use Facebook\WebDriver\WebDriverExpectedCondition;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\BrowserKit\AbstractBrowser;
use Symfony\Component\BrowserKit\Cookie;
use Symfony\Component\BrowserKit\CookieJar as BrowserKitCookieJar;
@@ -56,6 +57,7 @@ public function testWaitForEmptyLocator(): void
$client->waitFor('');
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -83,6 +85,7 @@ public static function waitForDataProvider(): iterable
yield 'xpath expression' => ['locator' => '//*[@id="hello"]'];
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -95,6 +98,7 @@ public function testWaitForVisibility(string $locator): void
$this->assertSame('Hello', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -107,6 +111,7 @@ public function testWaitForInvisibility(string $locator): void
$this->assertSame('', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -119,6 +124,7 @@ public function testWaitForElementToContain(string $locator): void
$this->assertSame('Hello new content', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -131,6 +137,7 @@ public function testWaitForElementToNotContain(string $locator): void
$this->assertSame('Hello', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -143,6 +150,7 @@ public function testWaitForEnabled(string $locator): void
$this->assertTrue($crawler->filter('#hello')->isEnabled());
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -155,6 +163,7 @@ public function testWaitForDisabled(string $locator): void
$this->assertFalse($crawler->filter('#hello')->isEnabled());
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -167,6 +176,7 @@ public function testWaitForAttributeToContain(string $locator): void
$this->assertSame('42', $crawler->filter('#hello')->getAttribute('data-old-price'));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -179,6 +189,7 @@ public function testWaitForAttributeToNotContain(string $locator): void
$this->assertSame('36', $crawler->filter('#hello')->getAttribute('data-old-price'));
}
+ #[DataProvider('waitForDataProvider')]
/**
* @dataProvider waitForDataProvider
*/
@@ -244,6 +255,7 @@ public static function waitForExceptionsProvider(): iterable
];
}
+ #[DataProvider('waitForExceptionsProvider')]
/**
* @dataProvider waitForExceptionsProvider
*/
@@ -288,6 +300,7 @@ public function testExecuteAsyncScript(): void
$this->assertSame('P1', $innerText);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -319,6 +332,7 @@ public function testRefreshCrawler(): void
$this->assertSame('Hello', $refreshedCrawler->filter('h1')->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -337,6 +351,7 @@ public function testFollowLink(callable $clientFactory, string $type): void
$this->assertSame(self::$baseUri.'/basic.html#e12', $crawler->getUri());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -392,6 +407,7 @@ public function testSubmitForm(callable $clientFactory): void
$this->assertSame('I1: n/a', $crawler->filter('#result')->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -418,6 +434,7 @@ public function testSubmitFormWithValues(callable $clientFactory): void
$this->assertSame('I1: Reclus', $crawler->filter('#result')->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -445,6 +462,7 @@ public function testHistory(callable $clientFactory): void
$this->assertSame(self::$baseUri.'/link.html', $crawler->getUri());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -497,6 +515,7 @@ public function testCookie(callable $clientFactory, string $type): void
$this->assertNull($cookieJar->get('foo'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -507,6 +526,7 @@ public function testServerPort(callable $clientFactory): void
$this->assertEquals($expectedPort, mb_substr(self::$baseUri, -4));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -596,6 +616,7 @@ public function testCreateHttpBrowserClientWithInvalidHttpClientOptions(): void
]);
}
+ #[DataProvider('providePrefersReducedMotion')]
/**
* @dataProvider providePrefersReducedMotion
*/
@@ -608,6 +629,7 @@ public function testPrefersReducedMotion(string $browser): void
$this->assertStringEndsWith('#clicked', $client->getCurrentURL());
}
+ #[DataProvider('providePrefersReducedMotion')]
/**
* @dataProvider providePrefersReducedMotion
*/
diff --git a/tests/DomCrawler/CrawlerTest.php b/tests/DomCrawler/CrawlerTest.php
index 0347357c..5458b23c 100644
--- a/tests/DomCrawler/CrawlerTest.php
+++ b/tests/DomCrawler/CrawlerTest.php
@@ -14,6 +14,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler;
use Facebook\WebDriver\WebDriverElement;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Crawler;
use Symfony\Component\Panther\Client;
use Symfony\Component\Panther\Client as PantherClient;
@@ -34,6 +35,7 @@ public function testCreateCrawler(): void
$this->assertInstanceOf(WebDriverElement::class, $crawler);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -43,6 +45,7 @@ public function testGetUri(callable $clientFactory): void
$this->assertSame(static::$baseUri.'/basic.html', $crawler->getUri());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -52,6 +55,7 @@ public function testHtml(callable $clientFactory): void
$this->assertStringContainsString('
A basic page', $crawler->html());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -63,6 +67,7 @@ public function testIterate(callable $clientFactory): void
}
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -86,6 +91,7 @@ public function testFilterXpath(callable $clientFactory): void
});
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -102,6 +108,7 @@ public function testFilter(callable $clientFactory): void
$this->assertSame('Sibling 2', $crawler->filter('main')->filter('#a-sibling')->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -115,6 +122,7 @@ public function testReduce(callable $clientFactory): void
});
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -124,6 +132,7 @@ public function testEq(callable $clientFactory): void
$this->assertSame('a-sibling', $crawler->filter('main > p')->eq(1)->attr('id'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -133,6 +142,7 @@ public function testFirst(callable $clientFactory): void
$this->assertSame('Sibling', $crawler->filter('main > p')->first()->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -142,6 +152,7 @@ public function testLast(callable $clientFactory): void
$this->assertSame('Sibling 3', $crawler->filter('main > p')->last()->text(null, true));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -157,6 +168,7 @@ public function testSiblings(callable $clientFactory): void
$this->assertSame(['Main', 'Sibling 2', 'Sibling 3'], $texts);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -173,6 +185,7 @@ public function testMatches(callable $clientFactory): void
$this->assertFalse($p->matches('.bar'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -201,6 +214,7 @@ public function testClosest(callable $clientFactory): void
$this->assertNull($notFound);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -216,6 +230,7 @@ public function testNextAll(callable $clientFactory): void
$this->assertSame(['Sibling 2', 'Sibling 3'], $texts);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -231,6 +246,7 @@ public function testPreviousAll(callable $clientFactory): void
$this->assertSame(['Main'], $texts);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -246,6 +262,7 @@ public function testChildren(callable $clientFactory): void
$this->assertSame(['h1', 'main', 'p', 'p', 'input', 'p', 'div'], $names);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -282,6 +299,7 @@ public function testParents(callable $clientFactory): void
$this->assertSame(['main', 'body', 'html'], $names);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -297,6 +315,7 @@ public function testAncestors(callable $clientFactory): void
$this->assertSame(['main', 'body', 'html'], $names);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -310,6 +329,7 @@ public function testExtract(callable $clientFactory): void
$this->assertSame([[], [], []], $crawler->filter('main > p')->extract([]));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -339,6 +359,7 @@ public function testLink(callable $clientFactory, string $type): void
$this->assertSame('https://api-platform.com/', $link->getUri());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -365,6 +386,7 @@ public function testImage(callable $clientFactory, string $type): void
$this->assertSame('https://api-platform.com/logo-250x250.png', $image->getUri());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -374,6 +396,7 @@ public function testTextDefault(callable $clientFactory): void
$this->assertSame('default', $crawler->filter('header')->text('default'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -383,6 +406,7 @@ public function testHtmlDefault(callable $clientFactory): void
$this->assertSame('default', $crawler->filter('header')->html('default'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -392,6 +416,7 @@ public function testEmptyHtml(callable $clientFactory): void
$this->assertEmpty($crawler->filter('.empty')->html(''));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -401,6 +426,7 @@ public function testEmptyHtmlWithoutDefault(callable $clientFactory): void
$this->assertEmpty($crawler->filter('.empty')->html());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/ChoiceFormFieldTest.php b/tests/DomCrawler/Field/ChoiceFormFieldTest.php
index 2aa39d7d..42fa2833 100644
--- a/tests/DomCrawler/Field/ChoiceFormFieldTest.php
+++ b/tests/DomCrawler/Field/ChoiceFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\ChoiceFormField;
use Symfony\Component\Panther\Client as PantherClient;
use Symfony\Component\Panther\Tests\TestCase;
@@ -22,6 +23,7 @@
*/
class ChoiceFormFieldTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -36,6 +38,7 @@ public function testGetValueFromSelectIfOneIsSelected(callable $clientFactory):
$this->assertSame('20', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -50,6 +53,7 @@ public function testGetValueFromSelectIfNoneIsSelected(callable $clientFactory):
$this->assertSame('', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -64,6 +68,7 @@ public function testGetValueFromSelectMultipleIfOneIsSelected(callable $clientFa
$this->assertSame(['20'], $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -78,6 +83,7 @@ public function testGetValueFromSelectMultipleIfMultipleIsSelected(callable $cli
$this->assertSame(['20', '30'], $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -92,6 +98,7 @@ public function testGetValueFromSelectMultipleIfNoneIsSelected(callable $clientF
$this->assertSame([], $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -106,6 +113,7 @@ public function testGetValueFromRadioIfSelected(callable $clientFactory): void
$this->assertSame('i_am_checked', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -120,6 +128,7 @@ public function testGetValueFromRadioIfNoneIsChecked(callable $clientFactory): v
$this->assertNull($field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -134,6 +143,7 @@ public function testGetValueFromCheckboxIfChecked(callable $clientFactory): void
$this->assertSame('i_am_checked', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -152,6 +162,7 @@ public function testGetValueFromCheckboxIfMultipleAreChecked(callable $clientFac
$this->assertSame(['checked_one', 'checked_two'], $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/EmailInputFormFieldTest.php b/tests/DomCrawler/Field/EmailInputFormFieldTest.php
index c14f1812..6d6c21e5 100644
--- a/tests/DomCrawler/Field/EmailInputFormFieldTest.php
+++ b/tests/DomCrawler/Field/EmailInputFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\InputFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -21,6 +22,7 @@
*/
class EmailInputFormFieldTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -35,6 +37,7 @@ public function testGetValueWithSomeValueFromTextInput(callable $clientFactory):
$this->assertSame('some_value', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -49,6 +52,7 @@ public function testGetValueWithNoValueFromTextInput(callable $clientFactory): v
$this->assertSame('', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -68,6 +72,7 @@ public function testSetValueMultipleTimesInTextInput(callable $clientFactory): v
$this->assertSame('second@example.com', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/FileFormFieldTest.php b/tests/DomCrawler/Field/FileFormFieldTest.php
index 7e4ad01b..a3414572 100644
--- a/tests/DomCrawler/Field/FileFormFieldTest.php
+++ b/tests/DomCrawler/Field/FileFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\FileFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -38,6 +39,7 @@ private function assertValueContains($needle, $haystack): void
$this->assertContains($needle, $haystack);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -54,6 +56,7 @@ public function testFileUploadWithUpload(callable $clientFactory): void
$this->assertValueContains(self::$uploadFileName, $form['file_upload']->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -70,6 +73,7 @@ public function testFileUploadWithSetValue(callable $clientFactory): void
$this->assertValueContains(self::$uploadFileName, $form['file_upload']->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -89,6 +93,7 @@ public function testFileUploadWithSetFilePath(callable $clientFactory, $class):
$this->assertValueContains(self::$anotherUploadFileName, $form['file_upload']->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -114,6 +119,7 @@ public function testFileUploadWithInvalidValue(callable $clientFactory): void
);
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/InputFormFieldTest.php b/tests/DomCrawler/Field/InputFormFieldTest.php
index b548f82c..3608c763 100644
--- a/tests/DomCrawler/Field/InputFormFieldTest.php
+++ b/tests/DomCrawler/Field/InputFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\InputFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -21,6 +22,7 @@
*/
class InputFormFieldTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -35,6 +37,7 @@ public function testGetValueWithSomeValueFromTextInput(callable $clientFactory):
$this->assertSame('some_value', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -49,6 +52,7 @@ public function testGetValueWithNoValueFromTextInput(callable $clientFactory): v
$this->assertSame('', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/NumberInputFormFieldTest.php b/tests/DomCrawler/Field/NumberInputFormFieldTest.php
index 3e96a754..05bd983e 100644
--- a/tests/DomCrawler/Field/NumberInputFormFieldTest.php
+++ b/tests/DomCrawler/Field/NumberInputFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\InputFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -21,6 +22,7 @@
*/
class NumberInputFormFieldTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -35,6 +37,7 @@ public function testGetValueWithSomeValueFromTextInput(callable $clientFactory):
$this->assertSame('10', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -49,6 +52,7 @@ public function testGetValueWithNoValueFromTextInput(callable $clientFactory): v
$this->assertSame('', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -68,6 +72,7 @@ public function testSetValueMultipleTimesInTextInput(callable $clientFactory): v
$this->assertSame('30', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/Field/TextareaFormFieldTest.php b/tests/DomCrawler/Field/TextareaFormFieldTest.php
index 101a879f..f0a25956 100644
--- a/tests/DomCrawler/Field/TextareaFormFieldTest.php
+++ b/tests/DomCrawler/Field/TextareaFormFieldTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler\Field;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\TextareaFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -21,6 +22,7 @@
*/
class TextareaFormFieldTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -35,6 +37,7 @@ public function testGetValueWithSomeValue(callable $clientFactory): void
$this->assertSame('some_value', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -49,6 +52,7 @@ public function testGetValueWithNoValue(callable $clientFactory): void
$this->assertSame('', $field->getValue());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/DomCrawler/FormTest.php b/tests/DomCrawler/FormTest.php
index b4ba3db4..b870939f 100644
--- a/tests/DomCrawler/FormTest.php
+++ b/tests/DomCrawler/FormTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\DomCrawler;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\DomCrawler\Field\ChoiceFormField;
use Symfony\Component\Panther\Tests\TestCase;
@@ -21,6 +22,7 @@
*/
class FormTest extends TestCase
{
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -47,6 +49,7 @@ public function testFormByButton(callable $clientFactory): void
$this->assertFalse($form->has('notexist'));
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -70,6 +73,7 @@ public function testFormById(callable $clientFactory): void
$this->assertSame('DELETE', $crawler->filter('#special-submit')->form()->getMethod());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -96,6 +100,7 @@ public function testFormFields(callable $clientFactory): void
$this->assertSame($originalValues, $form->getValues());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -131,6 +136,7 @@ public function testSelect(callable $clientFactory): void
], $form->getPhpValues());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
@@ -146,6 +152,7 @@ public function testGetValuesDoesNotContainFiles(callable $clientFactory): void
$this->assertNotContains(self::$uploadFileName, $form->getValues());
}
+ #[DataProvider('clientFactoryProvider')]
/**
* @dataProvider clientFactoryProvider
*/
diff --git a/tests/FutureAssertionsTest.php b/tests/FutureAssertionsTest.php
index 93a21348..073051a9 100644
--- a/tests/FutureAssertionsTest.php
+++ b/tests/FutureAssertionsTest.php
@@ -13,8 +13,11 @@
namespace Symfony\Component\Panther\Tests;
+use PHPUnit\Framework\Attributes\DataProvider;
+
class FutureAssertionsTest extends TestCase
{
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureExistenceAssertion(string $locator): void
{
@@ -23,6 +26,7 @@ public function testFutureExistenceAssertion(string $locator): void
$this->assertSame('Hello', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureStalenessAssertion(string $locator): void
{
@@ -31,6 +35,7 @@ public function testFutureStalenessAssertion(string $locator): void
$this->assertCount(0, $crawler->filter('body')->children());
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureVisibilityAssertion(string $locator): void
{
@@ -40,6 +45,7 @@ public function testFutureVisibilityAssertion(string $locator): void
$this->assertSelectorExists($locator);
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureInvisibilityAssertion(string $locator): void
{
@@ -48,6 +54,7 @@ public function testFutureInvisibilityAssertion(string $locator): void
$this->assertSame('', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureContainAssertion(string $locator): void
{
@@ -56,6 +63,7 @@ public function testFutureContainAssertion(string $locator): void
$this->assertSame('Hello new content', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureNotContainAssertion(string $locator): void
{
@@ -64,6 +72,7 @@ public function testFutureNotContainAssertion(string $locator): void
$this->assertSame('Hello', $crawler->filter('#hello')->text(null, true));
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureEnabledAssertion(string $locator): void
{
@@ -72,6 +81,7 @@ public function testFutureEnabledAssertion(string $locator): void
$this->assertNull($crawler->filter('#hello')->getAttribute('disabled'));
}
+ #[DataProvider('futureDataProvider')]
/** @dataProvider futureDataProvider */
public function testFutureDisabledAssertion(string $locator): void
{
@@ -80,6 +90,7 @@ public function testFutureDisabledAssertion(string $locator): void
$this->assertSame('true', $crawler->filter('#hello')->getAttribute('disabled'));
}
+ #[DataProvider('futureDataProvider')]
/**
* @dataProvider futureDataProvider
*/
@@ -90,6 +101,7 @@ public function testFutureAttributeContainAssertion(string $locator): void
$this->assertSame('42', $crawler->filter('#hello')->getAttribute('data-old-price'));
}
+ #[DataProvider('futureDataProvider')]
/**
* @dataProvider futureDataProvider
*/
diff --git a/tests/ServerExtensionTest.php b/tests/ServerExtensionTest.php
index a5c9db00..4cb626bf 100644
--- a/tests/ServerExtensionTest.php
+++ b/tests/ServerExtensionTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\Panther\PantherTestCase;
use Symfony\Component\Panther\ServerExtensionLegacy;
@@ -34,6 +35,7 @@ public function testStartAndStop(): void
static::assertNull(PantherTestCase::$webServerManager);
}
+ #[DataProvider('provideTestPauseOnFailure')]
/**
* @dataProvider provideTestPauseOnFailure
*/
diff --git a/tests/WebDriver/WebDriverCheckBoxTest.php b/tests/WebDriver/WebDriverCheckBoxTest.php
index d3e1eecf..a4625211 100644
--- a/tests/WebDriver/WebDriverCheckBoxTest.php
+++ b/tests/WebDriver/WebDriverCheckBoxTest.php
@@ -15,6 +15,7 @@
use Facebook\WebDriver\Exception\NoSuchElementException;
use Facebook\WebDriver\Exception\UnsupportedOperationException;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\Panther\Tests\TestCase;
use Symfony\Component\Panther\WebDriver\WebDriverCheckbox;
@@ -36,6 +37,7 @@ public function testWebDriverCheckboxIsMultiple(): void
$this->assertFalse($c->isMultiple());
}
+ #[DataProvider('getOptionsDataProvider')]
/**
* @dataProvider getOptionsDataProvider
*/
@@ -74,6 +76,7 @@ public function testWebDriverCheckboxGetFirstSelectedOption(): void
$this->assertSame('j3a', $c->getFirstSelectedOption()->getAttribute('value'));
}
+ #[DataProvider('selectByValueDataProvider')]
/**
* @dataProvider selectByValueDataProvider
*/
@@ -111,6 +114,7 @@ public function testWebDriverCheckboxSelectByValueInvalid(): void
$c->selectByValue('notexist');
}
+ #[DataProvider('selectByIndexDataProvider')]
/**
* @dataProvider selectByIndexDataProvider
*/
@@ -148,6 +152,7 @@ public function testWebDriverCheckboxSelectByIndexInvalid(): void
$c->selectByIndex(\PHP_INT_MAX);
}
+ #[DataProvider('selectByVisibleTextDataProvider')]
/**
* @dataProvider selectByVisibleTextDataProvider
*/
@@ -169,6 +174,7 @@ public static function selectByVisibleTextDataProvider(): iterable
yield ['radio', 'J3C', 'j3c'];
}
+ #[DataProvider('selectByVisiblePartialTextDataProvider')]
/**
* @dataProvider selectByVisiblePartialTextDataProvider
*/
@@ -300,6 +306,7 @@ public function testWebDriverCheckboxDeselectByVisiblePartialTextRadio(): void
$c->deselectByVisiblePartialText('AB');
}
+ #[DataProvider('selectByValueDataProviderWithZeroValue')]
/**
* @dataProvider selectByValueDataProviderWithZeroValue
*/
diff --git a/tests/WebDriver/WebDriverMouseTest.php b/tests/WebDriver/WebDriverMouseTest.php
index f31fbe36..c4bc6599 100644
--- a/tests/WebDriver/WebDriverMouseTest.php
+++ b/tests/WebDriver/WebDriverMouseTest.php
@@ -13,6 +13,7 @@
namespace Symfony\Component\Panther\Tests\WebDriver;
+use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Component\Panther\Tests\TestCase;
/**
@@ -25,6 +26,7 @@ public static function setUpBeforeClass(): void
self::createPantherClient()->request('GET', self::$baseUri.'/mouse.html');
}
+ #[DataProvider('provide')]
/**
* @dataProvider provide
*/