load("@fbsource//xplat/executorch/build:runtime_wrapper.bzl", "runtime")

oncall("executorch")

runtime.python_library(
    # autodeps has a real hard time tracking the owner of the pybindings
    # from portable and the suggested fixes I could find didnt work, so
    # just disabling for now
    name = "make_test",
    srcs = [
        "make_test.py",
    ],
    visibility = [
        "//executorch/extension/pybindings/...",
        "//executorch/runtime/...",
    ],
    deps = [
        "//caffe2:torch",
        "//caffe2:torch_fx",
        "//executorch/exir:lib",
        "//executorch/exir:pass_manager",
        "//executorch/exir:scalar_type",
        "//executorch/exir/_serialize:lib",
        "//executorch/exir/emit:lib",
        "//executorch/exir/passes:lib",
        "//executorch/runtime/core:core",
    ],
)

runtime.python_test(
    name = "test_pybindings_portable_lib",
    srcs = ["test_pybindings.py"],
    preload_deps = ["//executorch/kernels/quantized:aot_lib"],
    deps = [
        ":make_test",
        "//executorch/extension/pybindings:portable_lib",
    ],
)

runtime.python_test(
    name = "test_pybindings_aten_lib",
    srcs = ["test_pybindings.py"],
    preload_deps = ["//executorch/kernels/quantized:aot_lib"],
    deps = [
        ":make_test",
        "//executorch/extension/pybindings:aten_lib",
        "//executorch/kernels/quantized:aot_lib",
    ],
)

runtime.python_library(
    name = "test_pybindings_lib",
    srcs = ["test_pybindings.py"],
    deps = [
        ":make_test",
    ],
)


runtime.python_test(
    name = "test_backend_pybinding",
    srcs = ["test_backend_pybinding.py"],
    deps = [
        "//executorch/runtime:runtime",
    ],
)
