| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 | // These proto descriptors have at one time been reported as an issue or defect.// They are kept here to replicate the issue, and continue to verify the fix.import "google/protobuf/csharp_options.proto";// Issue: Non-"Google.Protobuffers" namespace will ensure that protobuffer library types are qualifiedoption (google.protobuf.csharp_file_options).namespace = "UnitTest.Issues.TestProtos";option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestExtrasIssuesProtoFile";package unittest_issues;option optimize_for = SPEED;// The following is a representative set of features/*enum EnumOptions {    ONE = 0;    TWO = 1;    THREE = 2;}message TestBasicChild{    repeated EnumOptions options = 3;    optional bytes binary = 4;}message TestBasicNoFields {}message TestBasicRescursive {    optional TestBasicRescursive child = 1;}message TestBasicMessage {    optional int64 number = 6;    repeated int32 numbers = 2;    optional string text = 3;    repeated string textlines = 700;    optional bool valid = 5;        optional TestBasicChild child = 1;    repeated group Children = 401     {        repeated EnumOptions options = 3;        optional bytes binary = 4;    }    extensions 100 to 199;}message  TestBasicExtension {  required int32 number = 1;}  extend TestBasicMessage {  optional EnumOptions extension_enum = 101;  optional string extension_text = 102;  repeated int32 extension_number = 103 [packed = true];  optional TestBasicExtension extension_message = 199;}// Issue for non-qualified type reference in new services generationoption (google.protobuf.csharp_file_options).service_generator_type = IRPCDISPATCH;service TestGenericService {  rpc Foo(TestBasicNoFields) returns (TestBasicMessage);  rpc Bar(TestBasicNoFields) returns (TestBasicMessage);}*/// Issue 13: http://code.google.com/p/protobuf-csharp-port/issues/detail?id=13 message A {    optional int32 _A = 1;}message B {    optional int32 B_ = 1;}message AB {    optional int32 a_b = 1;}// Similar issue with numeric namesmessage NumberField {    optional int32 _01 = 1;}// Issue 28: Circular message dependencies result in null defaults for DefaultInstancemessage MyMessageAReferenceB {    required MyMessageBReferenceA value = 1;}message MyMessageBReferenceA {    required MyMessageAReferenceB value = 1;}// issue 19 - negative enum valuesenum NegativeEnum {    FiveBelow = -5;    MinusOne = -1;    Zero = 0;}message NegativeEnumMessage {     optional NegativeEnum value = 1;    repeated NegativeEnum values = 2;    repeated NegativeEnum packed_values = 3 [packed=true];}// Issue 21: http://code.google.com/p/protobuf-csharp-port/issues/detail?id=21// Decorate fields with [deprecated=true] as [System.Obsolete]message DeprecatedChild {}enum DeprecatedEnum {    one = 1;}message DeprecatedFieldsMessage {    optional int32 PrimitiveValue = 1 [deprecated = true];    repeated int32 PrimitiveArray = 2 [deprecated = true];    optional DeprecatedChild MessageValue = 3 [deprecated = true];    repeated DeprecatedChild MessageArray = 4 [deprecated = true];    optional DeprecatedEnum EnumValue = 5 [deprecated = true];    repeated DeprecatedEnum EnumArray = 6 [deprecated = true];}// Issue 45: http://code.google.com/p/protobuf-csharp-port/issues/detail?id=45message ItemField {  optional int32 item = 1;}
 |