def test_deterministic_proto_coder_determinism(self): for _ in range(10): keys = list(range(20)) mm_forward = test_message.MessageWithMap() for key in keys: mm_forward.field1[str(key)].field1 = str(key) mm_reverse = test_message.MessageWithMap() for key in reversed(keys): mm_reverse.field1[str(key)].field1 = str(key) coder = coders.DeterministicProtoCoder(mm_forward.__class__) self.assertEqual(coder.encode(mm_forward), coder.encode(mm_reverse))
def random_message_with_map(size): message = test_message.MessageWithMap() keys = list_int(size) random.shuffle(keys) for key in keys: message.field1[str(key)].field1 = small_string() return message