Example #1
0
def test_field_mask_message_diffs():
    original = type_pb2.Type()
    modified = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='name'))
    assert (protobuf_helpers.field_mask(
        original, modified).paths == ['source_context.file_name'])

    original = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='name'))
    modified = type_pb2.Type()
    assert (protobuf_helpers.field_mask(original,
                                        modified).paths == ['source_context'])

    original = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='name'))
    modified = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='other_name'))
    assert (protobuf_helpers.field_mask(
        original, modified).paths == ['source_context.file_name'])

    original = None
    modified = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='name'))
    assert (protobuf_helpers.field_mask(
        original, modified).paths == ['source_context.file_name'])

    original = type_pb2.Type(source_context=source_context_pb2.SourceContext(
        file_name='name'))
    modified = None
    assert (protobuf_helpers.field_mask(original,
                                        modified).paths == ['source_context'])
Example #2
0
def _get_type_recursive(descriptor, definitions):
    if descriptor.full_name in definitions:
        return
    type_ = type_pb2.Type()
    definitions[descriptor.full_name] = type_
    type_.name = descriptor.full_name
    for field_desc in descriptor.fields:
        field = type_.fields.add()
        field.name = field_desc.name
        field.kind = field_desc.type
        if field_desc.message_type is not None:
            field.type_url = "type.google_apis.com/" + field_desc.message_type.full_name
            _get_type_recursive(field_desc.message_type, definitions)
Example #3
0
def test_field_mask_singular_field_diffs():
    original = type_pb2.Type(name='name')
    modified = type_pb2.Type()
    assert (protobuf_helpers.field_mask(original, modified).paths == ['name'])

    original = type_pb2.Type(name='name')
    modified = type_pb2.Type()
    assert (protobuf_helpers.field_mask(original, modified).paths == ['name'])

    original = None
    modified = type_pb2.Type(name='name')
    assert (protobuf_helpers.field_mask(original, modified).paths == ['name'])

    original = type_pb2.Type(name='name')
    modified = None
    assert (protobuf_helpers.field_mask(original, modified).paths == ['name'])
def test_field_mask_singular_field_diffs():
    original = type_pb2.Type(name="name")
    modified = type_pb2.Type()
    assert protobuf_helpers.field_mask(original, modified).paths == ["name"]

    original = type_pb2.Type(name="name")
    modified = type_pb2.Type()
    assert protobuf_helpers.field_mask(original, modified).paths == ["name"]

    original = None
    modified = type_pb2.Type(name="name")
    assert protobuf_helpers.field_mask(original, modified).paths == ["name"]

    original = type_pb2.Type(name="name")
    modified = None
    assert protobuf_helpers.field_mask(original, modified).paths == ["name"]