Skip to content

Commit 0b8327d

Browse files
imlopesHadrien Huvelle
authored andcommitted
[18.0][ADD] edi_exchange_template_oca_json - remove dependency on
jsonifier
1 parent df9e01a commit 0b8327d

File tree

3 files changed

+17
-22
lines changed

3 files changed

+17
-22
lines changed

edi_exchange_template_oca_json/__manifest__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@
99
"license": "LGPL-3",
1010
"author": "Camptocamp, Odoo Community Association (OCA)",
1111
"website": "https://github.com/OCA/edi-framework",
12-
"depends": ["edi_exchange_template_oca", "jsonifier"],
12+
"depends": ["edi_exchange_template_oca"],
1313
"data": [],
1414
}

edi_exchange_template_oca_json/models/edi_exchange_template_output.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,18 @@ def _post_process_output(self, output):
2727

2828
def _render_json_values(self, exchange_record, **kw):
2929
"""Render JSON values."""
30-
parser = self._get_json_parser(exchange_record)
31-
result = exchange_record.record.jsonify(parser=parser)
32-
return result
33-
34-
def _get_json_parser(self, exchange_record):
35-
"""Retrieve parser to use for JSON generation."""
36-
json_parser = self._evaluate_code_snippet()
37-
if not json_parser:
38-
json_parser = ["display_name"]
39-
return json_parser
30+
values = {
31+
"exchange_record": exchange_record,
32+
"record": exchange_record.record,
33+
"backend": exchange_record.backend_id,
34+
"template": self,
35+
"render_edi_template": self._render_template,
36+
"get_info_provider": self._get_info_provider,
37+
"info": {},
38+
}
39+
values.update(kw)
40+
values.update(self._time_utils())
41+
return self._evaluate_code_snippet(**values)
4042

4143
def _post_process_json_output(self, output):
4244
"""Post-process JSON output."""

edi_exchange_template_oca_json/tests/test_edi_backend_output_json.py

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,10 @@ def _setup_records(cls):
2929
"type_id": cls.type_out_json.id,
3030
"output_type": "json",
3131
"code_snippet": """
32-
field_list = {
33-
"fields": [
34-
{
35-
"name": "name"
36-
},
37-
{
38-
"name": "ref"
39-
}
40-
]
32+
result = {
33+
"name": record.name,
34+
"ref": record.ref
4135
}
42-
result = field_list
4336
""",
4437
}
4538
)
@@ -60,6 +53,6 @@ def test_00_get_template_json(self):
6053

6154
def test_01_generate_json(self):
6255
self.backend.exchange_generate(self.record_json)
63-
expected = f"[{{'name': '{self.partner.name}', 'ref': '{self.partner.ref}'}}]"
56+
expected = f"{{'name': '{self.partner.name}', 'ref': '{self.partner.ref}'}}"
6457
file_content = self.record_json._get_file_content()
6558
self.assertEqual(file_content.strip(), expected)

0 commit comments

Comments
 (0)