load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_test") load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_shared_library") load("@rules_rust//wasm_bindgen/rules_nodejs:defs.bzl", "nodejs_rust_wasm_bindgen") package(default_visibility = ["//visibility:public"]) rust_binary( name = "hello_world_bin_wasm", srcs = ["//wasm_bindgen:main.rs"], edition = "2018", deps = [ "@rules_rust//wasm_bindgen/3rdparty:wasm_bindgen", ], ) rust_shared_library( name = "hello_world_lib_wasm", srcs = ["//wasm_bindgen:main.rs"], edition = "2018", deps = [ "@rules_rust//wasm_bindgen/3rdparty:wasm_bindgen", ], ) nodejs_rust_wasm_bindgen( name = "hello_world_bundler_wasm_bindgen", wasm_file = ":hello_world_bin_wasm", ) nodejs_rust_wasm_bindgen( name = "hello_world_web_wasm_bindgen", target = "web", wasm_file = ":hello_world_lib_wasm", ) nodejs_rust_wasm_bindgen( name = "hello_world_deno_wasm_bindgen", target = "deno", wasm_file = ":hello_world_lib_wasm", ) nodejs_rust_wasm_bindgen( name = "hello_world_nomodules_wasm_bindgen", target = "no-modules", wasm_file = ":hello_world_lib_wasm", ) nodejs_rust_wasm_bindgen( name = "hello_world_nodejs_wasm_bindgen", target = "nodejs", wasm_file = ":hello_world_lib_wasm", ) nodejs_test( name = "hello_world_wasm_test", args = ["rules_nodejs"], data = [ ":hello_world_bundler_wasm_bindgen", ":hello_world_deno_wasm_bindgen", ":hello_world_nodejs_wasm_bindgen", ":hello_world_nomodules_wasm_bindgen", ":hello_world_web_wasm_bindgen", ], entry_point = "//wasm_bindgen:hello_world_wasm_test.js", )