Files
jsonrpc/tests/test_jsonrpc.py
2025-05-29 03:05:15 +03:00

48 lines
1.2 KiB
Python

__author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru'
import unittest
from jsonrpc import JSONRPC
jsonrpc = JSONRPC()
@jsonrpc.method('boo')
def index() -> str:
return 'Welcome to JSON-RPC'
class Calc(unittest.TestCase):
def test_method_exist(self):
self.assertIn('boo', jsonrpc.methods)
def test_example(self):
self.assertEqual(
jsonrpc.example('boo'),
{'jsonrpc': '2.0', 'method': 'boo', 'id': 1}
)
def test_evaluate(self):
request = {'jsonrpc': '2.0', 'method': 'boo', 'id': 1}
response = jsonrpc(request)
self.assertEqual(
response,
{'jsonrpc': '2.0', 'result': 'Welcome to JSON-RPC', 'id': 1}
)
def test_error(self):
request = {'jsonrpc': '2.0', 'method': 'bla-bla', 'id': 1}
response = jsonrpc(request)
print(response)
self.assertEqual(
response,
{
'jsonrpc': '2.0',
'error': {
'code': -32601,
'message': 'Метод не найден: bla-bla'
},
'id': 1
}
)