mirror of
				https://github.com/LonamiWebs/Telethon.git
				synced 2025-11-04 01:47:27 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import pickle
 | 
						|
 | 
						|
from telethon.errors import RPCError, BadRequestError, FileIdInvalidError, NetworkMigrateError
 | 
						|
 | 
						|
 | 
						|
def _assert_equality(error, unpickled_error):
 | 
						|
    assert error.code == unpickled_error.code
 | 
						|
    assert error.message == unpickled_error.message
 | 
						|
    assert type(error) == type(unpickled_error)
 | 
						|
    assert str(error) == str(unpickled_error)
 | 
						|
 | 
						|
 | 
						|
def test_base_rpcerror_pickle():
 | 
						|
    error = RPCError("request", "message", 123)
 | 
						|
    unpickled_error = pickle.loads(pickle.dumps(error))
 | 
						|
    _assert_equality(error, unpickled_error)
 | 
						|
 | 
						|
 | 
						|
def test_rpcerror_pickle():
 | 
						|
    error = BadRequestError("request", "BAD_REQUEST", 400)
 | 
						|
    unpickled_error = pickle.loads(pickle.dumps(error))
 | 
						|
    _assert_equality(error, unpickled_error)
 | 
						|
 | 
						|
 | 
						|
def test_fancy_rpcerror_pickle():
 | 
						|
    error = FileIdInvalidError("request")
 | 
						|
    unpickled_error = pickle.loads(pickle.dumps(error))
 | 
						|
    _assert_equality(error, unpickled_error)
 | 
						|
 | 
						|
 | 
						|
def test_fancy_rpcerror_capture_pickle():
 | 
						|
    error = NetworkMigrateError(request="request", capture=5)
 | 
						|
    unpickled_error = pickle.loads(pickle.dumps(error))
 | 
						|
    _assert_equality(error, unpickled_error)
 | 
						|
    assert error.new_dc == unpickled_error.new_dc
 |