You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
3.3 KiB
85 lines
3.3 KiB
# Copyright (C) 2015 Forest and Biomass Romania
|
|
# Copyright (C) 2020 NextERP Romania
|
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
|
|
|
from odoo.tests.common import Form, TransactionCase
|
|
|
|
|
|
class TestPartnerCreateByVAT(TransactionCase):
|
|
def setUp(self):
|
|
super().setUp()
|
|
self.partner_model = self.env["res.partner"]
|
|
self.be_country_id = self.env.ref("base.be").id
|
|
self.sample_1 = {
|
|
"name": "SA ODOO",
|
|
"address": "Chaussée De Namur 40 1367 Ramillies",
|
|
"country_code": "BE",
|
|
}
|
|
|
|
def test_create_from_vat1(self):
|
|
# Create an partner from VAT number field
|
|
with Form(self.partner_model) as partner_form:
|
|
partner_form.is_company = True
|
|
partner_form.vat = "be0477472701"
|
|
|
|
# Check if the datas fetch correspond with the datas from VIES.
|
|
self.assertEqual(partner_form.name, self.sample_1["name"])
|
|
self.assertEqual(partner_form.street, self.sample_1["address"])
|
|
self.assertEqual(
|
|
partner_form.country_id.code, self.sample_1["country_code"]
|
|
)
|
|
self.assertEqual(partner_form.vat, "BE0477472701")
|
|
|
|
def test_company_vat_change(self):
|
|
# Change partner VAT number field
|
|
partner = self.partner_model.create({"name": "SA ODOO", "is_company": True})
|
|
with Form(partner) as partner_form:
|
|
# Check if the datas fetch correspond with the datas from VIES.
|
|
partner_form.vat = "be0477472701"
|
|
self.assertEqual(partner_form.name, self.sample_1["name"])
|
|
self.assertEqual(partner_form.street, self.sample_1["address"])
|
|
self.assertEqual(
|
|
partner_form.country_id.code, self.sample_1["country_code"]
|
|
)
|
|
self.assertEqual(partner_form.vat, "BE0477472701")
|
|
|
|
def test_empty_vat_change(self):
|
|
partner = self.partner_model.create(
|
|
{
|
|
"name": "2",
|
|
"is_company": True,
|
|
"country_id": self.be_country_id,
|
|
}
|
|
)
|
|
with Form(partner) as partner_form:
|
|
partner_form.vat = False
|
|
self.assertEqual(partner_form.name, partner.name)
|
|
self.assertEqual(partner_form.street, False)
|
|
self.assertEqual(partner_form.country_id.id, partner.country_id.id)
|
|
|
|
def test_individual_vat_change(self):
|
|
partner = self.partner_model.create(
|
|
{
|
|
"name": "3",
|
|
"is_company": False,
|
|
"country_id": self.be_country_id,
|
|
}
|
|
)
|
|
with Form(partner) as partner_form:
|
|
partner_form.vat = "BE0477472701"
|
|
self.assertEqual(partner_form.name, partner.name)
|
|
self.assertEqual(partner_form.street, False)
|
|
self.assertEqual(partner_form.country_id.id, partner.country_id.id)
|
|
|
|
def test_non_eu_vat_change(self):
|
|
non_eu_country_id = self.env.ref("base.sc").id
|
|
partner = self.partner_model.create(
|
|
{
|
|
"name": "4",
|
|
"is_company": True,
|
|
"country_id": non_eu_country_id,
|
|
}
|
|
)
|
|
with Form(partner) as partner_form:
|
|
partner_form.vat = "GT1234567 - 1"
|
|
self.assertEqual(partner_form.name, partner.name)
|