Commit c7f68bea authored by Tom Lane's avatar Tom Lane

Add regression test coverage for non-default timezone abbreviation sets.

After further reflection about the mess cleaned up in commit 39b691f2,
I decided the main bit of test coverage that was still missing was to
check that the non-default abbreviation-set files we supply are usable.
Add that.

Back-patch to supported branches, just because it seems like a good
idea to keep this all in sync.
parent da6ea70c
...@@ -2623,3 +2623,18 @@ select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs; ...@@ -2623,3 +2623,18 @@ select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
t t
(1 row) (1 row)
-- Let's check the non-default timezone abbreviation sets, too
set timezone_abbreviations = 'Australia';
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
ok
----
t
(1 row)
set timezone_abbreviations = 'India';
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
ok
----
t
(1 row)
...@@ -479,3 +479,8 @@ SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'VET'; ...@@ -479,3 +479,8 @@ SELECT '2007-12-09 07:30:00 UTC'::timestamptz AT TIME ZONE 'VET';
-- --
select count(distinct utc_offset) >= 24 as ok from pg_timezone_names; select count(distinct utc_offset) >= 24 as ok from pg_timezone_names;
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs; select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
-- Let's check the non-default timezone abbreviation sets, too
set timezone_abbreviations = 'Australia';
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
set timezone_abbreviations = 'India';
select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
...@@ -34,6 +34,11 @@ in the same commit. Usually, if a known abbreviation has changed meaning, ...@@ -34,6 +34,11 @@ in the same commit. Usually, if a known abbreviation has changed meaning,
the appropriate fix is to make it refer to a long-form zone name instead the appropriate fix is to make it refer to a long-form zone name instead
of a fixed GMT offset. of a fixed GMT offset.
The core regression test suite does some simple validation of the zone
data and abbreviations data (notably by checking that the pg_timezone_names
and pg_timezone_abbrevs views don't throw errors). It's worth running it
as a cross-check on proposed updates.
When there has been a new release of Windows (probably including Service When there has been a new release of Windows (probably including Service
Packs), the list of matching timezones need to be updated. Run the Packs), the list of matching timezones need to be updated. Run the
script in src/tools/win32tzlist.pl on a Windows machine running this new script in src/tools/win32tzlist.pl on a Windows machine running this new
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment