Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F65632972
UtilsRegressionTest.java
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Jun 5, 04:19
Size
33 KB
Mime Type
text/x-c
Expires
Fri, Jun 7, 04:19 (2 d)
Engine
blob
Format
Raw Data
Handle
18104578
Attached To
R8218 ShoulderDB_ImportSegmentMeasureAnalyze
UtilsRegressionTest.java
View Options
/*
Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
The MySQL Connector/J is licensed under the terms of the GPLv2
<http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>, like most MySQL Connectors.
There are special exceptions to the terms and conditions of the GPLv2 as it is applied to
this software, see the FOSS License Exception
<http://www.mysql.com/about/legal/licensing/foss-exception.html>.
This program is free software; you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation; version 2
of the License.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this
program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth
Floor, Boston, MA 02110-1301 USA
*/
package
testsuite.regression
;
import
java.sql.SQLException
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Properties
;
import
java.util.TimeZone
;
import
com.mysql.jdbc.Connection
;
import
com.mysql.jdbc.ExceptionInterceptor
;
import
com.mysql.jdbc.SQLError
;
import
com.mysql.jdbc.TimeUtil
;
import
testsuite.BaseTestCase
;
/**
* Regression tests for utility classes.
*/
public
class
UtilsRegressionTest
extends
BaseTestCase
{
/**
* Creates a new UtilsRegressionTest.
*
* @param name
* the name of the test
*/
public
UtilsRegressionTest
(
String
name
)
{
super
(
name
);
}
/**
* Runs all test cases in this test suite
*
* @param args
*/
public
static
void
main
(
String
[]
args
)
{
junit
.
textui
.
TestRunner
.
run
(
UtilsRegressionTest
.
class
);
}
/**
* Tests all TimeZone mappings supported.
*
* @throws Exception
* if the test fails.
*/
public
void
testTimeZones
()
throws
Exception
{
/*
* Time Zones can be identified by many different ways according to Unicode CLDR database. The following map contain the correspondence between
* alternative Time Zone designations to Standard Time Zones ID (IANA/Olson database). This data was generated from IANA Time Zone database v. 2015f
* (http://www.iana.org/time-zones) and Unicode CLDR v.28 (http://cldr.unicode.org/)
*
* Both the file com/mysql/jdbc/TimeZoneMapping.properties and the following data are generated from a MySQL Connector/J internal utility.
*/
Map
<
String
,
String
>
tzMap
=
new
HashMap
<
String
,
String
>();
// GENERATED CODE STARTS HERE
// Windows Zones:
tzMap
.
put
(
"AUS Central Daylight Time"
,
"Australia/Darwin"
);
tzMap
.
put
(
"AUS Central Standard Time"
,
"Australia/Darwin"
);
tzMap
.
put
(
"AUS Eastern Daylight Time"
,
"Australia/Sydney"
);
tzMap
.
put
(
"AUS Eastern Standard Time"
,
"Australia/Sydney"
);
tzMap
.
put
(
"Afghanistan Daylight Time"
,
"Asia/Kabul"
);
tzMap
.
put
(
"Afghanistan Standard Time"
,
"Asia/Kabul"
);
tzMap
.
put
(
"Alaskan Daylight Time"
,
"America/Anchorage"
);
tzMap
.
put
(
"Alaskan Standard Time"
,
"America/Anchorage"
);
tzMap
.
put
(
"Aleutian Daylight Time"
,
"America/Adak"
);
tzMap
.
put
(
"Aleutian Standard Time"
,
"America/Adak"
);
tzMap
.
put
(
"Altai Daylight Time"
,
"Asia/Barnaul"
);
tzMap
.
put
(
"Altai Standard Time"
,
"Asia/Barnaul"
);
tzMap
.
put
(
"Arab Daylight Time"
,
"Asia/Riyadh"
);
tzMap
.
put
(
"Arab Standard Time"
,
"Asia/Riyadh"
);
tzMap
.
put
(
"Arabian Daylight Time"
,
"Asia/Dubai"
);
tzMap
.
put
(
"Arabian Standard Time"
,
"Asia/Dubai"
);
tzMap
.
put
(
"Arabic Daylight Time"
,
"Asia/Baghdad"
);
tzMap
.
put
(
"Arabic Standard Time"
,
"Asia/Baghdad"
);
tzMap
.
put
(
"Argentina Daylight Time"
,
"America/Buenos_Aires"
);
tzMap
.
put
(
"Argentina Standard Time"
,
"America/Buenos_Aires"
);
tzMap
.
put
(
"Astrakhan Daylight Time"
,
"Europe/Astrakhan"
);
tzMap
.
put
(
"Astrakhan Standard Time"
,
"Europe/Astrakhan"
);
tzMap
.
put
(
"Atlantic Daylight Time"
,
"America/Halifax"
);
tzMap
.
put
(
"Atlantic Standard Time"
,
"America/Halifax"
);
tzMap
.
put
(
"Aus Central W. Daylight Time"
,
"Australia/Eucla"
);
tzMap
.
put
(
"Aus Central W. Standard Time"
,
"Australia/Eucla"
);
tzMap
.
put
(
"Azerbaijan Daylight Time"
,
"Asia/Baku"
);
tzMap
.
put
(
"Azerbaijan Standard Time"
,
"Asia/Baku"
);
tzMap
.
put
(
"Azores Daylight Time"
,
"Atlantic/Azores"
);
tzMap
.
put
(
"Azores Standard Time"
,
"Atlantic/Azores"
);
tzMap
.
put
(
"Bahia Daylight Time"
,
"America/Bahia"
);
tzMap
.
put
(
"Bahia Standard Time"
,
"America/Bahia"
);
tzMap
.
put
(
"Bangladesh Daylight Time"
,
"Asia/Dhaka"
);
tzMap
.
put
(
"Bangladesh Standard Time"
,
"Asia/Dhaka"
);
tzMap
.
put
(
"Belarus Daylight Time"
,
"Europe/Minsk"
);
tzMap
.
put
(
"Belarus Standard Time"
,
"Europe/Minsk"
);
tzMap
.
put
(
"Bougainville Daylight Time"
,
"Pacific/Bougainville"
);
tzMap
.
put
(
"Bougainville Standard Time"
,
"Pacific/Bougainville"
);
tzMap
.
put
(
"Canada Central Daylight Time"
,
"America/Regina"
);
tzMap
.
put
(
"Canada Central Standard Time"
,
"America/Regina"
);
tzMap
.
put
(
"Cape Verde Daylight Time"
,
"Atlantic/Cape_Verde"
);
tzMap
.
put
(
"Cape Verde Standard Time"
,
"Atlantic/Cape_Verde"
);
tzMap
.
put
(
"Caucasus Daylight Time"
,
"Asia/Yerevan"
);
tzMap
.
put
(
"Caucasus Standard Time"
,
"Asia/Yerevan"
);
tzMap
.
put
(
"Cen. Australia Daylight Time"
,
"Australia/Adelaide"
);
tzMap
.
put
(
"Cen. Australia Standard Time"
,
"Australia/Adelaide"
);
tzMap
.
put
(
"Central America Daylight Time"
,
"America/Guatemala"
);
tzMap
.
put
(
"Central America Standard Time"
,
"America/Guatemala"
);
tzMap
.
put
(
"Central Asia Daylight Time"
,
"Asia/Almaty"
);
tzMap
.
put
(
"Central Asia Standard Time"
,
"Asia/Almaty"
);
tzMap
.
put
(
"Central Brazilian Daylight Time"
,
"America/Cuiaba"
);
tzMap
.
put
(
"Central Brazilian Standard Time"
,
"America/Cuiaba"
);
tzMap
.
put
(
"Central Daylight Time"
,
"America/Chicago"
);
tzMap
.
put
(
"Central Daylight Time (Mexico)"
,
"America/Mexico_City"
);
tzMap
.
put
(
"Central Europe Daylight Time"
,
"Europe/Budapest"
);
tzMap
.
put
(
"Central Europe Standard Time"
,
"Europe/Budapest"
);
tzMap
.
put
(
"Central European Daylight Time"
,
"Europe/Warsaw"
);
tzMap
.
put
(
"Central European Standard Time"
,
"Europe/Warsaw"
);
tzMap
.
put
(
"Central Pacific Daylight Time"
,
"Pacific/Guadalcanal"
);
tzMap
.
put
(
"Central Pacific Standard Time"
,
"Pacific/Guadalcanal"
);
tzMap
.
put
(
"Central Standard Time"
,
"America/Chicago"
);
tzMap
.
put
(
"Central Standard Time (Mexico)"
,
"America/Mexico_City"
);
tzMap
.
put
(
"Chatham Islands Daylight Time"
,
"Pacific/Chatham"
);
tzMap
.
put
(
"Chatham Islands Standard Time"
,
"Pacific/Chatham"
);
tzMap
.
put
(
"China Daylight Time"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"China Standard Time"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"Cuba Daylight Time"
,
"America/Havana"
);
tzMap
.
put
(
"Cuba Standard Time"
,
"America/Havana"
);
tzMap
.
put
(
"Dateline Daylight Time"
,
"Etc/GMT+12"
);
tzMap
.
put
(
"Dateline Standard Time"
,
"Etc/GMT+12"
);
tzMap
.
put
(
"E. Africa Daylight Time"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"E. Africa Standard Time"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"E. Australia Daylight Time"
,
"Australia/Brisbane"
);
tzMap
.
put
(
"E. Australia Standard Time"
,
"Australia/Brisbane"
);
tzMap
.
put
(
"E. Europe Daylight Time"
,
"Europe/Chisinau"
);
tzMap
.
put
(
"E. Europe Standard Time"
,
"Europe/Chisinau"
);
tzMap
.
put
(
"E. South America Daylight Time"
,
"America/Sao_Paulo"
);
tzMap
.
put
(
"E. South America Standard Time"
,
"America/Sao_Paulo"
);
tzMap
.
put
(
"Easter Island Daylight Time"
,
"Pacific/Easter"
);
tzMap
.
put
(
"Easter Island Standard Time"
,
"Pacific/Easter"
);
tzMap
.
put
(
"Eastern Daylight Time"
,
"America/New_York"
);
tzMap
.
put
(
"Eastern Daylight Time (Mexico)"
,
"America/Cancun"
);
tzMap
.
put
(
"Eastern Standard Time"
,
"America/New_York"
);
tzMap
.
put
(
"Eastern Standard Time (Mexico)"
,
"America/Cancun"
);
tzMap
.
put
(
"Egypt Daylight Time"
,
"Africa/Cairo"
);
tzMap
.
put
(
"Egypt Standard Time"
,
"Africa/Cairo"
);
tzMap
.
put
(
"Ekaterinburg Daylight Time"
,
"Asia/Yekaterinburg"
);
tzMap
.
put
(
"Ekaterinburg Standard Time"
,
"Asia/Yekaterinburg"
);
tzMap
.
put
(
"FLE Daylight Time"
,
"Europe/Kiev"
);
tzMap
.
put
(
"FLE Standard Time"
,
"Europe/Kiev"
);
tzMap
.
put
(
"Fiji Daylight Time"
,
"Pacific/Fiji"
);
tzMap
.
put
(
"Fiji Standard Time"
,
"Pacific/Fiji"
);
tzMap
.
put
(
"GMT Daylight Time"
,
"Europe/London"
);
tzMap
.
put
(
"GMT Standard Time"
,
"Europe/London"
);
tzMap
.
put
(
"GTB Daylight Time"
,
"Europe/Bucharest"
);
tzMap
.
put
(
"GTB Standard Time"
,
"Europe/Bucharest"
);
tzMap
.
put
(
"Georgian Daylight Time"
,
"Asia/Tbilisi"
);
tzMap
.
put
(
"Georgian Standard Time"
,
"Asia/Tbilisi"
);
tzMap
.
put
(
"Greenland Daylight Time"
,
"America/Godthab"
);
tzMap
.
put
(
"Greenland Standard Time"
,
"America/Godthab"
);
tzMap
.
put
(
"Greenwich Daylight Time"
,
"Atlantic/Reykjavik"
);
tzMap
.
put
(
"Greenwich Standard Time"
,
"Atlantic/Reykjavik"
);
tzMap
.
put
(
"Haiti Daylight Time"
,
"America/Port-au-Prince"
);
tzMap
.
put
(
"Haiti Standard Time"
,
"America/Port-au-Prince"
);
tzMap
.
put
(
"Hawaiian Daylight Time"
,
"Pacific/Honolulu"
);
tzMap
.
put
(
"Hawaiian Standard Time"
,
"Pacific/Honolulu"
);
tzMap
.
put
(
"India Daylight Time"
,
"Asia/Calcutta"
);
tzMap
.
put
(
"India Standard Time"
,
"Asia/Calcutta"
);
tzMap
.
put
(
"Iran Daylight Time"
,
"Asia/Tehran"
);
tzMap
.
put
(
"Iran Standard Time"
,
"Asia/Tehran"
);
tzMap
.
put
(
"Israel Daylight Time"
,
"Asia/Jerusalem"
);
tzMap
.
put
(
"Israel Standard Time"
,
"Asia/Jerusalem"
);
tzMap
.
put
(
"Jordan Daylight Time"
,
"Asia/Amman"
);
tzMap
.
put
(
"Jordan Standard Time"
,
"Asia/Amman"
);
tzMap
.
put
(
"Kaliningrad Daylight Time"
,
"Europe/Kaliningrad"
);
tzMap
.
put
(
"Kaliningrad Standard Time"
,
"Europe/Kaliningrad"
);
tzMap
.
put
(
"Korea Daylight Time"
,
"Asia/Seoul"
);
tzMap
.
put
(
"Korea Standard Time"
,
"Asia/Seoul"
);
tzMap
.
put
(
"Libya Daylight Time"
,
"Africa/Tripoli"
);
tzMap
.
put
(
"Libya Standard Time"
,
"Africa/Tripoli"
);
tzMap
.
put
(
"Line Islands Daylight Time"
,
"Pacific/Kiritimati"
);
tzMap
.
put
(
"Line Islands Standard Time"
,
"Pacific/Kiritimati"
);
tzMap
.
put
(
"Lord Howe Daylight Time"
,
"Australia/Lord_Howe"
);
tzMap
.
put
(
"Lord Howe Standard Time"
,
"Australia/Lord_Howe"
);
tzMap
.
put
(
"Magadan Daylight Time"
,
"Asia/Magadan"
);
tzMap
.
put
(
"Magadan Standard Time"
,
"Asia/Magadan"
);
tzMap
.
put
(
"Marquesas Daylight Time"
,
"Pacific/Marquesas"
);
tzMap
.
put
(
"Marquesas Standard Time"
,
"Pacific/Marquesas"
);
tzMap
.
put
(
"Mauritius Daylight Time"
,
"Indian/Mauritius"
);
tzMap
.
put
(
"Mauritius Standard Time"
,
"Indian/Mauritius"
);
tzMap
.
put
(
"Middle East Daylight Time"
,
"Asia/Beirut"
);
tzMap
.
put
(
"Middle East Standard Time"
,
"Asia/Beirut"
);
tzMap
.
put
(
"Montevideo Daylight Time"
,
"America/Montevideo"
);
tzMap
.
put
(
"Montevideo Standard Time"
,
"America/Montevideo"
);
tzMap
.
put
(
"Morocco Daylight Time"
,
"Africa/Casablanca"
);
tzMap
.
put
(
"Morocco Standard Time"
,
"Africa/Casablanca"
);
tzMap
.
put
(
"Mountain Daylight Time"
,
"America/Denver"
);
tzMap
.
put
(
"Mountain Daylight Time (Mexico)"
,
"America/Chihuahua"
);
tzMap
.
put
(
"Mountain Standard Time"
,
"America/Denver"
);
tzMap
.
put
(
"Mountain Standard Time (Mexico)"
,
"America/Chihuahua"
);
tzMap
.
put
(
"Myanmar Daylight Time"
,
"Asia/Rangoon"
);
tzMap
.
put
(
"Myanmar Standard Time"
,
"Asia/Rangoon"
);
tzMap
.
put
(
"N. Central Asia Daylight Time"
,
"Asia/Novosibirsk"
);
tzMap
.
put
(
"N. Central Asia Standard Time"
,
"Asia/Novosibirsk"
);
tzMap
.
put
(
"Namibia Daylight Time"
,
"Africa/Windhoek"
);
tzMap
.
put
(
"Namibia Standard Time"
,
"Africa/Windhoek"
);
tzMap
.
put
(
"Nepal Daylight Time"
,
"Asia/Katmandu"
);
tzMap
.
put
(
"Nepal Standard Time"
,
"Asia/Katmandu"
);
tzMap
.
put
(
"New Zealand Daylight Time"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"New Zealand Standard Time"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"Newfoundland Daylight Time"
,
"America/St_Johns"
);
tzMap
.
put
(
"Newfoundland Standard Time"
,
"America/St_Johns"
);
tzMap
.
put
(
"Norfolk Daylight Time"
,
"Pacific/Norfolk"
);
tzMap
.
put
(
"Norfolk Standard Time"
,
"Pacific/Norfolk"
);
tzMap
.
put
(
"North Asia Daylight Time"
,
"Asia/Krasnoyarsk"
);
tzMap
.
put
(
"North Asia East Daylight Time"
,
"Asia/Irkutsk"
);
tzMap
.
put
(
"North Asia East Standard Time"
,
"Asia/Irkutsk"
);
tzMap
.
put
(
"North Asia Standard Time"
,
"Asia/Krasnoyarsk"
);
tzMap
.
put
(
"North Korea Daylight Time"
,
"Asia/Pyongyang"
);
tzMap
.
put
(
"North Korea Standard Time"
,
"Asia/Pyongyang"
);
tzMap
.
put
(
"Omsk Daylight Time"
,
"Asia/Omsk"
);
tzMap
.
put
(
"Omsk Standard Time"
,
"Asia/Omsk"
);
tzMap
.
put
(
"Pacific Daylight Time"
,
"America/Los_Angeles"
);
tzMap
.
put
(
"Pacific Daylight Time (Mexico)"
,
"America/Tijuana"
);
tzMap
.
put
(
"Pacific SA Daylight Time"
,
"America/Santiago"
);
tzMap
.
put
(
"Pacific SA Standard Time"
,
"America/Santiago"
);
tzMap
.
put
(
"Pacific Standard Time"
,
"America/Los_Angeles"
);
tzMap
.
put
(
"Pacific Standard Time (Mexico)"
,
"America/Tijuana"
);
tzMap
.
put
(
"Pakistan Daylight Time"
,
"Asia/Karachi"
);
tzMap
.
put
(
"Pakistan Standard Time"
,
"Asia/Karachi"
);
tzMap
.
put
(
"Paraguay Daylight Time"
,
"America/Asuncion"
);
tzMap
.
put
(
"Paraguay Standard Time"
,
"America/Asuncion"
);
tzMap
.
put
(
"Romance Daylight Time"
,
"Europe/Paris"
);
tzMap
.
put
(
"Romance Standard Time"
,
"Europe/Paris"
);
tzMap
.
put
(
"Russia Time Zone 10"
,
"Asia/Srednekolymsk"
);
tzMap
.
put
(
"Russia Time Zone 11"
,
"Asia/Kamchatka"
);
tzMap
.
put
(
"Russia Time Zone 3"
,
"Europe/Samara"
);
tzMap
.
put
(
"Russian Daylight Time"
,
"Europe/Moscow"
);
tzMap
.
put
(
"Russian Standard Time"
,
"Europe/Moscow"
);
tzMap
.
put
(
"SA Eastern Daylight Time"
,
"America/Cayenne"
);
tzMap
.
put
(
"SA Eastern Standard Time"
,
"America/Cayenne"
);
tzMap
.
put
(
"SA Pacific Daylight Time"
,
"America/Bogota"
);
tzMap
.
put
(
"SA Pacific Standard Time"
,
"America/Bogota"
);
tzMap
.
put
(
"SA Western Daylight Time"
,
"America/La_Paz"
);
tzMap
.
put
(
"SA Western Standard Time"
,
"America/La_Paz"
);
tzMap
.
put
(
"SE Asia Daylight Time"
,
"Asia/Bangkok"
);
tzMap
.
put
(
"SE Asia Standard Time"
,
"Asia/Bangkok"
);
tzMap
.
put
(
"Saint Pierre Daylight Time"
,
"America/Miquelon"
);
tzMap
.
put
(
"Saint Pierre Standard Time"
,
"America/Miquelon"
);
tzMap
.
put
(
"Sakhalin Daylight Time"
,
"Asia/Sakhalin"
);
tzMap
.
put
(
"Sakhalin Standard Time"
,
"Asia/Sakhalin"
);
tzMap
.
put
(
"Samoa Daylight Time"
,
"Pacific/Apia"
);
tzMap
.
put
(
"Samoa Standard Time"
,
"Pacific/Apia"
);
tzMap
.
put
(
"Singapore Daylight Time"
,
"Asia/Singapore"
);
tzMap
.
put
(
"Singapore Standard Time"
,
"Asia/Singapore"
);
tzMap
.
put
(
"South Africa Daylight Time"
,
"Africa/Johannesburg"
);
tzMap
.
put
(
"South Africa Standard Time"
,
"Africa/Johannesburg"
);
tzMap
.
put
(
"Sri Lanka Daylight Time"
,
"Asia/Colombo"
);
tzMap
.
put
(
"Sri Lanka Standard Time"
,
"Asia/Colombo"
);
tzMap
.
put
(
"Syria Daylight Time"
,
"Asia/Damascus"
);
tzMap
.
put
(
"Syria Standard Time"
,
"Asia/Damascus"
);
tzMap
.
put
(
"Taipei Daylight Time"
,
"Asia/Taipei"
);
tzMap
.
put
(
"Taipei Standard Time"
,
"Asia/Taipei"
);
tzMap
.
put
(
"Tasmania Daylight Time"
,
"Australia/Hobart"
);
tzMap
.
put
(
"Tasmania Standard Time"
,
"Australia/Hobart"
);
tzMap
.
put
(
"Tocantins Daylight Time"
,
"America/Araguaina"
);
tzMap
.
put
(
"Tocantins Standard Time"
,
"America/Araguaina"
);
tzMap
.
put
(
"Tokyo Daylight Time"
,
"Asia/Tokyo"
);
tzMap
.
put
(
"Tokyo Standard Time"
,
"Asia/Tokyo"
);
tzMap
.
put
(
"Tomsk Daylight Time"
,
"Asia/Tomsk"
);
tzMap
.
put
(
"Tomsk Standard Time"
,
"Asia/Tomsk"
);
tzMap
.
put
(
"Tonga Daylight Time"
,
"Pacific/Tongatapu"
);
tzMap
.
put
(
"Tonga Standard Time"
,
"Pacific/Tongatapu"
);
tzMap
.
put
(
"Transbaikal Daylight Time"
,
"Asia/Chita"
);
tzMap
.
put
(
"Transbaikal Standard Time"
,
"Asia/Chita"
);
tzMap
.
put
(
"Turkey Daylight Time"
,
"Europe/Istanbul"
);
tzMap
.
put
(
"Turkey Standard Time"
,
"Europe/Istanbul"
);
tzMap
.
put
(
"Turks And Caicos Daylight Time"
,
"America/Grand_Turk"
);
tzMap
.
put
(
"Turks And Caicos Standard Time"
,
"America/Grand_Turk"
);
tzMap
.
put
(
"US Eastern Daylight Time"
,
"America/Indianapolis"
);
tzMap
.
put
(
"US Eastern Standard Time"
,
"America/Indianapolis"
);
tzMap
.
put
(
"US Mountain Daylight Time"
,
"America/Phoenix"
);
tzMap
.
put
(
"US Mountain Standard Time"
,
"America/Phoenix"
);
tzMap
.
put
(
"UTC"
,
"Etc/GMT"
);
tzMap
.
put
(
"UTC+12"
,
"Etc/GMT-12"
);
tzMap
.
put
(
"UTC-02"
,
"Etc/GMT+2"
);
tzMap
.
put
(
"UTC-08"
,
"Etc/GMT+8"
);
tzMap
.
put
(
"UTC-09"
,
"Etc/GMT+9"
);
tzMap
.
put
(
"UTC-11"
,
"Etc/GMT+11"
);
tzMap
.
put
(
"Ulaanbaatar Daylight Time"
,
"Asia/Ulaanbaatar"
);
tzMap
.
put
(
"Ulaanbaatar Standard Time"
,
"Asia/Ulaanbaatar"
);
tzMap
.
put
(
"Venezuela Daylight Time"
,
"America/Caracas"
);
tzMap
.
put
(
"Venezuela Standard Time"
,
"America/Caracas"
);
tzMap
.
put
(
"Vladivostok Daylight Time"
,
"Asia/Vladivostok"
);
tzMap
.
put
(
"Vladivostok Standard Time"
,
"Asia/Vladivostok"
);
tzMap
.
put
(
"W. Australia Daylight Time"
,
"Australia/Perth"
);
tzMap
.
put
(
"W. Australia Standard Time"
,
"Australia/Perth"
);
tzMap
.
put
(
"W. Central Africa Daylight Time"
,
"Africa/Lagos"
);
tzMap
.
put
(
"W. Central Africa Standard Time"
,
"Africa/Lagos"
);
tzMap
.
put
(
"W. Europe Daylight Time"
,
"Europe/Berlin"
);
tzMap
.
put
(
"W. Europe Standard Time"
,
"Europe/Berlin"
);
tzMap
.
put
(
"W. Mongolia Daylight Time"
,
"Asia/Hovd"
);
tzMap
.
put
(
"W. Mongolia Standard Time"
,
"Asia/Hovd"
);
tzMap
.
put
(
"West Asia Daylight Time"
,
"Asia/Tashkent"
);
tzMap
.
put
(
"West Asia Standard Time"
,
"Asia/Tashkent"
);
tzMap
.
put
(
"West Bank Daylight Time"
,
"Asia/Hebron"
);
tzMap
.
put
(
"West Bank Standard Time"
,
"Asia/Hebron"
);
tzMap
.
put
(
"West Pacific Daylight Time"
,
"Pacific/Port_Moresby"
);
tzMap
.
put
(
"West Pacific Standard Time"
,
"Pacific/Port_Moresby"
);
tzMap
.
put
(
"Yakutsk Daylight Time"
,
"Asia/Yakutsk"
);
tzMap
.
put
(
"Yakutsk Standard Time"
,
"Asia/Yakutsk"
);
// Linked Time Zones alias:
tzMap
.
put
(
"Africa/Addis_Ababa"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Asmara"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Asmera"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Bamako"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Bangui"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Banjul"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Blantyre"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Brazzaville"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Bujumbura"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Conakry"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Dakar"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Dar_es_Salaam"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Djibouti"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Douala"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Freetown"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Gaborone"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Harare"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Juba"
,
"Africa/Khartoum"
);
tzMap
.
put
(
"Africa/Kampala"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Kigali"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Kinshasa"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Libreville"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Lome"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Luanda"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Lubumbashi"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Lusaka"
,
"Africa/Maputo"
);
tzMap
.
put
(
"Africa/Malabo"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Maseru"
,
"Africa/Johannesburg"
);
tzMap
.
put
(
"Africa/Mbabane"
,
"Africa/Johannesburg"
);
tzMap
.
put
(
"Africa/Mogadishu"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Africa/Niamey"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Nouakchott"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Ouagadougou"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Porto-Novo"
,
"Africa/Lagos"
);
tzMap
.
put
(
"Africa/Sao_Tome"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Africa/Timbuktu"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"America/Anguilla"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Antigua"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Argentina/ComodRivadavia"
,
"America/Argentina/Catamarca"
);
tzMap
.
put
(
"America/Aruba"
,
"America/Curacao"
);
tzMap
.
put
(
"America/Atka"
,
"America/Adak"
);
tzMap
.
put
(
"America/Buenos_Aires"
,
"America/Argentina/Buenos_Aires"
);
tzMap
.
put
(
"America/Catamarca"
,
"America/Argentina/Catamarca"
);
tzMap
.
put
(
"America/Cayman"
,
"America/Panama"
);
tzMap
.
put
(
"America/Coral_Harbour"
,
"America/Atikokan"
);
tzMap
.
put
(
"America/Cordoba"
,
"America/Argentina/Cordoba"
);
tzMap
.
put
(
"America/Dominica"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Ensenada"
,
"America/Tijuana"
);
tzMap
.
put
(
"America/Fort_Wayne"
,
"America/Indiana/Indianapolis"
);
tzMap
.
put
(
"America/Grenada"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Guadeloupe"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Indianapolis"
,
"America/Indiana/Indianapolis"
);
tzMap
.
put
(
"America/Jujuy"
,
"America/Argentina/Jujuy"
);
tzMap
.
put
(
"America/Knox_IN"
,
"America/Indiana/Knox"
);
tzMap
.
put
(
"America/Kralendijk"
,
"America/Curacao"
);
tzMap
.
put
(
"America/Louisville"
,
"America/Kentucky/Louisville"
);
tzMap
.
put
(
"America/Lower_Princes"
,
"America/Curacao"
);
tzMap
.
put
(
"America/Marigot"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Mendoza"
,
"America/Argentina/Mendoza"
);
tzMap
.
put
(
"America/Montreal"
,
"America/Toronto"
);
tzMap
.
put
(
"America/Montserrat"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Porto_Acre"
,
"America/Rio_Branco"
);
tzMap
.
put
(
"America/Rosario"
,
"America/Argentina/Cordoba"
);
tzMap
.
put
(
"America/Santa_Isabel"
,
"America/Tijuana"
);
tzMap
.
put
(
"America/Shiprock"
,
"America/Denver"
);
tzMap
.
put
(
"America/St_Barthelemy"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/St_Kitts"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/St_Lucia"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/St_Thomas"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/St_Vincent"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Tortola"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"America/Virgin"
,
"America/Port_of_Spain"
);
tzMap
.
put
(
"Antarctica/McMurdo"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"Antarctica/South_Pole"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"Arctic/Longyearbyen"
,
"Europe/Oslo"
);
tzMap
.
put
(
"Asia/Aden"
,
"Asia/Riyadh"
);
tzMap
.
put
(
"Asia/Ashkhabad"
,
"Asia/Ashgabat"
);
tzMap
.
put
(
"Asia/Bahrain"
,
"Asia/Qatar"
);
tzMap
.
put
(
"Asia/Calcutta"
,
"Asia/Kolkata"
);
tzMap
.
put
(
"Asia/Chongqing"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"Asia/Chungking"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"Asia/Dacca"
,
"Asia/Dhaka"
);
tzMap
.
put
(
"Asia/Harbin"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"Asia/Istanbul"
,
"Europe/Istanbul"
);
tzMap
.
put
(
"Asia/Kashgar"
,
"Asia/Urumqi"
);
tzMap
.
put
(
"Asia/Katmandu"
,
"Asia/Kathmandu"
);
tzMap
.
put
(
"Asia/Kuwait"
,
"Asia/Riyadh"
);
tzMap
.
put
(
"Asia/Macao"
,
"Asia/Macau"
);
tzMap
.
put
(
"Asia/Muscat"
,
"Asia/Dubai"
);
tzMap
.
put
(
"Asia/Phnom_Penh"
,
"Asia/Bangkok"
);
tzMap
.
put
(
"Asia/Rangoon"
,
"Asia/Yangon"
);
tzMap
.
put
(
"Asia/Saigon"
,
"Asia/Ho_Chi_Minh"
);
tzMap
.
put
(
"Asia/Tel_Aviv"
,
"Asia/Jerusalem"
);
tzMap
.
put
(
"Asia/Thimbu"
,
"Asia/Thimphu"
);
tzMap
.
put
(
"Asia/Ujung_Pandang"
,
"Asia/Makassar"
);
tzMap
.
put
(
"Asia/Ulan_Bator"
,
"Asia/Ulaanbaatar"
);
tzMap
.
put
(
"Asia/Vientiane"
,
"Asia/Bangkok"
);
tzMap
.
put
(
"Atlantic/Faeroe"
,
"Atlantic/Faroe"
);
tzMap
.
put
(
"Atlantic/Jan_Mayen"
,
"Europe/Oslo"
);
tzMap
.
put
(
"Atlantic/St_Helena"
,
"Africa/Abidjan"
);
tzMap
.
put
(
"Australia/ACT"
,
"Australia/Sydney"
);
tzMap
.
put
(
"Australia/Canberra"
,
"Australia/Sydney"
);
tzMap
.
put
(
"Australia/LHI"
,
"Australia/Lord_Howe"
);
tzMap
.
put
(
"Australia/NSW"
,
"Australia/Sydney"
);
tzMap
.
put
(
"Australia/North"
,
"Australia/Darwin"
);
tzMap
.
put
(
"Australia/Queensland"
,
"Australia/Brisbane"
);
tzMap
.
put
(
"Australia/South"
,
"Australia/Adelaide"
);
tzMap
.
put
(
"Australia/Tasmania"
,
"Australia/Hobart"
);
tzMap
.
put
(
"Australia/Victoria"
,
"Australia/Melbourne"
);
tzMap
.
put
(
"Australia/West"
,
"Australia/Perth"
);
tzMap
.
put
(
"Australia/Yancowinna"
,
"Australia/Broken_Hill"
);
tzMap
.
put
(
"Brazil/Acre"
,
"America/Rio_Branco"
);
tzMap
.
put
(
"Brazil/DeNoronha"
,
"America/Noronha"
);
tzMap
.
put
(
"Brazil/East"
,
"America/Sao_Paulo"
);
tzMap
.
put
(
"Brazil/West"
,
"America/Manaus"
);
tzMap
.
put
(
"Canada/Atlantic"
,
"America/Halifax"
);
tzMap
.
put
(
"Canada/Central"
,
"America/Winnipeg"
);
tzMap
.
put
(
"Canada/East-Saskatchewan"
,
"America/Regina"
);
tzMap
.
put
(
"Canada/Eastern"
,
"America/Toronto"
);
tzMap
.
put
(
"Canada/Mountain"
,
"America/Edmonton"
);
tzMap
.
put
(
"Canada/Newfoundland"
,
"America/St_Johns"
);
tzMap
.
put
(
"Canada/Pacific"
,
"America/Vancouver"
);
tzMap
.
put
(
"Canada/Saskatchewan"
,
"America/Regina"
);
tzMap
.
put
(
"Canada/Yukon"
,
"America/Whitehorse"
);
tzMap
.
put
(
"Chile/Continental"
,
"America/Santiago"
);
tzMap
.
put
(
"Chile/EasterIsland"
,
"Pacific/Easter"
);
tzMap
.
put
(
"Cuba"
,
"America/Havana"
);
tzMap
.
put
(
"Egypt"
,
"Africa/Cairo"
);
tzMap
.
put
(
"Eire"
,
"Europe/Dublin"
);
tzMap
.
put
(
"Europe/Belfast"
,
"Europe/London"
);
tzMap
.
put
(
"Europe/Bratislava"
,
"Europe/Prague"
);
tzMap
.
put
(
"Europe/Busingen"
,
"Europe/Zurich"
);
tzMap
.
put
(
"Europe/Guernsey"
,
"Europe/London"
);
tzMap
.
put
(
"Europe/Isle_of_Man"
,
"Europe/London"
);
tzMap
.
put
(
"Europe/Jersey"
,
"Europe/London"
);
tzMap
.
put
(
"Europe/Ljubljana"
,
"Europe/Belgrade"
);
tzMap
.
put
(
"Europe/Mariehamn"
,
"Europe/Helsinki"
);
tzMap
.
put
(
"Europe/Nicosia"
,
"Asia/Nicosia"
);
tzMap
.
put
(
"Europe/Podgorica"
,
"Europe/Belgrade"
);
tzMap
.
put
(
"Europe/San_Marino"
,
"Europe/Rome"
);
tzMap
.
put
(
"Europe/Sarajevo"
,
"Europe/Belgrade"
);
tzMap
.
put
(
"Europe/Skopje"
,
"Europe/Belgrade"
);
tzMap
.
put
(
"Europe/Tiraspol"
,
"Europe/Chisinau"
);
tzMap
.
put
(
"Europe/Vaduz"
,
"Europe/Zurich"
);
tzMap
.
put
(
"Europe/Vatican"
,
"Europe/Rome"
);
tzMap
.
put
(
"Europe/Zagreb"
,
"Europe/Belgrade"
);
tzMap
.
put
(
"GB"
,
"Europe/London"
);
tzMap
.
put
(
"GB-Eire"
,
"Europe/London"
);
tzMap
.
put
(
"GMT+0"
,
"Etc/GMT"
);
tzMap
.
put
(
"GMT-0"
,
"Etc/GMT"
);
tzMap
.
put
(
"GMT0"
,
"Etc/GMT"
);
tzMap
.
put
(
"Greenwich"
,
"Etc/GMT"
);
tzMap
.
put
(
"Hongkong"
,
"Asia/Hong_Kong"
);
tzMap
.
put
(
"Iceland"
,
"Atlantic/Reykjavik"
);
tzMap
.
put
(
"Indian/Antananarivo"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Indian/Comoro"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Indian/Mayotte"
,
"Africa/Nairobi"
);
tzMap
.
put
(
"Iran"
,
"Asia/Tehran"
);
tzMap
.
put
(
"Israel"
,
"Asia/Jerusalem"
);
tzMap
.
put
(
"Jamaica"
,
"America/Jamaica"
);
tzMap
.
put
(
"Japan"
,
"Asia/Tokyo"
);
tzMap
.
put
(
"Kwajalein"
,
"Pacific/Kwajalein"
);
tzMap
.
put
(
"Libya"
,
"Africa/Tripoli"
);
tzMap
.
put
(
"Mexico/BajaNorte"
,
"America/Tijuana"
);
tzMap
.
put
(
"Mexico/BajaSur"
,
"America/Mazatlan"
);
tzMap
.
put
(
"Mexico/General"
,
"America/Mexico_City"
);
tzMap
.
put
(
"NZ"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"NZ-CHAT"
,
"Pacific/Chatham"
);
tzMap
.
put
(
"Navajo"
,
"America/Denver"
);
tzMap
.
put
(
"PRC"
,
"Asia/Shanghai"
);
tzMap
.
put
(
"Pacific/Johnston"
,
"Pacific/Honolulu"
);
tzMap
.
put
(
"Pacific/Midway"
,
"Pacific/Pago_Pago"
);
tzMap
.
put
(
"Pacific/Ponape"
,
"Pacific/Pohnpei"
);
tzMap
.
put
(
"Pacific/Saipan"
,
"Pacific/Guam"
);
tzMap
.
put
(
"Pacific/Samoa"
,
"Pacific/Pago_Pago"
);
tzMap
.
put
(
"Pacific/Truk"
,
"Pacific/Chuuk"
);
tzMap
.
put
(
"Pacific/Yap"
,
"Pacific/Chuuk"
);
tzMap
.
put
(
"Poland"
,
"Europe/Warsaw"
);
tzMap
.
put
(
"Portugal"
,
"Europe/Lisbon"
);
tzMap
.
put
(
"ROC"
,
"Asia/Taipei"
);
tzMap
.
put
(
"ROK"
,
"Asia/Seoul"
);
tzMap
.
put
(
"Singapore"
,
"Asia/Singapore"
);
tzMap
.
put
(
"Turkey"
,
"Europe/Istanbul"
);
tzMap
.
put
(
"UCT"
,
"Etc/UCT"
);
tzMap
.
put
(
"US/Alaska"
,
"America/Anchorage"
);
tzMap
.
put
(
"US/Aleutian"
,
"America/Adak"
);
tzMap
.
put
(
"US/Arizona"
,
"America/Phoenix"
);
tzMap
.
put
(
"US/Central"
,
"America/Chicago"
);
tzMap
.
put
(
"US/East-Indiana"
,
"America/Indiana/Indianapolis"
);
tzMap
.
put
(
"US/Eastern"
,
"America/New_York"
);
tzMap
.
put
(
"US/Hawaii"
,
"Pacific/Honolulu"
);
tzMap
.
put
(
"US/Indiana-Starke"
,
"America/Indiana/Knox"
);
tzMap
.
put
(
"US/Michigan"
,
"America/Detroit"
);
tzMap
.
put
(
"US/Mountain"
,
"America/Denver"
);
tzMap
.
put
(
"US/Pacific"
,
"America/Los_Angeles"
);
tzMap
.
put
(
"US/Pacific-New"
,
"America/Los_Angeles"
);
tzMap
.
put
(
"US/Samoa"
,
"Pacific/Pago_Pago"
);
tzMap
.
put
(
"Universal"
,
"Etc/UTC"
);
tzMap
.
put
(
"W-SU"
,
"Europe/Moscow"
);
tzMap
.
put
(
"Zulu"
,
"Etc/UTC"
);
// Standard (IANA) abbreviations:
tzMap
.
put
(
"AWST"
,
"Australia/Perth"
);
tzMap
.
put
(
"BST"
,
"Europe/London"
);
tzMap
.
put
(
"CAT"
,
"Africa/Maputo"
);
tzMap
.
put
(
"ChST"
,
"Pacific/Guam"
);
tzMap
.
put
(
"HDT"
,
"America/Adak"
);
tzMap
.
put
(
"HKT"
,
"Asia/Hong_Kong"
);
tzMap
.
put
(
"IDT"
,
"Asia/Jerusalem"
);
tzMap
.
put
(
"JST"
,
"Asia/Tokyo"
);
tzMap
.
put
(
"NDT"
,
"America/St_Johns"
);
tzMap
.
put
(
"NST"
,
"America/St_Johns"
);
tzMap
.
put
(
"NZDT"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"NZST"
,
"Pacific/Auckland"
);
tzMap
.
put
(
"PKT"
,
"Asia/Karachi"
);
tzMap
.
put
(
"SAST"
,
"Africa/Johannesburg"
);
tzMap
.
put
(
"SST"
,
"Pacific/Pago_Pago"
);
tzMap
.
put
(
"WAST"
,
"Africa/Windhoek"
);
tzMap
.
put
(
"WIT"
,
"Asia/Jayapura"
);
tzMap
.
put
(
"WITA"
,
"Asia/Makassar"
);
// GENERATED CODE ENDS HERE
for
(
String
key
:
tzMap
.
keySet
())
{
assertEquals
(
"Custom time Zone '"
+
key
+
"' mapping"
,
tzMap
.
get
(
key
),
TimeUtil
.
getCanonicalTimezone
(
key
,
null
));
}
for
(
String
tz
:
TimeZone
.
getAvailableIDs
())
{
String
canonicalTZ
;
try
{
canonicalTZ
=
TimeUtil
.
getCanonicalTimezone
(
tz
,
null
);
}
catch
(
SQLException
e
)
{
canonicalTZ
=
null
;
}
assertNotNull
(
"System Time Zone '"
+
tz
+
"' mapping missing"
,
canonicalTZ
);
}
}
/**
* Tests fix for BUG#70436 - Incorrect mapping of windows timezone to Olson timezone.
*
* @throws Exception
* if the test fails.
*/
public
void
testBug70436
()
throws
Exception
{
assertEquals
(
"Asia/Yerevan"
,
TimeUtil
.
getCanonicalTimezone
(
"Caucasus Standard Time"
,
null
));
assertEquals
(
"Asia/Tbilisi"
,
TimeUtil
.
getCanonicalTimezone
(
"Georgian Standard Time"
,
null
));
}
/**
* Tests fix for Bug#82115 - Some exceptions are intercepted twice or fail to set the init cause.
*/
public
void
testBug82115
()
throws
Exception
{
Exception
ex
=
SQLError
.
createSQLException
(
"ORIGINAL_EXCEPTION"
,
"0"
,
new
Exception
(
"ORIGINAL_CAUSE"
),
null
,
null
);
assertEquals
(
"ORIGINAL_EXCEPTION"
,
ex
.
getMessage
());
assertEquals
(
"ORIGINAL_CAUSE"
,
ex
.
getCause
().
getMessage
());
ex
=
SQLError
.
createSQLException
(
"ORIGINAL_EXCEPTION"
,
"0"
,
new
Exception
(
"ORIGINAL_CAUSE"
),
new
ExceptionInterceptor
()
{
boolean
alreadyIntercepted
=
false
;
public
void
init
(
Connection
con
,
Properties
props
)
throws
SQLException
{
this
.
alreadyIntercepted
=
false
;
}
public
void
destroy
()
{
}
public
SQLException
interceptException
(
SQLException
sqlEx
,
Connection
con
)
{
assertFalse
(
this
.
alreadyIntercepted
);
this
.
alreadyIntercepted
=
true
;
assertEquals
(
"ORIGINAL_EXCEPTION"
,
sqlEx
.
getMessage
());
assertEquals
(
"ORIGINAL_CAUSE"
,
sqlEx
.
getCause
().
getMessage
());
SQLException
newSqlEx
=
new
SQLException
(
"INTERCEPT_EXCEPTION"
);
return
newSqlEx
;
}
},
null
);
assertEquals
(
"INTERCEPT_EXCEPTION"
,
ex
.
getMessage
());
assertNull
(
ex
.
getCause
());
ex
=
SQLError
.
createSQLException
(
"ORIGINAL_EXCEPTION"
,
"0"
,
new
Exception
(
"ORIGINAL_CAUSE"
),
new
ExceptionInterceptor
()
{
boolean
alreadyIntercepted
=
false
;
public
void
init
(
Connection
con
,
Properties
props
)
throws
SQLException
{
this
.
alreadyIntercepted
=
false
;
}
public
void
destroy
()
{
}
public
SQLException
interceptException
(
SQLException
sqlEx
,
Connection
con
)
{
assertFalse
(
this
.
alreadyIntercepted
);
this
.
alreadyIntercepted
=
true
;
assertEquals
(
"ORIGINAL_EXCEPTION"
,
sqlEx
.
getMessage
());
assertEquals
(
"ORIGINAL_CAUSE"
,
sqlEx
.
getCause
().
getMessage
());
SQLException
newSqlEx
=
new
SQLException
(
"INTERCEPT_EXCEPTION"
);
newSqlEx
.
initCause
(
new
Exception
(
"INTERCEPT_CAUSE"
));
return
newSqlEx
;
}
},
null
);
assertEquals
(
"INTERCEPT_EXCEPTION"
,
ex
.
getMessage
());
assertEquals
(
"INTERCEPT_CAUSE"
,
ex
.
getCause
().
getMessage
());
}
}
Event Timeline
Log In to Comment