in shims/qpid-proton-python/src/amqp_complex_types_test/Receiver.py [0:0]
def check_lists_equal(list1, list2):
"""Check two Proton lists are equal"""
# Check params are lists
if not isinstance(list1, list) or not isinstance(list2, list):
return False
# Check list sizes equal
if len(list1) != len(list2):
return False
# Check each element is the same type and value
for elt1, elt2 in zip(list1, list2):
#pylint: disable=unidiomatic-typecheck
if type(elt1) != type(elt2):
return False
if isinstance(elt1, proton.Array):
if not AmqpComplexTypesTestReceiver.check_arrays_equal(elt1, elt2):
return False
elif isinstance(elt1, list):
if not AmqpComplexTypesTestReceiver.check_lists_equal(elt1, elt2):
return False
elif isinstance(elt1, dict):
if not AmqpComplexTypesTestReceiver.check_maps_equal(elt1, elt2):
return False
else:
if not AmqpComplexTypesTestReceiver.check_simple_values_equal(elt1, elt2):
return False
return True