def test_unicode_string_serialize_to_dict(self): message = Test() message.string_field = GREEK_LETTERS message.req_field = 1 self.assertEqual( message.SerializeToDict(), {'string_field': u"\u0391\u0392\u0393\u0394", 'req_field': 1} )
def test_message_init_with_repeated_message_field_keyword_arg_extends(self): source_message = Test() source_message.list_ref.add().timestamp = 123 source_message.list_ref.add().timestamp = 456 message = Test(list_ref=source_message.list_ref) self.assertEqual(message.list_ref[0].timestamp, 123) self.assertEqual(message.list_ref[1].timestamp, 456)
def test_merge_from_sets_repeated_scalar_field_that_is_set_in_source(self): source = Test() dest = Test() source.list_fieldx.append(3) dest.MergeFrom(source) self.assertEqual(len(dest.list_fieldx), 1) self.assertEqual(dest.list_fieldx[0], 3)
def test_unicode_string_parse_from_dict(self): message = Test() message.ParseFromDict({ 'string_field': u"\u0391\u0392\u0393\u0394", 'req_field': 1 }) self.assertEqual(message.string_field, GREEK_LETTERS)
def test_message_init_with_repeated_scalar_field_keyword_arg_extends(self): source_message = Test() source_message.list_fieldx.append(7) source_message.list_fieldx.append(8) source_message.list_fieldx.append(9) message = Test(list_fieldx=source_message.list_fieldx) self.assertEqual(list(message.list_fieldx), [7, 8, 9])
def test_merge_from_sets_repeated_message_field_that_is_set_in_source(self): source = Test() dest = Test() source.list_ref.add().field1 = 3 dest.MergeFrom(source) self.assertEqual(len(dest.list_ref), 1) self.assertEqual(dest.list_ref[0].field1, 3)
def test_setters(self): source = create_an_test() dest = Test() for setter, value in zip(dest.Setters(), source.Values()): setter(value) for source_val, dest_val in zip(source.Values(), dest.Values()): self.assertEqual(source_val, dest_val)
def test_set_list_with_keyword_arg(self): refs = [TestRef(), TestRef(), TestRef()] for i in range(3): refs[i].field1 = i t = Test(list_ref=refs) for i in range(3): self.assertEqual(t.list_ref[i].field1, i) self.assertIsNot(t.list_ref[i], refs[i])
def test_extend_with_generic_list(self): t = Test() refs = [TestRef(), TestRef(), TestRef()] for i in range(3): refs[i].field1 = i t.list_ref.extend(refs) for i in range(3): self.assertEqual(t.list_ref[i].field1, i) self.assertIsNot(t.list_ref[i], refs[i])
def test_merge_from_does_set_enum_field_that_is_set_in_source(self): source = Test() dest = Test() source.enum_field = TestEnumField.TEST_ENUM_FIELD_2.value dest.MergeFrom(source) self.assertEqual(dest.enum_field, TestEnumField.TEST_ENUM_FIELD_2.value)
def test_unicode_string_parse_from_string(self): message = Test.FromString(b'\x1a\x08\xce\x91\xce\x92\xce\x93\xce\x94') self.assertEqual(message.string_field, GREEK_LETTERS)
def test_message_init_with_scalar_field_keyword_arg_sets_value(self): message = Test(req_field=3) self.assertEqual(message.req_field, 3)
def test_message_init_with_message_field_keyword_arg_merges(self): ss3_message = TestSs3() ss3_message.int_field = 7 message = Test(another_substruct=ss3_message) self.assertFalse(message.another_substruct is ss3_message) self.assertEqual(message.another_substruct.int_field, 7)
def test_has_field_for_cleared_indirectly_set_message_field_returns_false( self): message = Test() message.substruct.field3.field1 = 3.14159 message.ClearField('substruct') self.assertFalse(message.HasField('substruct'))
def test_has_field_for_message_field_set_by_repeated_message_field_returns_true( self): message = Test() message.substruct.list_object.append(TestSs1Thing()) self.assertTrue(message.HasField('substruct'))
def test_has_field_for_set_scalar_field_returns_true(self): message = Test() message.timestamp = 123 self.assertTrue(message.HasField('timestamp'))
def test_has_field_for_indirectly_set_message_field_returns_true(self): message = Test() message.substruct.field3.field1 = 3.14159 self.assertTrue(message.HasField('substruct'))
def test_unicode_string_parse_from_json(self): message = Test() message.ParseFromJson('{"string_field": "\\u0391\\u0392\\u0393\\u0394", "req_field": 1}') self.assertEqual(message.string_field, GREEK_LETTERS)
def test_has_field_for_scalar_field_of_cleared_message_returns_false(self): message = Test() message.timestamp = 123 message.Clear() self.assertFalse(message.HasField('timestamp'))
def test_unicode_string_serialize_to_string(self): message = Test() message.string_field = GREEK_LETTERS self.assertEqual(message.SerializePartialToString(), b'\x1a\x08\xce\x91\xce\x92\xce\x93\xce\x94')
def test_merge_from_empty_message_notifies_parent(self): source = TestSs1() dest = Test() dest.substruct.MergeFrom(source) self.assertTrue(dest.HasField('substruct'))
def test_unicode_string_serialize_to_string(self): message = Test() message.string_field = GREEK_LETTERS self.assertEqual(message.SerializePartialToString(), b"\x1a\x08\xce\x91\xce\x92\xce\x93\xce\x94")
def test_has_field_for_repeated_field_raises_value_error(self): message = Test() self.assertRaises(ValueError, message.HasField, 'list_fieldx')
def test_unicode_string_serialize_to_dict(self): message = Test() message.string_field = GREEK_LETTERS message.req_field = 1 self.assertEqual(message.SerializeToDict(), {"string_field": u"\u0391\u0392\u0393\u0394", "req_field": 1})
def test_message_init_by_repeated_field_add_method_passes_keyword_args( self): message = Test() message.list_ref.add(timestamp=123, field1=456) self.assertEqual(message.list_ref[0].timestamp, 123) self.assertEqual(message.list_ref[0].field1, 456)
def test_has_field_for_message_field_of_cleared_message_returns_false( self): message = Test() message.substruct.field2 = "something" message.Clear() self.assertFalse(message.HasField('substruct'))
def test_has_field_for_unset_scalar_field_returns_false(self): message = Test() self.assertFalse(message.HasField('timestamp'))
def test_merge_from_does_set_enum_field_that_is_set_in_source(self): source = Test() dest = Test() source.enum_field = Test.TEST_ENUM_FIELD_2 dest.MergeFrom(source) self.assertEqual(dest.enum_field, Test.TEST_ENUM_FIELD_2)
def test_merge_from_wrong_type_raises_type_error(self): dest = Test() self.assertRaises(TypeError, dest.MergeFrom, 1)
def test_has_field_for_unset_message_field_returns_false(self): message = Test() self.assertFalse(message.HasField('substruct'))
def test_merge_from_empty_message_does_not_set_enum_field(self): source = Test() dest = Test() dest.MergeFrom(source) self.assertFalse(dest.HasField('enum_field'))
def test_has_field_for_set_message_field_returns_true(self): message = Test() message.substruct.field2 = "something" self.assertTrue(message.HasField('substruct'))