Files
odoo_source/addons/base_address_extended/tests/test_street_fields.py
T
Fabien Pinckaers 5b72f01766 [IMP] cleanup of base_address_city & base_address_extension
Rely on country.address_view_id instead of hacking the view on the fly. The
address layout (street VS street_name street_number street_number2) depends now
on the country of the user, not on the installed localisation. (it's now
configurable per country)

Unified street format to "Chaussee de Namur 40 - Appt 12"; the
configurable ones where actually wrong by country.

Allow street split without base_address_extended; all EDIs can now be
used with or without base_address_extended.

Merged base_address_city into base_address_extension, to avoid creating bridge
modules for no reason. Uses city_id instead of city if the country of the user
defines it AND if enforce_cities is set on this country.

Improved post_init script for large databases.

Split of street removed on res.company. (not required by any l10n)

[IMP] l10n_cn_city,l10n_nl,l10n_cl,l10n_co,l10n_pe: base_address_extended improvements

l10n_cn_city defined cities but did not provide a means to edit the city_id, so enforce_cities
l10n_nl only requires street names and numbers and thus does not need to depend on base_address_extended
l10n_cl should not depend on base_address_extended as none of the features are used
l10n_pe improve the view
l10n_co remove base_address_city dependency - move to l10n_co_edi

closes odoo/odoo#81710

Related: odoo/enterprise#23108
Related: odoo/upgrade#3129
Signed-off-by: Laurent Smet <las@odoo.com>
2022-01-25 17:21:04 +00:00

37 lines
1.9 KiB
Python

# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
from odoo.tests.common import TransactionCase
class TestStreetFields(TransactionCase):
def test_partner_create(self):
""" Will test the compute and inverse methods of street fields when creating partner records. """
mx_id = self.env.ref('base.mx').id
partner = self.env['res.partner'].create({'name': 'Test Address', 'country_id': mx_id})
values = [
['', '', '', ''],
['Place Royale', 'Place Royale', '', ''],
['Chaussee de Namur 40a - 2b', 'Chaussee de Namur', '40a', '2b'],
['Chaussee de Namur 1', 'Chaussee de Namur', '1', ''],
['40 Chaussee de Namur', '40 Chaussee de Namur', '', ''],
['Chaussee de Namur, 40 - Apt 2b', 'Chaussee de Namur,', '40', 'Apt 2b'],
['header Chaussee de Namur, 40 trailer', 'header Chaussee de Namur, 40 trailer', '', ''],
]
for street, name, number, number2 in values:
# test street -> street values (compute)
partner.street = street
self.assertEqual(partner.street_name, name, 'Wrongly formatted street name: expected %s, received %s' % (name, partner.street_name))
self.assertEqual(partner.street_number, number, 'Wrongly formatted street number: expected %s, received %s' % (number, partner.street_number))
self.assertEqual(partner.street_number2, number2, 'Wrongly formatted street number2: expected %s, received %s' % (number2, partner.street_number2))
for street, name, number, number2 in values:
partner.street_number2 = number2
partner.street_number = number
partner.street_name = name
self.assertEqual(partner.street, street, 'Wrongly formatted street: expected %s, received %s' % (street, partner.street))