Skip to content

Commit 29f46fc

Browse files
bug symfony#49368 [BC Break] Make data providers for abstract test cases static (OskarStark, alexandre-daubois)
This PR was merged into the 5.4 branch. Discussion ---------- [BC Break] Make data providers for abstract test cases static | Q | A | ------------- | --- | Branch? | 5.4 | Bug fix? | no | New feature? | no | Deprecations? | no | Tickets | Refs symfony#48668 | License | MIT | Doc PR | - Follows symfony#48668 (comment) ### Todos * [x] Bump min version in `composer.json` Notifier `@OskarStark` * [x] Bump min version in `composer.json` Translation `@OskarStark` * [x] Bump min version in `composer.json` Mailer `@OskarStark` * [x] Bump min version in `composer.json` Security `@OskarStark` - _nothing todo_ * [x] document BC break in CHANGELOG files Notifier `@OskarStark` * [x] document BC break in CHANGELOG files Translation `@OskarStark` * [x] document BC break in CHANGELOG files Mailer `@OskarStark` * [x] document BC break in CHANGELOG files Security `@OskarStark` * [x] document BC break in UPGRADE files Notifier `@OskarStark` * [x] document BC break in UPGRADE files Translation `@OskarStark` * [x] document BC break in UPGRADE files Mailer `@OskarStark` * [x] document BC break in UPGRADE files Security `@OskarStark` * [x] remove $this in static methods `@alexandre`-daubois * [x] make tests green Commits ------- c444a43 [Translation][Mailer] Convert `$this` calls to static ones in data providers 77c8444 [BC Break] Make data providers for abstract test cases static
2 parents 65c427d + c444a43 commit 29f46fc

File tree

93 files changed

+505
-456
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+505
-456
lines changed

UPGRADE-5.4.md

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,12 @@ Lock
6363
* Deprecate usage of `PdoStore` with a `Doctrine\DBAL\Connection` or a DBAL url, use the new `DoctrineDbalStore` instead
6464
* Deprecate usage of `PostgreSqlStore` with a `Doctrine\DBAL\Connection` or a DBAL url, use the new `DoctrineDbalPostgreSqlStore` instead
6565

66+
Mailer
67+
------
68+
69+
* The following data providers for `TransportFactoryTestCase` are now static: `supportsProvider()`, `createProvider()`, `unsupportedSchemeProvider()`and `incompleteDsnProvider()`
70+
* The following data providers for `TransportTestCase` are now static: `toStringProvider()`, `supportedMessagesProvider()` and `unsupportedMessagesProvider()`
71+
6672
Messenger
6773
---------
6874

@@ -78,8 +84,8 @@ Monolog
7884
Notifier
7985
--------
8086

81-
* [BC BREAK] The following data providers for `TransportTestCase` are now static: `toStringProvider()`, `supportedMessagesProvider()` and `unsupportedMessagesProvider()`
82-
* [BC BREAK] The `TransportTestCase::createTransport()` method is now static
87+
* The following data providers for `TransportTestCase` are now static: `toStringProvider()`, `supportedMessagesProvider()` and `unsupportedMessagesProvider()`
88+
* The `TransportTestCase::createTransport()` method is now static
8389

8490
SecurityBundle
8591
--------------
@@ -108,6 +114,7 @@ SecurityBundle
108114
Security
109115
--------
110116

