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.

78 lines
2.5 KiB

  1. # -*- coding: utf-8 -*-
  2. # © <YEAR(S)> <AUTHOR(S)>
  3. # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
  4. from openerp.tests.common import TransactionCase
  5. class TestParser(TransactionCase):
  6. def setUp(self):
  7. super(TestParser, self).setUp()
  8. self.expected_parser = [
  9. u'lang',
  10. u'comment',
  11. u'credit_limit',
  12. u'name',
  13. u'color',
  14. (u'child_ids', [
  15. (u'child_ids', [u'name']),
  16. u'email',
  17. (u'country_id', [u'code', u'name']),
  18. u'name',
  19. u'id',
  20. ]),
  21. (u'country_id', [u'code', u'name']),
  22. u'active',
  23. (u'category_id', [u'name'])
  24. ]
  25. # TODO adapt data for 8.0
  26. def fixme_test_getting_parser(self):
  27. exporter = self.env.ref('base_jsonify.ir_exp_partner')
  28. parser = exporter.get_json_parser()
  29. self.assertEqual(parser, self.expected_parser)
  30. def fixme_test_json_export(self):
  31. expected_json = [{
  32. u'lang': False,
  33. u'comment': False,
  34. u'credit_limit': 0.0,
  35. u'name': u'Camptocamp',
  36. u'color': 0,
  37. u'country_id': {u'code': u'FR', u'name': u'France'},
  38. u'child_ids': [{
  39. u'id': 29,
  40. u'country_id': {
  41. u'code': u'FR',
  42. u'name': u'France'
  43. },
  44. u'child_ids': [],
  45. u'email': u'ayaan.agarwal@bestdesigners.example.com',
  46. u'name': u'Ayaan Agarwal'
  47. }, {
  48. u'id': 35,
  49. u'country_id': {
  50. u'code': u'FR',
  51. u'name': u'France'},
  52. u'child_ids': [],
  53. u'email': u'benjamin.flores@nebula.example.com',
  54. u'name': u'Benjamin Flores'
  55. }, {
  56. u'id': 28,
  57. u'country_id': {
  58. u'code': u'FR',
  59. u'name': u'France'},
  60. u'child_ids': [],
  61. u'email': u'phillipp.miller@mediapole.example.com',
  62. u'name': u'Phillipp Miller'
  63. }],
  64. u'active': True,
  65. u'category_id': [
  66. {u'name': u'Gold'},
  67. {u'name': u'Services'}
  68. ]
  69. }]
  70. partner = self.env.ref('base.res_partner_12')
  71. json_partner = partner.jsonify(self.expected_parser)
  72. self.assertEqual(json_partner, expected_json)