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 */