123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- syntax = "proto2";
- // 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.
- // Issue: Non-"Google.Protobuffers" namespace will ensure that protobuffer library types are qualified
- option csharp_namespace = "UnitTest.Issues.TestProtos";
- 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 generation
- option (google.protobuf.csharp_file_options).service_generator_type = IRPCDISPATCH;
- service TestGenericService {
- rpc Foo(TestBasicNoFields) returns (TestBasicMessage);
- rpc Bar(TestBasicNoFields) returns (TestBasicMessage);
- }
- */
- // Old issue 13: http://code.google.com/p/protobuf-csharp-port/issues/detail?id=13
- // New issue 309: https://github.com/google/protobuf/issues/309
-
- // message A {
- // optional int32 _A = 1;
- // }
- // message B {
- // optional int32 B_ = 1;
- // }
- //message AB {
- // optional int32 a_b = 1;
- //}
- // Similar issue with numeric names
- // Java code failed too, so probably best for this to be a restriction.
- // See https://github.com/google/protobuf/issues/308
- // message NumberField {
- // optional int32 _01 = 1;
- // }
- // Issue 28: Circular message dependencies result in null defaults for DefaultInstance
- message MyMessageAReferenceB {
- required MyMessageBReferenceA value = 1;
- }
- message MyMessageBReferenceA {
- required MyMessageAReferenceB value = 1;
- }
- // issue 19 - negative enum values
- enum 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=45
- message ItemField {
- optional int32 item = 1;
- }
|