Skip to content

Commit b8b25b3

Browse files
committed
fix(test): fail on php errors
1 parent 136b3c1 commit b8b25b3

File tree

27 files changed

+127
-44
lines changed

27 files changed

+127
-44
lines changed

.github/workflows/continuous-integration.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ jobs:
2727
services:
2828
memcached:
2929
image: "memcached:${{ matrix.memcached-version }}"
30+
ports:
31+
- 11211:11211
3032

3133
steps:
3234
- name: Checkout
@@ -39,7 +41,7 @@ jobs:
3941
with:
4042
php-version: "${{ matrix.php-version }}"
4143
extensions: apcu
42-
ini-values: apc.enable_cli=1
44+
ini-values: error_reporting=5111,apc.enable_cli=on,apc.use_request_time=off,memory_limit=-1,short_open_tag=off,magic_quotes_gpc=off,date.timezone="UTC"
4345

4446
- name: Get composer cache directory
4547
id: composer-cache

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/lib/*/doctrine/*/base/
55
/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/cache/
66
lib/plugins/sfDoctrinePlugin/test/functional/fixtures/log/
7+
/lib/plugins/sfDoctrinePlugin/test/functional/fixtures/data/*.sqlite*
78
/vendor
89
/composer.lock
910
.php-cs-fixer.cache

docker-compose.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ services:
2828
{
2929
echo 'pdo_mysql.default_socket = /var/run/mysqld/mysql.sock'
3030
echo 'memory_limit = -1'
31+
echo 'error_reporting = '`
32+
php -r 'echo (E_ALL | E_STRICT) ^ E_USER_DEPRECATED ^ E_DEPRECATED ^ E_STRICT ^ E_USER_NOTICE ^ E_NOTICE;'
33+
`
3134
echo 'short_open_tag = off'
3235
echo 'magic_quotes_gpc = off'
3336
echo 'date.timezone = "UTC"'
@@ -57,6 +60,9 @@ services:
5760
{
5861
echo 'pdo_mysql.default_socket = /var/run/mysqld/mysql.sock'
5962
echo 'memory_limit = -1'
63+
echo 'error_reporting = '`
64+
php -r 'echo (E_ALL | E_STRICT) ^ E_USER_DEPRECATED ^ E_DEPRECATED ^ E_STRICT ^ E_USER_NOTICE ^ E_NOTICE;'
65+
`
6066
echo 'short_open_tag = off'
6167
echo 'magic_quotes_gpc = off'
6268
echo 'date.timezone = "UTC"'

lib/autoload/sfCoreAutoload.class.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@ class sfCoreAutoload
192192
'sfwebdebuglogger' => 'log/sfWebDebugLogger.class.php',
193193
'sfmailer' => 'mailer/sfMailer.class.php',
194194
'sfmailermessageloggerplugin' => 'mailer/sfMailerMessageLoggerPlugin.class.php',
195+
'sfmailerswiftmessage' => 'mailer/sfMailerSwiftMessage.php',
195196
'sfnomailer' => 'mailer/sfNoMailer.class.php',
196197
'sfpearconfig' => 'plugin/sfPearConfig.class.php',
197198
'sfpeardownloader' => 'plugin/sfPearDownloader.class.php',
@@ -371,8 +372,8 @@ class sfCoreAutoload
371372
'sfwidgetforminput' => 'widget/sfWidgetFormInput.class.php',
372373
'sfwidgetforminputcheckbox' => 'widget/sfWidgetFormInputCheckbox.class.php',
373374
'sfwidgetforminputfile' => 'widget/sfWidgetFormInputFile.class.php',
374-
'sfwidgetforminputfilemulti' => 'widget/sfWidgetFormInputFileMulti.class.php',
375375
'sfwidgetforminputfileeditable' => 'widget/sfWidgetFormInputFileEditable.class.php',
376+
'sfwidgetforminputfilemulti' => 'widget/sfWidgetFormInputFileMulti.class.php',
376377
'sfwidgetforminputhidden' => 'widget/sfWidgetFormInputHidden.class.php',
377378
'sfwidgetforminputpassword' => 'widget/sfWidgetFormInputPassword.class.php',
378379
'sfwidgetforminputread' => 'widget/sfWidgetFormInputRead.class.php',
@@ -519,11 +520,11 @@ public static function make()
519520
if (false !== stripos($contents, 'class '.$class)
520521
|| false !== stripos($contents, 'interface '.$class)
521522
|| false !== stripos($contents, 'trait '.$class)) {
522-
$classes .= sprintf(" '%s' => '%s',\n", strtolower($class), substr(str_replace($libDir, '', $file), 1));
523+
$classes .= sprintf(" '%s' => '%s',\n", strtolower($class), substr(str_replace($libDir, '', $file), 1));
523524
}
524525
}
525526

526-
$content = preg_replace('/protected \$classes = array *\(.*?\);/s', sprintf("protected \$classes = array(\n%s );", $classes), file_get_contents(__FILE__));
527+
$content = preg_replace('/protected \$classes = array *\(.*?\);/s', sprintf("protected \$classes = array(\n%s );", $classes), file_get_contents(__FILE__));
527528

528529
file_put_contents(__FILE__, $content);
529530
}

lib/config/autoload/swift.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?php
2+
3+
if (!class_exists('Swift')) {
4+
$swift_dir = sfConfig::get('sf_symfony_lib_dir').'/vendor/swiftmailer/lib';
5+
require_once $swift_dir.'/swift_required.php';
6+
}

lib/config/sfFactoryConfigHandler.class.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -222,10 +222,7 @@ public function execute($configFiles)
222222

223223
case 'mailer':
224224
$instances[] = sprintf(
225-
"if (!class_exists('Swift')) {\n".
226-
" \$swift_dir = sfConfig::get('sf_swiftmailer_dir', sfConfig::get('sf_symfony_lib_dir').'/vendor/swiftmailer/lib');\n".
227-
" require_once \$swift_dir.'/swift_required.php';\n".
228-
"}\n".
225+
preg_replace('/<\?php\s*/', '', file_get_contents(__DIR__.'/autoload/swift.php')).
229226
"\$this->setMailerConfiguration(array_merge(array('class' => sfConfig::get('sf_factory_mailer', '%s')), sfConfig::get('sf_factory_mailer_parameters', %s)));\n",
230227
$class,
231228
var_export($parameters, true)

