Skip to content

Commit e1e02b2

Browse files
committed
fix(test): fail on php errors
1 parent 154bc18 commit e1e02b2

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
@@ -28,6 +28,8 @@ jobs:
2828
services:
2929
memcached:
3030
image: "memcached:${{ matrix.memcached-version }}"
31+
ports:
32+
- 11211:11211
3133

3234
steps:
3335
- name: Checkout
@@ -40,7 +42,7 @@ jobs:
4042
with:
4143
php-version: "${{ matrix.php-version }}"
4244
extensions: apcu
43-
ini-values: apc.enable_cli=1
45+
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"
4446

4547
- name: Get composer cache directory
4648
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
@@ -194,6 +194,7 @@ class sfCoreAutoload
194194
'sfwebdebuglogger' => 'log/sfWebDebugLogger.class.php',
195195
'sfmailer' => 'mailer/sfMailer.class.php',
196196
'sfmailermessageloggerplugin' => 'mailer/sfMailerMessageLoggerPlugin.class.php',
197+
'sfmailerswiftmessage' => 'mailer/sfMailerSwiftMessage.php',
197198
'sfnomailer' => 'mailer/sfNoMailer.class.php',
198199
'sfpearconfig' => 'plugin/sfPearConfig.class.php',
199200
'sfpeardownloader' => 'plugin/sfPearDownloader.class.php',
@@ -373,8 +374,8 @@ class sfCoreAutoload
373374
'sfwidgetforminput' => 'widget/sfWidgetFormInput.class.php',
374375
'sfwidgetforminputcheckbox' => 'widget/sfWidgetFormInputCheckbox.class.php',
375376
'sfwidgetforminputfile' => 'widget/sfWidgetFormInputFile.class.php',
376-
'sfwidgetforminputfilemulti' => 'widget/sfWidgetFormInputFileMulti.class.php',
377377
'sfwidgetforminputfileeditable' => 'widget/sfWidgetFormInputFileEditable.class.php',
378+
'sfwidgetforminputfilemulti' => 'widget/sfWidgetFormInputFileMulti.class.php',
378379
'sfwidgetforminputhidden' => 'widget/sfWidgetFormInputHidden.class.php',
379380
'sfwidgetforminputpassword' => 'widget/sfWidgetFormInputPassword.class.php',
380381
'sfwidgetforminputread' => 'widget/sfWidgetFormInputRead.class.php',
@@ -521,11 +522,11 @@ public static function make()
521522
if (false !== stripos($contents, 'class '.$class)
522523
|| false !== stripos($contents, 'interface '.$class)
523524
|| false !== stripos($contents, 'trait '.$class)) {
524-
$classes .= sprintf(" '%s' => '%s',\n", strtolower($class), substr(str_replace($libDir, '', $file), 1));
525+
$classes .= sprintf(" '%s' => '%s',\n", strtolower($class), substr(str_replace($libDir, '', $file), 1));
525526
}
526527
}
527528

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

530531
file_put_contents(__FILE__, $content);
531532
}

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
@@ -224,10 +224,7 @@ public function execute($configFiles)
224224

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

lib/mailer/sfMailer.class.php

100755100644
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public function __construct(sfEventDispatcher $dispatcher, $options)
5858
'logging' => false,
5959
'delivery_strategy' => self::REALTIME,
6060
'transport' => array(
61-
'class' => 'Swift_MailTransport',
61+
'class' => class_exists('Swift_MailTransport') ? 'Swift_MailTransport' : 'Swift_SmtpTransport',
6262
'param' => array(),
6363
),
6464
), $options);
@@ -262,7 +262,7 @@ public function sendNextImmediately()
262262
*
263263
* @return false|int The number of sent emails
264264
*/
265-
public function send($message, &$failedRecipients = null)
265+
public function send(sfMailerSwiftMessage $message, &$failedRecipients = null)
266266
{
267267
if ($this->force) {
268268
$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
@@ -69,9 +69,9 @@ public function stop()
6969
/**
7070
* Stores a message in the queue.
7171
*
72-
* @param Swift_Mime_Message $message The message to store
72+
* @param Swift_Mime_Message|Swift_Mime_SimpleMessage $message The message to store
7373
*/
74-
public function queueMessage(Swift_Mime_Message $message)
74+
public function queueMessage(sfMailerSwiftMessage $message)
7575
{
7676
$object = new $this->model();
7777

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)