blob: 286b7aacfb9dfc867ac65f15de4c651f54aa26db [file]
load("//:defs.bzl", "nodejs_binary")
load("//internal/js_library:js_library.bzl", "js_library")
load(":nodejs_toolchain_test.bzl", "nodejs_binary_test_suite")
nodejs_binary_test_suite()
# You can have a nodejs_binary with no node_modules attribute
# and no fine grained deps
nodejs_binary(
name = "no_deps",
data = ["no-deps.js"],
entry_point = ":no-deps.js",
)
# You can have a nodejs_binary with a node_modules attribute
# and no fine grained deps
nodejs_binary(
name = "has_deps_legacy",
data = ["has-deps.js"],
entry_point = ":has-deps.js",
node_modules = "@fine_grained_deps_yarn//:node_modules",
)
# You can have a nodejs_binary with no node_modules attribute
# and fine grained deps
nodejs_binary(
name = "has_deps",
data = [
"has-deps.js",
"@fine_grained_deps_yarn//typescript",
],
entry_point = ":has-deps.js",
)
# You can have a nodejs_binary with both a node_modules attribute
# and fine grained deps so long as they come from the same root
nodejs_binary(
name = "has_deps_hybrid",
data = [
"has-deps.js",
"@fine_grained_deps_yarn//typescript",
],
entry_point = ":has-deps.js",
node_modules = "@fine_grained_deps_yarn//:node_modules",
)
filegroup(
name = "entry_file",
srcs = ["no-deps.js"],
)
nodejs_binary(
name = "has_entry_file",
entry_point = ":entry_file",
)
# Coverage for issue https://github.com/bazelbuild/rules_nodejs/issues/834
# where module_name is equal to the workspace naem
js_library(
name = "module_name_lib",
srcs = ["module-name.js"],
module_name = "build_bazel_rules_nodejs",
)
nodejs_binary(
name = "module_name_test",
data = [":module_name_lib"],
entry_point = ":module-name.js",
)