117+
* `AccessDecisionStrategyTestCase::provideStrategyTests()` is now static
111118
* Deprecate `AuthenticationEvents::AUTHENTICATION_FAILURE`, use the `LoginFailureEvent` instead
112119
* Deprecate the `$authenticationEntryPoint` argument of `ChannelListener`, and add `$httpPort` and `$httpsPort` arguments
113120
* Deprecate `RetryAuthenticationEntryPoint`, this code is now inlined in the `ChannelListener`
@@ -197,3 +204,9 @@ Security
197204
$token = new PreAuthenticatedToken($user, $firewallName, $roles);
198205
$token = new SwitchUserToken($user, $firewallName, $roles, $originalToken);
199206
```
207+
208+
Translation
209+
-----------
210+
211+
* The following data providers for `ProviderFactoryTestCase` are now static: `supportsProvider()`, `createProvider()`, `unsupportedSchemeProvider()`and `incompleteDsnProvider()`
212+
* `ProviderTestCase::toStringProvider()` is now static

src/Symfony/Component/Mailer/Bridge/Amazon/Tests/Transport/SesTransportFactoryTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@
2323

2424
class SesTransportFactoryTest extends TransportFactoryTestCase
2525
{
26-
public function getFactory(): TransportFactoryInterface
26+
public static function getFactory(): TransportFactoryInterface
2727
{
28-
return new SesTransportFactory($this->getDispatcher(), $this->getClient(), $this->getLogger());
28+
return new SesTransportFactory(self::getDispatcher(), self::getClient(), self::getLogger());
2929
}
3030

31-
public function supportsProvider(): iterable
31+
public static function supportsProvider(): iterable
3232
{
3333
yield [
3434
new Dsn('ses+api', 'default'),
@@ -61,11 +61,11 @@ public function supportsProvider(): iterable
6161
];
6262
}
6363

64-
public function createProvider(): iterable
64+
public static function createProvider(): iterable
6565
{
66-
$client = $this->getClient();
67-
$dispatcher = $this->getDispatcher();
68-
$logger = $this->getLogger();
66+
$client = self::getClient();
67+
$dispatcher = self::getDispatcher();
68+
$logger = self::getLogger();
6969

7070
yield [
7171
new Dsn('ses+api', 'default', self::USER, self::PASSWORD),
@@ -158,15 +158,15 @@ public function createProvider(): iterable
158158
];
159159
}
160160

161-
public function unsupportedSchemeProvider(): iterable
161+
public static function unsupportedSchemeProvider(): iterable
162162
{
163163
yield [
164164
new Dsn('ses+foo', 'default', self::USER, self::PASSWORD),
165165
'The "ses+foo" scheme is not supported; supported schemes for mailer "ses" are: "ses", "ses+api", "ses+https", "ses+smtp", "ses+smtps".',
166166
];
167167
}
168168

169-
public function incompleteDsnProvider(): iterable
169+
public static function incompleteDsnProvider(): iterable
170170
{
171171
yield [new Dsn('ses+smtp', 'default', self::USER)];
172172
}

src/Symfony/Component/Mailer/Bridge/Amazon/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"async-aws/ses": "^1.0",
2121
"psr/event-dispatcher": "^1",
2222
"symfony/deprecation-contracts": "^2.1|^3",
23-
"symfony/mailer": "^4.4.21|^5.2.6|^6.0"
23+
"symfony/mailer": "^5.4.21|^6.2.7"
2424
},
2525
"require-dev": {
2626
"symfony/http-client": "^4.4|^5.0|^6.0"

src/Symfony/Component/Mailer/Bridge/Google/Tests/Transport/GmailTransportFactoryTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919

2020
class GmailTransportFactoryTest extends TransportFactoryTestCase
2121
{
22-
public function getFactory(): TransportFactoryInterface
22+
public static function getFactory(): TransportFactoryInterface
2323
{
24-
return new GmailTransportFactory($this->getDispatcher(), null, $this->getLogger());
24+
return new GmailTransportFactory(self::getDispatcher(), null, self::getLogger());
2525
}
2626

27-
public function supportsProvider(): iterable
27+
public static function supportsProvider(): iterable
2828
{
2929
yield [
3030
new Dsn('gmail', 'default'),
@@ -47,33 +47,33 @@ public function supportsProvider(): iterable
4747
];
4848
}
4949

50-
public function createProvider(): iterable
50+
public static function createProvider(): iterable
5151
{
5252
yield [
5353
new Dsn('gmail', 'default', self::USER, self::PASSWORD),
54-
new GmailSmtpTransport(self::USER, self::PASSWORD, $this->getDispatcher(), $this->getLogger()),
54+
new GmailSmtpTransport(self::USER, self::PASSWORD, self::getDispatcher(), self::getLogger()),
5555
];
5656

5757
yield [
5858
new Dsn('gmail+smtp', 'default', self::USER, self::PASSWORD),
59-
new GmailSmtpTransport(self::USER, self::PASSWORD, $this->getDispatcher(), $this->getLogger()),
59+
new GmailSmtpTransport(self::USER, self::PASSWORD, self::getDispatcher(), self::getLogger()),
6060
];
6161

6262
yield [
6363
new Dsn('gmail+smtps', 'default', self::USER, self::PASSWORD),
64-
new GmailSmtpTransport(self::USER, self::PASSWORD, $this->getDispatcher(), $this->getLogger()),
64+
new GmailSmtpTransport(self::USER, self::PASSWORD, self::getDispatcher(), self::getLogger()),
6565
];
6666
}
6767

68-
public function unsupportedSchemeProvider(): iterable
68+
public static function unsupportedSchemeProvider(): iterable
6969
{
7070
yield [
7171
new Dsn('gmail+foo', 'default', self::USER, self::PASSWORD),
7272
'The "gmail+foo" scheme is not supported; supported schemes for mailer "gmail" are: "gmail", "gmail+smtp", "gmail+smtps".',
7373
];
7474
}
7575

76-
public function incompleteDsnProvider(): iterable
76+
public static function incompleteDsnProvider(): iterable
7777
{
7878
yield [new Dsn('gmail+smtp', 'default', self::USER)];
7979

src/Symfony/Component/Mailer/Bridge/Google/composer.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@
1818
"require": {
1919
"php": ">=7.2.5",
2020
"psr/event-dispatcher": "^1",
21-
"symfony/mailer": "^4.4|^5.0|^6.0"
21+
"symfony/mailer": "^5.4.21|^6.2.7"
22+
},
23+
"require-dev": {
24+
"symfony/http-client": "^4.4|^5.0|^6.0"
2225
},
2326
"autoload": {
2427
"psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Google\\": "" },

src/Symfony/Component/Mailer/Bridge/Mailchimp/Tests/Transport/MandrillTransportFactoryTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@
2121

2222
class MandrillTransportFactoryTest extends TransportFactoryTestCase
2323
{
24-
public function getFactory(): TransportFactoryInterface
24+
public static function getFactory(): TransportFactoryInterface
2525
{
26-
return new MandrillTransportFactory($this->getDispatcher(), $this->getClient(), $this->getLogger());
26+
return new MandrillTransportFactory(self::getDispatcher(), self::getClient(), self::getLogger());
2727
}
2828

29-
public function supportsProvider(): iterable
29+
public static function supportsProvider(): iterable
3030
{
3131
yield [
3232
new Dsn('mandrill', 'default'),
@@ -59,11 +59,11 @@ public function supportsProvider(): iterable
5959
];
6060
}
6161

62-
public function createProvider(): iterable
62+
public static function createProvider(): iterable
6363
{
64-
$client = $this->getClient();
65-
$dispatcher = $this->getDispatcher();
66-
$logger = $this->getLogger();
64+
$client = self::getClient();
65+
$dispatcher = self::getDispatcher();
66+
$logger = self::getLogger();
6767

6868
yield [
6969
new Dsn('mandrill+api', 'default', self::USER),
@@ -101,15 +101,15 @@ public function createProvider(): iterable
101101
];
102102
}
103103

104-
public function unsupportedSchemeProvider(): iterable
104+
public static function unsupportedSchemeProvider(): iterable
105105
{
106106
yield [
107107
new Dsn('mandrill+foo', 'default', self::USER),
108108
'The "mandrill+foo" scheme is not supported; supported schemes for mailer "mandrill" are: "mandrill", "mandrill+api", "mandrill+https", "mandrill+smtp", "mandrill+smtps".',
109109
];
110110
}
111111

112-
public function incompleteDsnProvider(): iterable
112+
public static function incompleteDsnProvider(): iterable
113113
{
114114
yield [new Dsn('mandrill+api', 'default')];
115115

src/Symfony/Component/Mailer/Bridge/Mailchimp/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"require": {
1919
"php": ">=7.2.5",
2020
"psr/event-dispatcher": "^1",
21-
"symfony/mailer": "^5.1|^6.0"
21+
"symfony/mailer": "^5.4.21|^6.2.7"
2222
},
2323
"require-dev": {
2424
"symfony/http-client": "^4.4|^5.0|^6.0"

src/Symfony/Component/Mailer/Bridge/Mailgun/Tests/Transport/MailgunTransportFactoryTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@
2121

2222
class MailgunTransportFactoryTest extends TransportFactoryTestCase
2323
{
24-
public function getFactory(): TransportFactoryInterface
24+
public static function getFactory(): TransportFactoryInterface
2525
{
26-
return new MailgunTransportFactory($this->getDispatcher(), $this->getClient(), $this->getLogger());
26+
return new MailgunTransportFactory(self::getDispatcher(), self::getClient(), self::getLogger());
2727
}
2828

29-
public function supportsProvider(): iterable
29+
public static function supportsProvider(): iterable
3030
{
3131
yield [
3232
new Dsn('mailgun+api', 'default'),
@@ -59,11 +59,11 @@ public function supportsProvider(): iterable
5959
];
6060
}
6161

62-
public function createProvider(): iterable
62+
public static function createProvider(): iterable
6363
{
64-
$client = $this->getClient();
65-
$dispatcher = $this->getDispatcher();
66-
$logger = $this->getLogger();
64+
$client = self::getClient();
65+
$dispatcher = self::getDispatcher();
66+
$logger = self::getLogger();
6767

6868
yield [
6969
new Dsn('mailgun+api', 'default', self::USER, self::PASSWORD),
@@ -106,15 +106,15 @@ public function createProvider(): iterable
106106
];
107107
}
108108

109-
public function unsupportedSchemeProvider(): iterable
109+
public static function unsupportedSchemeProvider(): iterable
110110
{
111111
yield [
112112
new Dsn('mailgun+foo', 'default', self::USER, self::PASSWORD),
113113
'The "mailgun+foo" scheme is not supported; supported schemes for mailer "mailgun" are: "mailgun", "mailgun+api", "mailgun+https", "mailgun+smtp", "mailgun+smtps".',
114114
];
115115
}
116116

117-
public function incompleteDsnProvider(): iterable
117+
public static function incompleteDsnProvider(): iterable
118118
{
119119
yield [new Dsn('mailgun+api', 'default', self::USER)];
120120

src/Symfony/Component/Mailer/Bridge/Mailgun/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"require": {
1919
"php": ">=7.2.5",
2020
"psr/event-dispatcher": "^1",
21-
"symfony/mailer": "^5.2.6|^6.0"
21+
"symfony/mailer": "^5.4.21|^6.2.7"
2222
},
2323
"require-dev": {
2424
"symfony/http-client": "^4.4|^5.0|^6.0"

src/Symfony/Component/Mailer/Bridge/Mailjet/Tests/Transport/MailjetTransportFactoryTest.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@
2020

2121
class MailjetTransportFactoryTest extends TransportFactoryTestCase
2222
{
23-
public function getFactory(): TransportFactoryInterface
23+
public static function getFactory(): TransportFactoryInterface
2424
{
25-
return new MailjetTransportFactory($this->getDispatcher(), $this->getClient(), $this->getLogger());
25+
return new MailjetTransportFactory(self::getDispatcher(), self::getClient(), self::getLogger());
2626
}
2727

28-
public function supportsProvider(): iterable
28+
public static function supportsProvider(): iterable
2929
{
3030
yield [
3131
new Dsn('mailjet+api', 'default'),
@@ -53,19 +53,19 @@ public function supportsProvider(): iterable
5353
];
5454
}
5555

56-
public function createProvider(): iterable
56+
public static function createProvider(): iterable
5757
{
58-
$dispatcher = $this->getDispatcher();
59-
$logger = $this->getLogger();
58+
$dispatcher = self::getDispatcher();
59+
$logger = self::getLogger();
6060

6161
yield [
6262
new Dsn('mailjet+api', 'default', self::USER, self::PASSWORD),
63-
new MailjetApiTransport(self::USER, self::PASSWORD, $this->getClient(), $dispatcher, $logger),
63+
new MailjetApiTransport(self::USER, self::PASSWORD, self::getClient(), $dispatcher, $logger),
6464
];
6565

6666
yield [
6767
new Dsn('mailjet+api', 'example.com', self::USER, self::PASSWORD),
68-
(new MailjetApiTransport(self::USER, self::PASSWORD, $this->getClient(), $dispatcher, $logger))->setHost('example.com'),
68+
(new MailjetApiTransport(self::USER, self::PASSWORD, self::getClient(), $dispatcher, $logger))->setHost('example.com'),
6969
];
7070

7171
yield [
@@ -84,15 +84,15 @@ public function createProvider(): iterable
8484
];
8585
}
8686

87-
public function unsupportedSchemeProvider(): iterable
87+
public static function unsupportedSchemeProvider(): iterable
8888
{
8989
yield [
9090
new Dsn('mailjet+foo', 'mailjet', self::USER, self::PASSWORD),
9191
'The "mailjet+foo" scheme is not supported; supported schemes for mailer "mailjet" are: "mailjet", "mailjet+api", "mailjet+smtp", "mailjet+smtps".',
9292
];
9393
}
9494

95-
public function incompleteDsnProvider(): iterable
95+
public static function incompleteDsnProvider(): iterable
9696
{
9797
yield [new Dsn('mailjet+smtp', 'default')];
9898
}

src/Symfony/Component/Mailer/Bridge/Mailjet/composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"require": {
1919
"php": ">=7.2.5",
2020
"psr/event-dispatcher": "^1",
21-
"symfony/mailer": "^4.4|^5.0|^6.0"
21+
"symfony/mailer": "^5.4.21|^6.2.7"
2222
},
2323
"require-dev": {
2424
"symfony/http-client": "^4.4|^5.0|^6.0"

0 commit comments

Comments
 (0)