Commit 1af33427 authored by Russell Keith-Magee's avatar Russell Keith-Magee
Browse files

Fixed #15623 -- Corrected province codes for Canadian localflavor. Thanks to...

Fixed #15623 -- Corrected province codes for Canadian localflavor. Thanks to shelldweller for the report.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15864 bcc190cf-cafb-0310-a4f2-bffc1f526a37
parent c2ae6b2a
Loading
Loading
Loading
Loading
+15 −7
Original line number Diff line number Diff line
@@ -8,13 +8,18 @@ Source: http://www.canada.gc.ca/othergov/prov_e.html
This exists in this standalone file so that it's only imported into memory 
when explicitly needed. 
""" 
import warnings
warnings.warn(
    'There have been recent changes to the CA localflavor. See the release notes for details',
    RuntimeWarning
)

PROVINCE_CHOICES = ( 
    ('AB', 'Alberta'), 
    ('BC', 'British Columbia'), 
    ('MB', 'Manitoba'), 
    ('NB', 'New Brunswick'), 
    ('NF', 'Newfoundland and Labrador'), 
    ('NL', 'Newfoundland and Labrador'),
    ('NT', 'Northwest Territories'), 
    ('NS', 'Nova Scotia'), 
    ('NU', 'Nunavut'), 
@@ -22,7 +27,7 @@ PROVINCE_CHOICES = (
    ('PE', 'Prince Edward Island'), 
    ('QC', 'Quebec'), 
    ('SK', 'Saskatchewan'), 
    ('YK', 'Yukon') 
    ('YT', 'Yukon')
)

PROVINCES_NORMALIZED = {
@@ -35,9 +40,10 @@ PROVINCES_NORMALIZED = {
    'manitoba': 'MB',
    'nb': 'NB',
    'new brunswick': 'NB',
    'nf': 'NF',
    'newfoundland': 'NF',
    'newfoundland and labrador': 'NF',
    'nf': 'NL',
    'nl': 'NL',
    'newfoundland': 'NL',
    'newfoundland and labrador': 'NL',
    'nt': 'NT',
    'northwest territories': 'NT',
    'ns': 'NS',
@@ -54,6 +60,8 @@ PROVINCES_NORMALIZED = {
    'quebec': 'QC',
    'sk': 'SK',
    'saskatchewan': 'SK',
    'yk': 'YK',
    'yukon': 'YK',
    'yk': 'YT',
    'yt': 'YT',
    'yukon': 'YT',
    'yukon territory': 'YT',
}
 No newline at end of file
+5 −0
Original line number Diff line number Diff line
@@ -475,6 +475,11 @@ local flavors:
      has been removed from the province list in favor of the new
      official designation "Aceh (ACE)".

    * Canada (ca) -- The province "Newfoundland and Labrador" has
      had its province code updated to "NL", rather than the
      older "NF". In addition, the Yukon Territory has had its
      province code corrected to "YT", instead of "YK".

FormSet updates
~~~~~~~~~~~~~~~

+15 −2
Original line number Diff line number Diff line
import warnings

from django.contrib.localflavor.ca.forms import (CAPostalCodeField,
        CAPhoneNumberField, CAProvinceField, CAProvinceSelect,
        CASocialInsuranceNumberField)
@@ -6,6 +8,17 @@ from utils import LocalFlavorTestCase


class CALocalFlavorTests(LocalFlavorTestCase):
    def setUp(self):
        self.save_warnings_state()
        warnings.filterwarnings(
            "ignore",
            category=RuntimeWarning,
            module='django.contrib.localflavor.ca.ca_provinces'
        )

    def tearDown(self):
        self.restore_warnings_state()

    def test_CAProvinceSelect(self):
        f = CAProvinceSelect()
        out = u'''<select name="province">
@@ -13,7 +26,7 @@ class CALocalFlavorTests(LocalFlavorTestCase):
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland and Labrador</option>
<option value="NL">Newfoundland and Labrador</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
@@ -21,7 +34,7 @@ class CALocalFlavorTests(LocalFlavorTestCase):
<option value="PE">Prince Edward Island</option>
<option value="QC">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YK">Yukon</option>
<option value="YT">Yukon</option>
</select>'''
        self.assertEqual(f.render('province', 'AB'), out)