diff options
Diffstat (limited to 'tests/legacy/examples/proto/gogo')
-rw-r--r-- | tests/legacy/examples/proto/gogo/BUILD.bazel | 29 | ||||
-rw-r--r-- | tests/legacy/examples/proto/gogo/gogo_test.go | 25 | ||||
-rw-r--r-- | tests/legacy/examples/proto/gogo/values.proto | 14 |
3 files changed, 68 insertions, 0 deletions
diff --git a/tests/legacy/examples/proto/gogo/BUILD.bazel b/tests/legacy/examples/proto/gogo/BUILD.bazel new file mode 100644 index 00000000..b228ca5f --- /dev/null +++ b/tests/legacy/examples/proto/gogo/BUILD.bazel @@ -0,0 +1,29 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") +load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") +load("@rules_proto//proto:defs.bzl", "proto_library") + +proto_library( + name = "values_proto", + srcs = ["values.proto"], + deps = [ + "@com_google_protobuf//:duration_proto", + "@gogo_special_proto//github.com/gogo/protobuf/gogoproto", + ], +) + +go_proto_library( + name = "values_go_proto", + compilers = [ + "@io_bazel_rules_go//proto:gogofaster_proto", + ], + importpath = "github.com/bazelbuild/rules_go/examples/proto/gogo", + proto = ":values_proto", +) + +go_test( + name = "gogo_test", + srcs = ["gogo_test.go"], + deps = [ + ":values_go_proto", + ], +) diff --git a/tests/legacy/examples/proto/gogo/gogo_test.go b/tests/legacy/examples/proto/gogo/gogo_test.go new file mode 100644 index 00000000..b6fb3eec --- /dev/null +++ b/tests/legacy/examples/proto/gogo/gogo_test.go @@ -0,0 +1,25 @@ +package gogo_test + +import ( + "testing" + + "github.com/bazelbuild/rules_go/examples/proto/gogo" +) + +func TestGoString(t *testing.T) { + p := gogo.Value{Item: 20} + got := p.GoString() + expect := "&gogo.Value{Item: 20,\n}" + if got != expect { + t.Errorf("got %q, expect %q", got, expect) + } +} + +func TestSize(t *testing.T) { + p := gogo.Value{Item: 20} + got := p.Size() + expect := 2 + if got != expect { + t.Errorf("got %v, expect %v", got, expect) + } +} diff --git a/tests/legacy/examples/proto/gogo/values.proto b/tests/legacy/examples/proto/gogo/values.proto new file mode 100644 index 00000000..df542977 --- /dev/null +++ b/tests/legacy/examples/proto/gogo/values.proto @@ -0,0 +1,14 @@ +syntax = "proto3"; + +package gogo; + +import "google/protobuf/duration.proto"; +import "github.com/gogo/protobuf/gogoproto/gogo.proto"; + +option go_package = "github.com/bazelbuild/rules_go/examples/proto/gogo"; +option (gogoproto.gostring_all) = true; + +message Value { + int32 item = 1; + google.protobuf.Duration timing = 3; +} |