lib/mailer/sfMailer.class.php

100755100644
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public function __construct(sfEventDispatcher $dispatcher, $options)
5656
'logging' => false,
5757
'delivery_strategy' => self::REALTIME,
5858
'transport' => array(
59-
'class' => 'Swift_MailTransport',
59+
'class' => class_exists('Swift_MailTransport') ? 'Swift_MailTransport' : 'Swift_SmtpTransport',
6060
'param' => array(),
6161
),
6262
), $options);
@@ -260,7 +260,7 @@ public function sendNextImmediately()
260260
*
261261
* @return false|int The number of sent emails
262262
*/
263-
public function send($message, &$failedRecipients = null)
263+
public function send(sfMailerSwiftMessage $message, &$failedRecipients = null)
264264
{
265265
if ($this->force) {
266266
$this->force = false;

lib/mailer/sfMailerSwiftMessage.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?php
2+
3+
/*
4+
* This file is part of the symfony package.
5+
* (c) Fabien Potencier <[email protected]>
6+
*
7+
* For the full copyright and license information, please view the LICENSE
8+
* file that was distributed with this source code.
9+
*/
10+
11+
class_exists('Swift');
12+
13+
if (version_compare(Swift::VERSION, '6.0.0') >= 0) {
14+
class_alias('Swift_Mime_SimpleMessage', 'sfMailerSwiftMessage');
15+
} else {
16+
class_alias('Swift_Mime_Message', 'sfMailerSwiftMessage');
17+
}

lib/plugins/sfDoctrinePlugin/lib/mailer/Swift_DoctrineSpool.class.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ public function stop()
6767
/**
6868
* Stores a message in the queue.
6969
*
70-
* @param Swift_Mime_Message $message The message to store
70+
* @param Swift_Mime_Message|Swift_Mime_SimpleMessage $message The message to store
7171
*/
72-
public function queueMessage(Swift_Mime_Message $message)
72+
public function queueMessage(sfMailerSwiftMessage $message)
7373
{
7474
$object = new $this->model();
7575

lib/plugins/sfDoctrinePlugin/test/functional/fixtures/apps/backend/config/settings.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ dev:
1313

1414
test:
1515
.settings:
16-
error_reporting: <?php echo ((E_ALL | E_STRICT) ^ E_NOTICE)."\n" ?>
16+
error_reporting: <?php echo ((E_ALL | E_STRICT) ^ E_USER_DEPRECATED ^ E_DEPRECATED ^ E_STRICT ^ E_USER_NOTICE ^ E_NOTICE)."\n" ?>
1717
cache: false
1818
web_debug: false
1919
no_script_name: false

0 commit comments

Comments
 (0)