aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2016-09-04 20:02:16 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2016-09-04 20:02:16 -0400
commit0ce080147a52dec71774c6eacbf855721926c448 (patch)
tree9a8d23a37cb66966e1f3499d6afd21dc009bb088 /src
parentc26a3aba7d58724377030a2ab6d44681f0d0ec23 (diff)
downloadpostgresql-0ce080147a52dec71774c6eacbf855721926c448.tar.gz
postgresql-0ce080147a52dec71774c6eacbf855721926c448.zip
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.
Diffstat (limited to 'src')
-rw-r--r--src/test/regress/expected/timestamptz.out15
-rw-r--r--src/test/regress/sql/timestamptz.sql5
-rw-r--r--src/timezone/README5
3 files changed, 25 insertions, 0 deletions
diff --git a/src/test/regress/expected/timestamptz.out b/src/test/regress/expected/timestamptz.out
index 88ab9a10843..9714e64e9cb 100644
--- a/src/test/regress/expected/timestamptz.out
+++ b/src/test/regress/expected/timestamptz.out
@@ -2558,3 +2558,18 @@ select count(distinct utc_offset) >= 24 as ok from pg_timezone_abbrevs;
t
(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)
+
diff --git a/src/test/regress/sql/timestamptz.sql b/src/test/regress/sql/timestamptz.sql
index 4c6e9edb29f..c00cc3b527e 100644
--- a/src/test/regress/sql/timestamptz.sql
+++ b/src/test/regress/sql/timestamptz.sql
@@ -460,3 +460,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_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;
diff --git a/src/timezone/README b/src/timezone/README
index 1df4ce1f69a..f2f80c7176a 100644
--- a/src/timezone/README
+++ b/src/timezone/README
@@ -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
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
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