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

After further reflection about the mess cleaned up in commit 39b691f25,
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.
pull/17/head
Tom Lane 9 years ago
parent da6ea70c32
commit c7f68bea22
  1. 15
      src/test/regress/expected/timestamptz.out
  2. 5
      src/test/regress/sql/timestamptz.sql
  3. 5
      src/timezone/README

@ -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';
-- --
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,
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

Loading…
Cancel
Save