blob: 3426c21810fc1aab9251d98457eb1f7a0aadf2bd [file] [log] [blame]
load("@my_rules_go//extras:gomock.bzl", "gomock")
load(
"@my_rules_go//go:def.bzl",
"TOOLS_NOGO",
"go_binary",
"go_library",
"go_test",
"nogo",
)
nogo(
name = "my_nogo",
visibility = ["//visibility:public"],
deps = TOOLS_NOGO,
)
go_library(
name = "lib",
srcs = ["lib.go"],
importpath = "example.com/lib",
)
go_binary(
name = "main",
srcs = ["main.go"],
deps = [":lib"],
)
go_test(
name = "test",
srcs = ["test.go"],
embed = [":lib"],
)
go_test(
name = "sdk_patch_test",
srcs = ["sdk_patch_test.go"],
)
go_library(
name = "mockable",
srcs = ["mockable.go"],
importpath = "example.com/mockable",
)
gomock(
name = "mocks",
out = "mockable_mock.go",
library = ":mockable",
package = "mockable",
source = "mockable.go",
visibility = ["//visibility:public"],
)
go_test(
name = "mockable_test",
srcs = [
"mockable_mock.go",
"mockable_test.go",
],
embed = [":mockable"],
deps = ["@my_rules_go//extras/gomock"],
)
sh_test(
name = "go_tool_test",
srcs = ["go_tool_test.sh"],
data = ["@my_rules_go//go"],
env = {"GO_TOOL_RLOCATION": "$(rlocationpath @my_rules_go//go)"},
deps = ["@bazel_tools//tools/bash/runfiles"],
)