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.

42 lines
1.4 KiB

  1. # -*- coding: utf-8 -*-
  2. # Copyright 2016 Acsone S.A.
  3. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
  4. from openerp.exceptions import ValidationError
  5. from openerp.tests.common import TransactionCase
  6. class TestGLN(TransactionCase):
  7. def setUp(self):
  8. super(TestGLN, self).setUp()
  9. self.partner = self.env['res.partner'].create({'name': 'TestGLN'})
  10. self.partner2 = self.env['res.partner'].create({'name': 'TestGLN2'})
  11. pc = self.env.ref('partner_identification_gln.'
  12. 'partner_identification_gln_number_category')
  13. self.partner_id_category = pc
  14. def test_gln(self):
  15. # Good GLN
  16. vals = {'name': '5450534001717',
  17. 'category_id': self.partner_id_category.id
  18. }
  19. self.partner.write({'id_numbers': [(0, 0, vals)]})
  20. id_number = self.partner.id_numbers[0]
  21. self.assertEqual(id_number.name, '5450534001717')
  22. # Duplicate GLN
  23. vals = {'name': '5450534001717',
  24. 'category_id': self.partner_id_category.id
  25. }
  26. with self.assertRaises(ValidationError):
  27. self.partner2.write({'id_numbers': [(0, 0, vals)]})
  28. # Bad GLN
  29. vals = {'name': '5450534001716',
  30. 'category_id': self.partner_id_category.id
  31. }
  32. with self.assertRaises(ValidationError):
  33. self.partner.write({'id_numbers': [(0, 0, vals)]})