Skip to content

Commit

Permalink
Add tests
Browse files Browse the repository at this point in the history
  • Loading branch information
ObsidianMinor committed Nov 24, 2019
1 parent 3c2a32a commit 2b0b838
Show file tree
Hide file tree
Showing 10 changed files with 438 additions and 13 deletions.
6 changes: 6 additions & 0 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,9 @@ csharp_EXTRA_DIST= \
csharp/keys/Google.Protobuf.snk \
csharp/keys/README.md \
csharp/protos/README.md \
csharp/protos/extensions/extensions_a.proto \
csharp/protos/extensions/extensions_b.proto \
csharp/protos/extensions/extensions_c.proto \
csharp/protos/map_unittest_proto3.proto \
csharp/protos/old_extensions1.proto \
csharp/protos/old_extensions2.proto \
Expand Down Expand Up @@ -128,6 +131,9 @@ csharp_EXTRA_DIST= \
csharp/src/Google.Protobuf.Test/SampleNaNs.cs \
csharp/src/Google.Protobuf.Test/TestCornerCases.cs \
csharp/src/Google.Protobuf.Test.TestProtos/Google.Protobuf.Test.TestProtos.csproj \
csharp/src/Google.Protobuf.Test.TestProtos/ExtensionsA.cs \
csharp/src/Google.Protobuf.Test.TestProtos/ExtensionsB.cs \
csharp/src/Google.Protobuf.Test.TestProtos/ExtensionsC.cs \
csharp/src/Google.Protobuf.Test.TestProtos/ForeignMessagePartial.cs \
csharp/src/Google.Protobuf.Test.TestProtos/MapUnittestProto3.cs \
csharp/src/Google.Protobuf.Test.TestProtos/OldExtensions1.cs \
Expand Down
29 changes: 16 additions & 13 deletions csharp/generate_protos.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,23 +44,26 @@ $PROTOC -Isrc --csharp_out=csharp/src/Google.Protobuf \
# Note that this deliberately does *not* include old_extensions1.proto
# and old_extensions2.proto, which are generated with an older version
# of protoc.
$PROTOC -Isrc -Icsharp/protos \
$PROTOC -Isrc -Icsharp/protos -Icsharp/protos/extensions \
--csharp_out=csharp/src/Google.Protobuf.Test.TestProtos \
--descriptor_set_out=csharp/src/Google.Protobuf.Test/testprotos.pb \
--include_source_info \
--include_imports \
csharp/protos/map_unittest_proto3.proto \
csharp/protos/unittest_issues.proto \
csharp/protos/unittest_custom_options_proto3.proto \
csharp/protos/unittest_proto3.proto \
csharp/protos/unittest_import_proto3.proto \
csharp/protos/unittest_import_public_proto3.proto \
csharp/protos/unittest.proto \
csharp/protos/unittest_import.proto \
csharp/protos/unittest_import_public.proto \
src/google/protobuf/unittest_well_known_types.proto \
src/google/protobuf/test_messages_proto3.proto \
src/google/protobuf/test_messages_proto2.proto
map_unittest_proto3.proto \
unittest_issues.proto \
unittest_custom_options_proto3.proto \
unittest_proto3.proto \
unittest_import_proto3.proto \
unittest_import_public_proto3.proto \
unittest.proto \
unittest_import.proto \
unittest_import_public.proto \
extensions_a.proto \
extensions_b.proto \
extensions_c.proto \
google/protobuf/unittest_well_known_types.proto \
google/protobuf/test_messages_proto3.proto \
google/protobuf/test_messages_proto2.proto

# AddressBook sample protos
$PROTOC -Iexamples -Isrc --csharp_out=csharp/src/AddressBook \
Expand Down
12 changes: 12 additions & 0 deletions csharp/protos/extensions/extensions_a.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
syntax = "proto3";

option csharp_namespace = "Google.Protobuf.TestProtos.Extensions";

// This file is used as part of a unit test for issue 6936
// We don't need to use it, we just have to import it in both b and c

import "google/protobuf/descriptor.proto";

extend google.protobuf.MessageOptions {
string opt = 50000;
}
12 changes: 12 additions & 0 deletions csharp/protos/extensions/extensions_b.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
syntax = "proto3";

import "extensions_a.proto";

option csharp_namespace = "Google.Protobuf.TestProtos.Extensions";

// This file is used as part of a unit test for issue 6936
// We don't need to use it, we just have to import it in c

message Foo {
option (opt) = "bar";
}
14 changes: 14 additions & 0 deletions csharp/protos/extensions/extensions_c.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
syntax = "proto3";

import "extensions_a.proto";
import "extensions_b.proto";

option csharp_namespace = "Google.Protobuf.TestProtos.Extensions";

// This file is used as part of a unit test for issue 6936
// We don't need to use it, we just have to load it at runtime

