aboutsummaryrefslogtreecommitdiff
path: root/tests/legacy/empty_package
diff options
context:
space:
mode:
Diffstat (limited to 'tests/legacy/empty_package')
-rw-r--r--tests/legacy/empty_package/BUILD.bazel43
-rw-r--r--tests/legacy/empty_package/cgo.c1
-rw-r--r--tests/legacy/empty_package/cgo.go8
-rw-r--r--tests/legacy/empty_package/empty_package_test.go17
-rw-r--r--tests/legacy/empty_package/mixed_cgo.go10
-rw-r--r--tests/legacy/empty_package/mixed_pure.go5
6 files changed, 84 insertions, 0 deletions
diff --git a/tests/legacy/empty_package/BUILD.bazel b/tests/legacy/empty_package/BUILD.bazel
new file mode 100644
index 00000000..d90e59f7
--- /dev/null
+++ b/tests/legacy/empty_package/BUILD.bazel
@@ -0,0 +1,43 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
+
+go_library(
+ name = "cgo",
+ srcs = [
+ "cgo.c",
+ "cgo.go",
+ ],
+ cgo = True,
+ importpath = "github.com/bazelbuild/rules_go/tests/empty_package/cgo",
+)
+
+go_library(
+ name = "mixed",
+ srcs = [
+ "mixed_cgo.go",
+ "mixed_pure.go",
+ ],
+ importpath = "github.com/bazelbuild/rules_go/tests/empty_package/mixed",
+ deps = [":cgo"],
+)
+
+go_test(
+ name = "empty_package_cgo",
+ size = "small",
+ srcs = ["empty_package_test.go"],
+ pure = "off",
+ x_defs = {
+ "Expect": "2",
+ },
+ deps = [":mixed"],
+)
+
+go_test(
+ name = "empty_package_pure",
+ size = "small",
+ srcs = ["empty_package_test.go"],
+ pure = "on",
+ x_defs = {
+ "Expect": "1",
+ },
+ deps = [":mixed"],
+)
diff --git a/tests/legacy/empty_package/cgo.c b/tests/legacy/empty_package/cgo.c
new file mode 100644
index 00000000..9118bf3f
--- /dev/null
+++ b/tests/legacy/empty_package/cgo.c
@@ -0,0 +1 @@
+const int value = 2;
diff --git a/tests/legacy/empty_package/cgo.go b/tests/legacy/empty_package/cgo.go
new file mode 100644
index 00000000..a4ece344
--- /dev/null
+++ b/tests/legacy/empty_package/cgo.go
@@ -0,0 +1,8 @@
+package cgo
+
+/*
+extern const int value;
+*/
+import "C"
+
+var Value = int(C.value)
diff --git a/tests/legacy/empty_package/empty_package_test.go b/tests/legacy/empty_package/empty_package_test.go
new file mode 100644
index 00000000..73ce4259
--- /dev/null
+++ b/tests/legacy/empty_package/empty_package_test.go
@@ -0,0 +1,17 @@
+package empty_package_test
+
+import (
+ "fmt"
+ "testing"
+
+ "github.com/bazelbuild/rules_go/tests/empty_package/mixed"
+)
+
+var Expect = ""
+
+func TestValue(t *testing.T) {
+ got := fmt.Sprintf("%d", mixed.Value)
+ if got != Expect {
+ t.Errorf("got %q; want %q", got, Expect)
+ }
+}
diff --git a/tests/legacy/empty_package/mixed_cgo.go b/tests/legacy/empty_package/mixed_cgo.go
new file mode 100644
index 00000000..48a1c726
--- /dev/null
+++ b/tests/legacy/empty_package/mixed_cgo.go
@@ -0,0 +1,10 @@
+//+build cgo
+
+package mixed
+
+import (
+ "github.com/bazelbuild/rules_go/tests/empty_package/cgo"
+)
+
+var Value = cgo.Value
+var Expect = ""
diff --git a/tests/legacy/empty_package/mixed_pure.go b/tests/legacy/empty_package/mixed_pure.go
new file mode 100644
index 00000000..0981f40f
--- /dev/null
+++ b/tests/legacy/empty_package/mixed_pure.go
@@ -0,0 +1,5 @@
+//+build !cgo
+
+package mixed
+
+var Value = 1