Use bigdecimal tag for XML-RPC

issue10734
review355491002
This commit is contained in:
Cédric Krier committed 2021-09-23 10:22:01 +02:00
1 parent 11aecd394a
commit 9ae04f3e68
3 files changed
+22 -4

No files matched your search

+1
View File
@@ -1,3 +1,4 @@
* Use bigdecimal tag for XML-RPC
* Use tuple in Dict value instead of list
* Do not set record name on title of report get_email
* Add node to id of status
+3 -4
View File
@@ -23,10 +23,9 @@ logger = logging.getLogger(__name__)
def dump_decimal(self, value, write):
value = {'__class__': 'Decimal',
'decimal': str(value),
}
self.dump_struct(value, write)
write('<value><bigdecimal>')
write(str(Decimal(value)))
write('</bigdecimal></value>')
def dump_date(self, value, write):
+18
View File
@@ -101,6 +101,24 @@ class XMLTestCase(DumpsLoadsMixin, unittest.TestCase):
result, = result
self.assertEqual(value, result)
def test_decimal_class_load(self):
"Test load Decimal as __class__"
s = """<params><param><value>
<struct>
<member>
<name>__class__</name>
<value><string>Decimal</string></value>
</member>
<member>
<name>decimal</name>
<value><string>3.141592653589793</string></value>
</member>
</struct>
</value></param></params>"""
result, _ = client.loads(s)
result, = result
self.assertEqual(result, Decimal('3.141592653589793'))
def suite():
suite_ = unittest.TestSuite()