aboutsummaryrefslogtreecommitdiff
path: root/tests/legacy/examples/proto/gogo
diff options
context:
space:
mode:
Diffstat (limited to 'tests/legacy/examples/proto/gogo')
-rw-r--r--tests/legacy/examples/proto/gogo/BUILD.bazel29
-rw-r--r--tests/legacy/examples/proto/gogo/gogo_test.go25
-rw-r--r--tests/legacy/examples/proto/gogo/values.proto14
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;
+}