From 26dbc5ecb455720f49fc4ff707d88e88fafe426d Mon Sep 17 00:00:00 2001 From: Anatoliy Belsky <ab@php.net> Date: Tue, 10 Apr 2012 12:33:11 +0200 Subject: [PATCH] Fixed bug #61611 ext\date\tests\date_default_timezone_get-2.phpt fails The behaviour on windows is to select an arbitrary timezone from the current system settings. This gives no chance to hardcode the timezone name, for instance for UTC+1 it could choose from the multiple names like Europe/Berlin or Europe/Paris . For this reason the test is parametrized so there is no hardcoded timezone data. The original test made to be skipped on windows and a duplicate was made for windows. Tested on debian and win7 both x86. --- .../date_default_timezone_get-2-win32.phpt | 20 +++++++++++++++++++ .../tests/date_default_timezone_get-2.phpt | 4 ++++ 2 files changed, 24 insertions(+) create mode 100644 ext/date/tests/date_default_timezone_get-2-win32.phpt diff --git a/ext/date/tests/date_default_timezone_get-2-win32.phpt b/ext/date/tests/date_default_timezone_get-2-win32.phpt new file mode 100644 index 0000000000..34da0228b9 --- /dev/null +++ b/ext/date/tests/date_default_timezone_get-2-win32.phpt @@ -0,0 +1,20 @@ +--TEST-- +date_default_timezone_get() function [2] +--SKIPIF-- +<?php + if(substr(PHP_OS, 0, 3) != 'WIN') die("skip on non windows"); +?> +--INI-- +date.timezone= +--FILE-- +<?php + putenv('TZ='); + echo date_default_timezone_get(), "\n"; + /* The behaviour on windows is to select an arbitrary timezone name from the current system settings. + This gives no chance to hardcode the timezone name, for instance for UTC+1 it could choose + from the multiple names like Europe/Berlin or Europe/Paris . For this reason the test is + parametrized so there is no hardcoded timezone data.*/ +?> +--EXPECTF-- +Warning: date_default_timezone_get(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected '%s' for '%s' instead in %sdate_default_timezone_get-2-win32.php on line 3 +%s diff --git a/ext/date/tests/date_default_timezone_get-2.phpt b/ext/date/tests/date_default_timezone_get-2.phpt index 11bd3070a0..a72634ee75 100644 --- a/ext/date/tests/date_default_timezone_get-2.phpt +++ b/ext/date/tests/date_default_timezone_get-2.phpt @@ -1,5 +1,9 @@ --TEST-- date_default_timezone_get() function [2] +--SKIPIF-- +<?php + if(substr(PHP_OS, 0, 3) == 'WIN') die("skip on windows"); +?> --INI-- date.timezone= --FILE-- -- 2.40.0