예제 #1
0
    def test_texas(self):
        """ Make sure TX is not counted as part of ET. """

        ids = tztrout.tz_ids_for_address('US', state='TX')
        ids2 = tztrout.tz_ids_for_address('US', state='Texas')
        ids3 = tztrout.tz_ids_for_phone('+12143334444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertTrue(all(['Indiana' not in tz_id for tz_id in ids]))
        self.assert_only_one_us_tz(ids, 'CT')
예제 #2
0
    def test_wisconsin(self):
        """ Make sure WI is not counted as part of ET. """

        ids = tztrout.tz_ids_for_address('US', state='WI')
        ids2 = tztrout.tz_ids_for_address('US', state='Wisconsin')
        ids3 = tztrout.tz_ids_for_phone('+14143334444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertTrue(all(['Indiana' not in tz_id for tz_id in ids]))
        self.assert_only_one_us_tz(ids, 'CT')
예제 #3
0
    def test_major_cities_australia(self):

        # NSW - New South Wales
        # WA - Western Australia
        # NT - Northern Territory
        # SA - South Australia
        # TAS - Tasmania
        # VIC - Victoria
        # ACT - Australian Capital Territory
        # QLD - Queensland

        # Sydney, NSW
        ids = tztrout.tz_ids_for_address('AU', state='NSW', city='Sydney')
        ids2 = tztrout.tz_ids_for_phone('+61 27 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 28 333 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 29 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')

        # Perth, WA
        ids = tztrout.tz_ids_for_address('AU', state='WA', city='Perth')
        ids2 = tztrout.tz_ids_for_phone('+61 852 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 853 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 854 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 861 22 4444')
        ids6 = tztrout.tz_ids_for_phone('+61 862 22 4444')
        ids7 = tztrout.tz_ids_for_phone('+61 863 22 4444')
        ids8 = tztrout.tz_ids_for_phone('+61 864 22 4444')
        ids9 = tztrout.tz_ids_for_phone('+61 865 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assertEqual(ids, ids6)
        self.assertEqual(ids, ids7)
        self.assertEqual(ids, ids8)
        self.assertEqual(ids, ids9)
        self.assert_only_one_au_tz(ids, 'AWT')

        # Darwin, NT
        ids = tztrout.tz_ids_for_address('AU', state='NT', city='Darwin')
        ids2 = tztrout.tz_ids_for_phone('+61 879 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 889 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'ACT')

        # Eucla, WA - ignore for now
        # "Eucla and the surrounding area, notably Mundrabilla and Madura, use
        # the Central Western Time Zone of UTC+8:45. Although it has no official
        # sanction, it is universally observed in this area, stopping just to
        # the east of Caiguna.

        # Adelaide, SA
        ids = tztrout.tz_ids_for_address('AU', state='SA', city='Adelaide')
        ids2 = tztrout.tz_ids_for_phone('+61 870 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 871 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 872 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 873 22 4444')
        ids6 = tztrout.tz_ids_for_phone('+61 874 22 4444')
        ids7 = tztrout.tz_ids_for_phone('+61 881 22 4444')
        ids8 = tztrout.tz_ids_for_phone('+61 882 22 4444')
        ids9 = tztrout.tz_ids_for_phone('+61 883 22 4444')
        ids10 = tztrout.tz_ids_for_phone('+61 884 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assertEqual(ids, ids6)
        self.assertEqual(ids, ids7)
        self.assertEqual(ids, ids8)
        self.assertEqual(ids, ids9)
        self.assertEqual(ids, ids10)
        self.assert_only_one_au_tz(ids, 'ACT')

        # Hobart, TAS
        ids = tztrout.tz_ids_for_address('AU', state='TAS', city='Hobart')
        ids2 = tztrout.tz_ids_for_phone('+61 361 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 362 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'AET')

        # Melbourne, VIC
        ids = tztrout.tz_ids_for_address('AU', state='VIC', city='Melbourne')
        ids2 = tztrout.tz_ids_for_phone('+61 37 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 38 333 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 39 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')

        # Canberra, ACT
        ids = tztrout.tz_ids_for_address('AU', state='ACT', city='Canberra')
        ids2 = tztrout.tz_ids_for_phone('+61 251 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 252 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 261 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 262 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assert_only_one_au_tz(ids, 'AET')

        # Brisbane, QLD
        ids = tztrout.tz_ids_for_address('AU', state='QLD', city='Brisbane')
        ids2 = tztrout.tz_ids_for_phone('+61 72 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 73 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'AET')

        # Townsville, QLD
        ids = tztrout.tz_ids_for_address('AU', state='QLD', city='Brisbane')
        ids2 = tztrout.tz_ids_for_phone('+61 744 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 745 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 777 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')
예제 #4
0
    def test_major_cities_canada(self):
        """ Make sure all the major cities match the right time zone (and the
        right time zone only). """

        # Toronto, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Toronto')
        ids2 = tztrout.tz_ids_for_phone('+14163334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Montreal, Quebec
        ids = tztrout.tz_ids_for_address('CA', state='QC', city='Montreal')
        ids2 = tztrout.tz_ids_for_phone('+15143334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Calgary, Alberta
        ids = tztrout.tz_ids_for_address('CA', state='AB', city='Calgary')
        ids2 = tztrout.tz_ids_for_phone('+14033334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Ottawa, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Ottawa')
        ids2 = tztrout.tz_ids_for_phone('+13433334444')
        ids3 = tztrout.tz_ids_for_phone('+16133334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')
        self.assert_only_one_us_tz(ids3, 'ET')

        # Edmonton, Alberta
        ids = tztrout.tz_ids_for_address('CA', state='AB', city='Edmonton')
        ids2 = tztrout.tz_ids_for_phone('+17803334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Mississauga, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Mississauga')
        ids2 = tztrout.tz_ids_for_phone('+12893334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Winnipeg, Manitoba
        ids = tztrout.tz_ids_for_address('CA', state='MB', city='Winnipeg')
        ids2 = tztrout.tz_ids_for_phone('+14313334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')

        # Vancouver, British Columbia
        ids = tztrout.tz_ids_for_address('CA', state='BC', city='Vancouver')
        ids2 = tztrout.tz_ids_for_phone('+16043334444')
        self.assert_only_one_us_tz(ids, 'PT')
        self.assert_only_one_us_tz(ids2, 'PT')

        # Halifax, Nova Scotia
        ids = tztrout.tz_ids_for_address('CA', state='NS', city='Halifax')
        ids2 = tztrout.tz_ids_for_phone('+19023334444')
        self.assert_only_one_us_tz(ids, 'AT')
        self.assert_only_one_us_tz(ids2, 'AT')

        # Saskatoon, Saskatchewan - CT that doesn't observe DST
        ids = tztrout.tz_ids_for_address('CA', state='SK', city='Saskatoon')
        ids2 = tztrout.tz_ids_for_phone('+13063334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')
예제 #5
0
 def test_ids_for_phone(self):
     ids = tztrout.tz_ids_for_phone('+1 (650) 333 4444')
     self.assertEqual(ids, ['America/Los_Angeles'])
     ids = tztrout.tz_ids_for_phone('+48 601 941 311')
     self.assertEqual(ids, ['Europe/Warsaw'])
예제 #6
0
    def test_major_cities_us(self):
        """ Make sure all the major cities match the right time zone (and the
        right time zone only). """

        # New York
        ids = tztrout.tz_ids_for_address('US', state='NY', city='New York')
        ids2 = tztrout.tz_ids_for_phone('+12123334444')
        ids3 = tztrout.tz_ids_for_phone('+16463334444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_us_tz(ids, 'ET')

        # Los Angeles
        ids = tztrout.tz_ids_for_address('US', state='CA', city='Los Angeles')
        ids2 = tztrout.tz_ids_for_phone('+18183334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Chicago
        ids = tztrout.tz_ids_for_address('US', state='IL', city='Chicago')
        ids2 = tztrout.tz_ids_for_phone('+16303334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Houston
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Houston')
        ids2 = tztrout.tz_ids_for_phone('+17133334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Philadelphia
        ids = tztrout.tz_ids_for_address('US', state='PA', city='Philadelphia')
        ids2 = tztrout.tz_ids_for_phone('+12153334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Phoenix
        ids = tztrout.tz_ids_for_address('US', state='AZ', city='Phoenix')
        ids2 = tztrout.tz_ids_for_phone('+16023334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'MT')

        # San Antonio
        ids = tztrout.tz_ids_for_address('US', state='TX', city='San Antonio')
        ids2 = tztrout.tz_ids_for_phone('+12103334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # San Diego
        ids = tztrout.tz_ids_for_address('US', state='CA', city='San Diego')
        ids2 = tztrout.tz_ids_for_phone('+16193334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Dallas
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Dallas')
        ids2 = tztrout.tz_ids_for_phone('+12143334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # San Jose
        ids = tztrout.tz_ids_for_address('US', state='CA', city='San Jose')
        ids2 = tztrout.tz_ids_for_phone('+14083334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Austin
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Austin')
        ids2 = tztrout.tz_ids_for_phone('+15123334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Indianapolis
        ids = tztrout.tz_ids_for_address('US', state='IN', city='Indianapolis')
        ids2 = tztrout.tz_ids_for_phone('+13173334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Jacksonville
        ids = tztrout.tz_ids_for_address('US', state='FL', city='Jacksonville')
        ids2 = tztrout.tz_ids_for_phone('+19043334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # San Francisco
        ids = tztrout.tz_ids_for_address('US',
                                         state='CA',
                                         city='San Francisco')
        ids2 = tztrout.tz_ids_for_phone('+14153334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Columbus
        ids = tztrout.tz_ids_for_address('US', state='OH', city='Columbus')
        ids2 = tztrout.tz_ids_for_phone('+16143334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Charlotte
        ids = tztrout.tz_ids_for_address('US', state='NC', city='Charlotte')
        ids2 = tztrout.tz_ids_for_phone('+17043334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Fort Worth
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Fort Worth')
        ids2 = tztrout.tz_ids_for_phone('+16823334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Detroit
        ids = tztrout.tz_ids_for_address('US', state='MI', city='Detroit')
        ids2 = tztrout.tz_ids_for_phone('+13133334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # El Paso
        ids = tztrout.tz_ids_for_address('US', state='TX', city='El Paso')
        ids2 = tztrout.tz_ids_for_phone('+19153334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Memphis
        ids = tztrout.tz_ids_for_address('US', state='TN', city='Memphis')
        ids2 = tztrout.tz_ids_for_phone('+19013334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')

        # Denver
        ids = tztrout.tz_ids_for_address('US', state='CO', city='Denver')
        ids2 = tztrout.tz_ids_for_phone('+13033334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'MT')

        # Washington
        ids = tztrout.tz_ids_for_address('US', state='DC', city='Washington')
        ids2 = tztrout.tz_ids_for_phone('+12023334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')
예제 #7
0
    def test_major_cities_australia(self):

        # NSW - New South Wales
        # WA - Western Australia
        # NT - Northern Territory
        # SA - South Australia
        # TAS - Tasmania
        # VIC - Victoria
        # ACT - Australian Capital Territory
        # QLD - Queensland

        # Sydney, NSW
        ids = tztrout.tz_ids_for_address('AU', state='NSW', city='Sydney')
        ids2 = tztrout.tz_ids_for_phone('+61 27 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 28 333 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 29 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')

        # Perth, WA
        ids = tztrout.tz_ids_for_address('AU', state='WA', city='Perth')
        ids2 = tztrout.tz_ids_for_phone('+61 852 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 853 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 854 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 861 22 4444')
        ids6 = tztrout.tz_ids_for_phone('+61 862 22 4444')
        ids7 = tztrout.tz_ids_for_phone('+61 863 22 4444')
        ids8 = tztrout.tz_ids_for_phone('+61 864 22 4444')
        ids9 = tztrout.tz_ids_for_phone('+61 865 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assertEqual(ids, ids6)
        self.assertEqual(ids, ids7)
        self.assertEqual(ids, ids8)
        self.assertEqual(ids, ids9)
        self.assert_only_one_au_tz(ids, 'AWT')

        # Darwin, NT
        ids = tztrout.tz_ids_for_address('AU', state='NT', city='Darwin')
        ids2 = tztrout.tz_ids_for_phone('+61 879 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 889 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'ACT')

        # Eucla, WA - ignore for now
        # "Eucla and the surrounding area, notably Mundrabilla and Madura, use
        # the Central Western Time Zone of UTC+8:45. Although it has no official
        # sanction, it is universally observed in this area, stopping just to
        # the east of Caiguna.

        # Adelaide, SA
        ids = tztrout.tz_ids_for_address('AU', state='SA', city='Adelaide')
        ids2 = tztrout.tz_ids_for_phone('+61 870 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 871 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 872 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 873 22 4444')
        ids6 = tztrout.tz_ids_for_phone('+61 874 22 4444')
        ids7 = tztrout.tz_ids_for_phone('+61 881 22 4444')
        ids8 = tztrout.tz_ids_for_phone('+61 882 22 4444')
        ids9 = tztrout.tz_ids_for_phone('+61 883 22 4444')
        ids10 = tztrout.tz_ids_for_phone('+61 884 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assertEqual(ids, ids6)
        self.assertEqual(ids, ids7)
        self.assertEqual(ids, ids8)
        self.assertEqual(ids, ids9)
        self.assertEqual(ids, ids10)
        self.assert_only_one_au_tz(ids, 'ACT')

        # Hobart, TAS
        ids = tztrout.tz_ids_for_address('AU', state='TAS', city='Hobart')
        ids2 = tztrout.tz_ids_for_phone('+61 361 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 362 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'AET')

        # Melbourne, VIC
        ids = tztrout.tz_ids_for_address('AU', state='VIC', city='Melbourne')
        ids2 = tztrout.tz_ids_for_phone('+61 37 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 38 333 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 39 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')

        # Canberra, ACT
        ids = tztrout.tz_ids_for_address('AU', state='ACT', city='Canberra')
        ids2 = tztrout.tz_ids_for_phone('+61 251 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 252 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 261 22 4444')
        ids5 = tztrout.tz_ids_for_phone('+61 262 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assertEqual(ids, ids5)
        self.assert_only_one_au_tz(ids, 'AET')

        # Brisbane, QLD
        ids = tztrout.tz_ids_for_address('AU', state='QLD', city='Brisbane')
        ids2 = tztrout.tz_ids_for_phone('+61 72 333 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 73 333 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_au_tz(ids, 'AET')

        # Townsville, QLD
        ids = tztrout.tz_ids_for_address('AU', state='QLD', city='Brisbane')
        ids2 = tztrout.tz_ids_for_phone('+61 744 22 4444')
        ids3 = tztrout.tz_ids_for_phone('+61 745 22 4444')
        ids4 = tztrout.tz_ids_for_phone('+61 777 22 4444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assertEqual(ids, ids4)
        self.assert_only_one_au_tz(ids, 'AET')
예제 #8
0
    def test_major_cities_canada(self):
        """ Make sure all the major cities match the right time zone (and the
        right time zone only). """

        # Toronto, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Toronto')
        ids2 = tztrout.tz_ids_for_phone('+14163334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Montreal, Quebec
        ids = tztrout.tz_ids_for_address('CA', state='QC', city='Montreal')
        ids2 = tztrout.tz_ids_for_phone('+15143334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Calgary, Alberta
        ids = tztrout.tz_ids_for_address('CA', state='AB', city='Calgary')
        ids2 = tztrout.tz_ids_for_phone('+14033334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Ottawa, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Ottawa')
        ids2 = tztrout.tz_ids_for_phone('+13433334444')
        ids3 = tztrout.tz_ids_for_phone('+16133334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')
        self.assert_only_one_us_tz(ids3, 'ET')

        # Edmonton, Alberta
        ids = tztrout.tz_ids_for_address('CA', state='AB', city='Edmonton')
        ids2 = tztrout.tz_ids_for_phone('+17803334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Mississauga, Ontario
        ids = tztrout.tz_ids_for_address('CA', state='ON', city='Mississauga')
        ids2 = tztrout.tz_ids_for_phone('+12893334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')

        # Winnipeg, Manitoba
        ids = tztrout.tz_ids_for_address('CA', state='MB', city='Winnipeg')
        ids2 = tztrout.tz_ids_for_phone('+14313334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')

        # Vancouver, British Columbia
        ids = tztrout.tz_ids_for_address('CA', state='BC', city='Vancouver')
        ids2 = tztrout.tz_ids_for_phone('+16043334444')
        self.assert_only_one_us_tz(ids, 'PT')
        self.assert_only_one_us_tz(ids2, 'PT')

        # Halifax, Nova Scotia
        ids = tztrout.tz_ids_for_address('CA', state='NS', city='Halifax')
        ids2 = tztrout.tz_ids_for_phone('+19023334444')
        self.assert_only_one_us_tz(ids, 'AT')
        self.assert_only_one_us_tz(ids2, 'AT')

        # Saskatoon, Saskatchewan - CT that doesn't observe DST
        ids = tztrout.tz_ids_for_address('CA', state='SK', city='Saskatoon')
        ids2 = tztrout.tz_ids_for_phone('+13063334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')
예제 #9
0
    def test_major_cities_us(self):
        """ Make sure all the major cities match the right time zone (and the
        right time zone only). """

        # New York
        ids = tztrout.tz_ids_for_address('US', state='NY', city='New York')
        ids2 = tztrout.tz_ids_for_phone('+12123334444')
        ids3 = tztrout.tz_ids_for_phone('+16463334444')
        self.assertEqual(ids, ids2)
        self.assertEqual(ids, ids3)
        self.assert_only_one_us_tz(ids, 'ET')

        # Los Angeles
        ids = tztrout.tz_ids_for_address('US', state='CA', city='Los Angeles')
        ids2 = tztrout.tz_ids_for_phone('+18183334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Chicago
        ids = tztrout.tz_ids_for_address('US', state='IL', city='Chicago')
        ids2 = tztrout.tz_ids_for_phone('+16303334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Houston
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Houston')
        ids2 = tztrout.tz_ids_for_phone('+17133334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Philadelphia
        ids = tztrout.tz_ids_for_address('US', state='PA', city='Philadelphia')
        ids2 = tztrout.tz_ids_for_phone('+12153334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Phoenix
        ids = tztrout.tz_ids_for_address('US', state='AZ', city='Phoenix')
        ids2 = tztrout.tz_ids_for_phone('+16023334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'MT')

        # San Antonio
        ids = tztrout.tz_ids_for_address('US', state='TX', city='San Antonio')
        ids2 = tztrout.tz_ids_for_phone('+12103334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # San Diego
        ids = tztrout.tz_ids_for_address('US', state='CA', city='San Diego')
        ids2 = tztrout.tz_ids_for_phone('+16193334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Dallas
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Dallas')
        ids2 = tztrout.tz_ids_for_phone('+12143334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # San Jose
        ids = tztrout.tz_ids_for_address('US', state='CA', city='San Jose')
        ids2 = tztrout.tz_ids_for_phone('+14083334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Austin
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Austin')
        ids2 = tztrout.tz_ids_for_phone('+15123334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Indianapolis
        ids = tztrout.tz_ids_for_address('US', state='IN', city='Indianapolis')
        ids2 = tztrout.tz_ids_for_phone('+13173334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Jacksonville
        ids = tztrout.tz_ids_for_address('US', state='FL', city='Jacksonville')
        ids2 = tztrout.tz_ids_for_phone('+19043334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # San Francisco
        ids = tztrout.tz_ids_for_address('US', state='CA', city='San Francisco')
        ids2 = tztrout.tz_ids_for_phone('+14153334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'PT')

        # Columbus
        ids = tztrout.tz_ids_for_address('US', state='OH', city='Columbus')
        ids2 = tztrout.tz_ids_for_phone('+16143334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Charlotte
        ids = tztrout.tz_ids_for_address('US', state='NC', city='Charlotte')
        ids2 = tztrout.tz_ids_for_phone('+17043334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # Fort Worth
        ids = tztrout.tz_ids_for_address('US', state='TX', city='Fort Worth')
        ids2 = tztrout.tz_ids_for_phone('+16823334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'CT')

        # Detroit
        ids = tztrout.tz_ids_for_address('US', state='MI', city='Detroit')
        ids2 = tztrout.tz_ids_for_phone('+13133334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'ET')

        # El Paso
        ids = tztrout.tz_ids_for_address('US', state='TX', city='El Paso')
        ids2 = tztrout.tz_ids_for_phone('+19153334444')
        self.assert_only_one_us_tz(ids, 'MT')
        self.assert_only_one_us_tz(ids2, 'MT')

        # Memphis
        ids = tztrout.tz_ids_for_address('US', state='TN', city='Memphis')
        ids2 = tztrout.tz_ids_for_phone('+19013334444')
        self.assert_only_one_us_tz(ids, 'CT')
        self.assert_only_one_us_tz(ids2, 'CT')

        # Denver
        ids = tztrout.tz_ids_for_address('US', state='CO', city='Denver')
        ids2 = tztrout.tz_ids_for_phone('+13033334444')
        self.assertEqual(ids, ids2)
        self.assert_only_one_us_tz(ids, 'MT')

        # Washington
        ids = tztrout.tz_ids_for_address('US', state='DC', city='Washington')
        ids2 = tztrout.tz_ids_for_phone('+12023334444')
        self.assert_only_one_us_tz(ids, 'ET')
        self.assert_only_one_us_tz(ids2, 'ET')
예제 #10
0
 def test_ids_for_phone(self):
     ids = tztrout.tz_ids_for_phone('+1 (650) 333 4444')
     self.assertEqual(ids, ['America/Los_Angeles'])
     ids = tztrout.tz_ids_for_phone('+48 601 941 311')
     self.assertEqual(ids, ['Europe/Warsaw'])