aboutsummaryrefslogtreecommitdiff
path: root/csharp/protos
diff options
context:
space:
mode:
Diffstat (limited to 'csharp/protos')
-rw-r--r--csharp/protos/extest/unittest_extras_full.proto71
-rw-r--r--csharp/protos/extest/unittest_extras_lite.proto115
-rw-r--r--csharp/protos/extest/unittest_extras_xmltest.proto53
-rw-r--r--csharp/protos/extest/unittest_issues.proto141
-rw-r--r--csharp/protos/unittest_issues.proto119
5 files changed, 119 insertions, 380 deletions
diff --git a/csharp/protos/extest/unittest_extras_full.proto b/csharp/protos/extest/unittest_extras_full.proto
deleted file mode 100644
index 1b546053..00000000
--- a/csharp/protos/extest/unittest_extras_full.proto
+++ /dev/null
@@ -1,71 +0,0 @@
-syntax = "proto2";
-
-package protobuf_unittest_extra;
-
-option csharp_namespace = "Google.ProtocolBuffers.TestProtos";
-option optimize_for = CODE_SIZE;
-option java_package = "com.google.protobuf";
-
-message TestInteropPerson {
- required string name = 1;
- required int32 id = 2;
- optional string email = 3;
- repeated int32 codes = 10 [packed=true];
-
- enum PhoneType {
- MOBILE = 0;
- HOME = 1;
- WORK = 2;
- }
-
- message PhoneNumber {
- required string number = 1;
- optional PhoneType type = 2 [default = HOME];
- }
-
- repeated PhoneNumber phone = 4;
-
- repeated group Addresses = 5 {
- required string address = 1;
- optional string address2 = 2;
- required string city = 3;
- required string state = 4;
- required fixed32 zip = 5;
- }
-
- extensions 100 to 199;
-}
-
-message TestInteropEmployeeId {
- required string number = 1;
-}
-
-extend TestInteropPerson {
- // Note: changed from required to optional, as required fields are not
- // permitted in extensions. (The fact that this was allowed in protogen
- // before was almost certainly a bug.)
- optional TestInteropEmployeeId employee_id = 126;
-}
-
-message TestMissingFieldsA {
- required string name = 1;
- required int32 id = 2;
- optional string email = 3;
-
- message SubA {
- required int32 count = 5;
- repeated string values = 6;
- }
- optional SubA testA = 11;
-}
-
-message TestMissingFieldsB {
- required string name = 1;
- required int32 id = 2;
- optional string website = 4;
-
- message SubB {
- repeated string values = 7;
- }
- optional SubB testB = 12;
-}
diff --git a/csharp/protos/extest/unittest_extras_lite.proto b/csharp/protos/extest/unittest_extras_lite.proto
deleted file mode 100644
index 0c242d2f..00000000
--- a/csharp/protos/extest/unittest_extras_lite.proto
+++ /dev/null
@@ -1,115 +0,0 @@
-syntax = "proto2";
-
-package protobuf_unittest_extra;
-
-option csharp_namespace = "Google.ProtocolBuffers.TestProtos";
-option optimize_for = LITE_RUNTIME;
-option java_package = "com.google.protobuf";
-
-message TestRequiredLite {
- required int32 d = 1;
- required ExtraEnum en = 2 [default = DEFAULT];
-}
-
-enum ExtraEnum {
- DEFAULT = 10;
- EXLITE_FOO = 7;
- EXLITE_BAR = 8;
- EXLITE_BAZ = 9;
-}
-
-message TestInteropPersonLite {
- required string name = 1;
- required int32 id = 2;
- optional string email = 3;
- repeated int32 codes = 10 [packed=true];
-
- enum PhoneType {
- MOBILE = 0;
- HOME = 1;
- WORK = 2;
- }
-
- message PhoneNumber {
- required string number = 1;
- optional PhoneType type = 2 [default = HOME];
- }
-
- repeated PhoneNumber phone = 4;
-
- repeated group Addresses = 5 {
- required string address = 1;
- optional string address2 = 2;
- required string city = 3;
- required string state = 4;
- required fixed32 zip = 5;
- }
-
- extensions 100 to 199;
-}
-
-message TestInteropEmployeeIdLite {
- required string number = 1;
-}
-
-extend TestInteropPersonLite {
- // Note: changed from required to optional, as required fields are not
- // permitted in extensions. (The fact that this was allowed in protogen
- // before was almost certainly a bug.)
- optional TestInteropEmployeeIdLite employee_id_lite = 126;
-}
-
-/* Removed from unittest_lite.proto and added back here */
-
-message TestUnpackedExtensionsLite {
- extensions 1 to max;
-}
-
-message TestUnpackedTypesLite {
- repeated int32 unpacked_int32 = 90;
- repeated int64 unpacked_int64 = 91;
- repeated uint32 unpacked_uint32 = 92;
- repeated uint64 unpacked_uint64 = 93;
- repeated sint32 unpacked_sint32 = 94;
- repeated sint64 unpacked_sint64 = 95;
- repeated fixed32 unpacked_fixed32 = 96;
- repeated fixed64 unpacked_fixed64 = 97;
- repeated sfixed32 unpacked_sfixed32 = 98;
- repeated sfixed64 unpacked_sfixed64 = 99;
- repeated float unpacked_float = 100;
- repeated double unpacked_double = 101;
- repeated bool unpacked_bool = 102;
- repeated UnpackedTypesForeignEnumLite unpacked_enum = 103;
-}
-
-extend TestUnpackedExtensionsLite {
- repeated int32 unpacked_int32_extension_lite = 90;
- repeated int64 unpacked_int64_extension_lite = 91;
- repeated uint32 unpacked_uint32_extension_lite = 92;
- repeated uint64 unpacked_uint64_extension_lite = 93;
- repeated sint32 unpacked_sint32_extension_lite = 94;
- repeated sint64 unpacked_sint64_extension_lite = 95;
- repeated fixed32 unpacked_fixed32_extension_lite = 96;
- repeated fixed64 unpacked_fixed64_extension_lite = 97;
- repeated sfixed32 unpacked_sfixed32_extension_lite = 98;
- repeated sfixed64 unpacked_sfixed64_extension_lite = 99;
- repeated float unpacked_float_extension_lite = 100;
- repeated double unpacked_double_extension_lite = 101;
- repeated bool unpacked_bool_extension_lite = 102;
- repeated UnpackedTypesForeignEnumLite unpacked_enum_extension_lite = 103;
-}
-
-enum UnpackedTypesForeignEnumLite {
- FOREIGN_LITE_FOO = 4;
- FOREIGN_LITE_BAR = 5;
- FOREIGN_LITE_BAZ = 6;
-}
-
-message BucketOfBytes {
- optional bytes value = 1;
-
-}
-message BucketOfBytesEx {
- optional bytes value = 1;
- optional bytes value2 = 255;
-} \ No newline at end of file
diff --git a/csharp/protos/extest/unittest_extras_xmltest.proto b/csharp/protos/extest/unittest_extras_xmltest.proto
deleted file mode 100644
index fae36165..00000000
--- a/csharp/protos/extest/unittest_extras_xmltest.proto
+++ /dev/null
@@ -1,53 +0,0 @@
-syntax = "proto2";
-
-option csharp_namespace = "Google.ProtocolBuffers.TestProtos";
-
-package protobuf_unittest_extra;
-
-option optimize_for = SPEED;
-
-enum EnumOptions {
- ONE = 0;
- TWO = 1;
- THREE = 2;
-}
-
-message TestXmlChild {
- repeated EnumOptions options = 3;
- optional bytes binary = 4;
-}
-
-message TestXmlNoFields {
-}
-
-message TestXmlRescursive {
- optional TestXmlRescursive child = 1;
-}
-
-message TestXmlMessage {
-
- optional int64 number = 6;
- repeated int32 numbers = 2;
- optional string text = 3;
- repeated string textlines = 700;
- optional bool valid = 5;
-
- optional TestXmlChild child = 1;
- repeated group Children = 401 {
- repeated EnumOptions options = 3;
- optional bytes binary = 4;
- }
-
-extensions 100 to 199;
-}
-
-message TestXmlExtension {
- required int32 number = 1;
-}
-
-extend TestXmlMessage {
- optional EnumOptions extension_enum = 101;
- optional string extension_text = 102;
- repeated int32 extension_number = 103 [packed = true];
- optional TestXmlExtension extension_message = 199;
-}
diff --git a/csharp/protos/extest/unittest_issues.proto b/csharp/protos/extest/unittest_issues.proto
deleted file mode 100644
index 97249dff..00000000
--- a/csharp/protos/extest/unittest_issues.proto
+++ /dev/null
@@ -1,141 +0,0 @@
-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;
-}
diff --git a/csharp/protos/unittest_issues.proto b/csharp/protos/unittest_issues.proto
new file mode 100644
index 00000000..989b3dc4
--- /dev/null
+++ b/csharp/protos/unittest_issues.proto
@@ -0,0 +1,119 @@
+syntax = "proto3";
+
+// 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;
+
+// Issue 307: when generating doubly-nested types, any references
+// should be of the form A.Types.B.Types.C.
+message Issue307 {
+ message NestedOnce {
+ message NestedTwice {
+ }
+ }
+}
+
+// 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 19 - negative enum values
+
+enum NegativeEnum {
+ NEGATIVE_ENUM_ZERO = 0;
+ FiveBelow = -5;
+ MinusOne = -1;
+}
+
+message NegativeEnumMessage {
+ NegativeEnum value = 1;
+ repeated NegativeEnum values = 2 [packed = false];
+ 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 {
+ DEPRECATED_ZERO = 0;
+ one = 1;
+}
+
+message DeprecatedFieldsMessage {
+ int32 PrimitiveValue = 1 [deprecated = true];
+ repeated int32 PrimitiveArray = 2 [deprecated = true];
+
+ DeprecatedChild MessageValue = 3 [deprecated = true];
+ repeated DeprecatedChild MessageArray = 4 [deprecated = true];
+
+ 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 {
+ int32 item = 1;
+}
+
+message ReservedNames {
+ // Force a nested type called Types
+ message SomeNestedType {
+ }
+
+ int32 types = 1;
+ int32 descriptor = 2;
+}
+
+message TestJsonFieldOrdering {
+ // These fields are deliberately not declared in numeric
+ // order, and the oneof fields aren't contiguous either.
+ // This allows for reasonably robust tests of JSON output
+ // ordering.
+ // TestFieldOrderings in unittest_proto3.proto is similar,
+ // but doesn't include oneofs.
+ // TODO: Consider adding oneofs to TestFieldOrderings, although
+ // that will require fixing other tests in multiple platforms.
+ // Alternatively, consider just adding this to
+ // unittest_proto3.proto if multiple platforms want it.
+
+ int32 plain_int32 = 4;
+
+ oneof o1 {
+ string o1_string = 2;
+ int32 o1_int32 = 5;
+ }
+
+ string plain_string = 1;
+
+ oneof o2 {
+ int32 o2_int32 = 6;
+ string o2_string = 3;
+ }
+
+} \ No newline at end of file