message Bar {
option (opt) = "foo";
Foo foo = 1;
}
46 changes: 46 additions & 0 deletions csharp/src/Google.Protobuf.Test.TestProtos/ExtensionsA.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
// <auto-generated>
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: extensions_a.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace Google.Protobuf.TestProtos.Extensions {

/// <summary>Holder for reflection information generated from extensions_a.proto</summary>
public static partial class ExtensionsAReflection {

#region Descriptor
/// <summary>File descriptor for extensions_a.proto</summary>
public static pbr::FileDescriptor Descriptor {
get { return descriptor; }
}
private static pbr::FileDescriptor descriptor;

static ExtensionsAReflection() {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
"ChJleHRlbnNpb25zX2EucHJvdG8aIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlw",
"dG9yLnByb3RvOi4KA29wdBIfLmdvb2dsZS5wcm90b2J1Zi5NZXNzYWdlT3B0",
"aW9ucxjQhgMgASgJQiiqAiVHb29nbGUuUHJvdG9idWYuVGVzdFByb3Rvcy5F",
"eHRlbnNpb25zYgZwcm90bzM="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Protobuf.Reflection.DescriptorReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, new pb::Extension[] { ExtensionsAExtensions.Opt }, null));
}
#endregion

}
/// <summary>Holder for extension identifiers generated from the top level of extensions_a.proto</summary>
public static partial class ExtensionsAExtensions {
public static readonly pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string> Opt =
new pb::Extension<global::Google.Protobuf.Reflection.MessageOptions, string>(50000, pb::FieldCodec.ForString(400002, ""));
}

}

#endregion Designer generated code
145 changes: 145 additions & 0 deletions csharp/src/Google.Protobuf.Test.TestProtos/ExtensionsB.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
// <auto-generated>
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: extensions_b.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace Google.Protobuf.TestProtos.Extensions {

/// <summary>Holder for reflection information generated from extensions_b.proto</summary>
public static partial class ExtensionsBReflection {

#region Descriptor
/// <summary>File descriptor for extensions_b.proto</summary>
public static pbr::FileDescriptor Descriptor {
get { return descriptor; }
}
private static pbr::FileDescriptor descriptor;

static ExtensionsBReflection() {
byte[] descriptorData = global::System.Convert.FromBase64String(
string.Concat(
"ChJleHRlbnNpb25zX2IucHJvdG8aEmV4dGVuc2lvbnNfYS5wcm90byIOCgNG",
"b286B4K1GANiYXJCKKoCJUdvb2dsZS5Qcm90b2J1Zi5UZXN0UHJvdG9zLkV4",
"dGVuc2lvbnNiBnByb3RvMw=="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Google.Protobuf.TestProtos.Extensions.ExtensionsAReflection.Descriptor, },
new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
new pbr::GeneratedClrTypeInfo(typeof(global::Google.Protobuf.TestProtos.Extensions.Foo), global::Google.Protobuf.TestProtos.Extensions.Foo.Parser, null, null, null, null, null)
}));
}
#endregion

}
#region Messages
public sealed partial class Foo : pb::IMessage<Foo> {
private static readonly pb::MessageParser<Foo> _parser = new pb::MessageParser<Foo>(() => new Foo());
private pb::UnknownFieldSet _unknownFields;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public static pb::MessageParser<Foo> Parser { get { return _parser; } }

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public static pbr::MessageDescriptor Descriptor {
get { return global::Google.Protobuf.TestProtos.Extensions.ExtensionsBReflection.Descriptor.MessageTypes[0]; }
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
pbr::MessageDescriptor pb::IMessage.Descriptor {
get { return Descriptor; }
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public Foo() {
OnConstruction();
}

partial void OnConstruction();

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public Foo(Foo other) : this() {
_unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public Foo Clone() {
return new Foo(this);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public override bool Equals(object other) {
return Equals(other as Foo);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public bool Equals(Foo other) {
if (ReferenceEquals(other, null)) {
return false;
}
if (ReferenceEquals(other, this)) {
return true;
}
return Equals(_unknownFields, other._unknownFields);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public override int GetHashCode() {
int hash = 1;
if (_unknownFields != null) {
hash ^= _unknownFields.GetHashCode();
}
return hash;
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public override string ToString() {
return pb::JsonFormatter.ToDiagnosticString(this);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public void WriteTo(pb::CodedOutputStream output) {
if (_unknownFields != null) {
_unknownFields.WriteTo(output);
}
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public int CalculateSize() {
int size = 0;
if (_unknownFields != null) {
size += _unknownFields.CalculateSize();
}
return size;
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public void MergeFrom(Foo other) {
if (other == null) {
return;
}
_unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
}

[global::System.Diagnostics.DebuggerNonUserCodeAttribute]
public void MergeFrom(pb::CodedInputStream input) {
uint tag;
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
_unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
break;
}
}
}

}

#endregion

}

#endregion Designer generated code
Loading

0 comments on commit 2b0b838

Please sign in to comment.