mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-13 00:04:29 +00:00
We need to copy the .fbs files into the package used for .bfbs files. This is necessary as flatc doesn't provide support to specify the full output file name for an .fbs file in a different folder. I tried OUTPUT_FILE env var but this doesn't seem to be honored by flatc.
69 lines
2.3 KiB
Python
69 lines
2.3 KiB
Python
load("@aspect_rules_js//js:defs.bzl", "js_test")
|
|
load("@aspect_rules_js//npm:defs.bzl", "npm_link_package")
|
|
load("//:typescript.bzl", "flatbuffer_ts_library")
|
|
load("//tests:defs.bzl", "flatbuffers_as_external_repo_test")
|
|
|
|
package(default_visibility = ["//visibility:private"])
|
|
|
|
# This is a copy of //ts:node_modules/flatbuffers. The rules_js-based tests
|
|
# require this target to live in the same or a parent package. Since we don't
|
|
# want to put rules_js targets in the root package, we create a copy here.
|
|
npm_link_package(
|
|
name = "node_modules/flatbuffers",
|
|
src = "//ts:flatbuffers",
|
|
root_package = "tests/ts",
|
|
)
|
|
|
|
flatbuffer_ts_library(
|
|
name = "typescript_ts_fbs",
|
|
srcs = ["typescript_keywords.fbs"],
|
|
deps = [
|
|
"//reflection/ts:reflection_ts_fbs",
|
|
"//tests/ts/test_dir:include_ts_fbs",
|
|
"//tests/ts/test_dir:typescript_transitive_ts_fbs",
|
|
],
|
|
)
|
|
|
|
TEST_DATA = glob([
|
|
"my-game/*.js",
|
|
"my-game/example/*.js",
|
|
"my-game/example2/*.js",
|
|
])
|
|
|
|
TEST_UNION_VECTOR_DATA = glob([
|
|
"union_vector/*.js",
|
|
])
|
|
|
|
TEST_COMPLEX_ARRAYS_DATA = glob([
|
|
"arrays_test_complex/**/*.js",
|
|
])
|
|
|
|
# Here we're running the tests against the checked-in generated files. These
|
|
# are kept up-to-date with a CI-based mechanism. The intent of running these
|
|
# tests here via bazel is not to validate that they're up-to-date. Instead, we
|
|
# just want to make it easy to run these tests while making other changes. For
|
|
# example, this is useful when making changes to the rules_js setup to validate
|
|
# that the basic infrastructure is still working.
|
|
[js_test(
|
|
name = "%s_test" % test,
|
|
chdir = package_name(),
|
|
data = data + [
|
|
"package.json",
|
|
"//tests:test_data_copied_to_bin",
|
|
"//tests/ts:node_modules/flatbuffers",
|
|
],
|
|
entry_point = "%s.js" % test,
|
|
) for test, data in (
|
|
("JavaScriptTest", TEST_DATA),
|
|
("JavaScriptUnionVectorTest", TEST_UNION_VECTOR_DATA),
|
|
# TODO(philsc): Figure out how to run this test with flexbuffers available.
|
|
# At the moment the flexbuffer library is not exposed as a bazel target.
|
|
#("JavaScriptFlexBuffersTest", TBD_DATA)
|
|
("JavaScriptComplexArraysTest", TEST_COMPLEX_ARRAYS_DATA),
|
|
)]
|
|
|
|
flatbuffers_as_external_repo_test(
|
|
name = "bazel_repository_test",
|
|
directory = "bazel_repository_test_dir",
|
|
)
|