Merge pull request #667 from jskeet/fix-field-orderings

Fix trivial bug in field orderings.
pull/674/head
Jan Tattermusch 10 years ago
commit abd7083b0c
  1. 13
      csharp/src/Google.Protobuf.Test/Reflection/DescriptorsTest.cs
  2. 2
      csharp/src/Google.Protobuf/Reflection/MessageDescriptor.cs

@ -238,5 +238,18 @@ namespace Google.Protobuf.Reflection
Assert.IsNull(fieldDescriptor.Accessor);
Assert.IsNull(messageDescriptor.GeneratedType);
}
// From TestFieldOrdering:
// string my_string = 11;
// int64 my_int = 1;
// float my_float = 101;
// NestedMessage single_nested_message = 200;
[Test]
public void FieldListOrderings()
{
var fields = TestFieldOrderings.Descriptor.Fields;
Assert.AreEqual(new[] { 11, 1, 101, 200 }, fields.InDeclarationOrder().Select(x => x.FieldNumber));
Assert.AreEqual(new[] { 1, 11, 101, 200 }, fields.InFieldNumberOrder().Select(x => x.FieldNumber));
}
}
}

@ -250,7 +250,7 @@ namespace Google.Protobuf.Reflection
/// </value>
public IList<FieldDescriptor> InFieldNumberOrder()
{
return messageDescriptor.fieldsInDeclarationOrder;
return messageDescriptor.fieldsInNumberOrder;
}
/// <summary>

Loading…
Cancel
Save