* Remove six for PY2 compatability since our dependencies are not, PY2 is legacy. * Removed usages of utils from future/past libraries since they are deprecated. This includes 'from __future__ ...' and 'from past...' statements. * Removed compatibility imports for PY2, switched from six imports to standard library imports. * Removed utils code blocks that handle operations depending on PY2/3 versions. * Removed 'from __future__ ...' lines from templates/code generators * Used PY3 syntaxes in place of PY2 compatible blocks. eg: metaclass
35 lines
No EOL
863 B
Python
35 lines
No EOL
863 B
Python
# imports - standard imports
|
|
import unittest
|
|
|
|
# imports - module imports
|
|
from frappe.chat.util import (
|
|
get_user_doc,
|
|
safe_json_loads
|
|
)
|
|
import frappe
|
|
|
|
class TestChatUtil(unittest.TestCase):
|
|
def test_safe_json_loads(self):
|
|
number = safe_json_loads("1")
|
|
self.assertEqual(type(number), int)
|
|
|
|
number = safe_json_loads("1.0")
|
|
self.assertEqual(type(number), float)
|
|
|
|
string = safe_json_loads("foobar")
|
|
self.assertEqual(type(string), str)
|
|
|
|
array = safe_json_loads('[{ "foo": "bar" }]')
|
|
self.assertEqual(type(array), list)
|
|
|
|
objekt = safe_json_loads('{ "foo": "bar" }')
|
|
self.assertEqual(type(objekt), dict)
|
|
|
|
true, null = safe_json_loads("true", "null")
|
|
self.assertEqual(true, True)
|
|
self.assertEqual(null, None)
|
|
|
|
def test_get_user_doc(self):
|
|
# Needs more test cases.
|
|
user = get_user_doc()
|
|
self.assertEqual(user.name, frappe.session.user) |