load("@fbsource//tools/build_defs:default_platform_defs.bzl", "ANDROID", "APPLE") load("@fbsource//tools/build_defs:fb_native_wrapper.bzl", "fb_native") load("@fbsource//tools/build_defs:fb_xplat_cxx_binary.bzl", "fb_xplat_cxx_binary") load("@fbsource//tools/build_defs/oss:rn_defs.bzl", "rn_xplat_cxx_library") load("@fbsource//xplat/js/react-native-github/packages/react-native-codegen:DEFS.bzl", "rn_codegen_test") fb_native.sh_binary( name = "copy_fixture_schema", main = "buck_tests/copy_fixture.sh", resources = [ "buck_tests/copy-fixture.js", "buck_tests/copy_fixture.sh", "fbsource//xplat/js:setup_env", "src/generators/__test_fixtures__/fixtures.js", ], ) fb_native.sh_binary( name = "write_to_json", main = "buck_tests/combine_js_to_schema.sh", resources = [ "buck_tests/combine-js-to-schema.js", "buck_tests/combine_js_to_schema.sh", "fbsource//xplat/js:setup_env", ], visibility = ["PUBLIC"], ) fb_native.sh_binary( name = "rn_codegen", main = "buck_tests/generate_tests.sh", resources = glob( [ "buck_tests/**/*.js", "src/**/*.js", ], ) + [ "buck_tests/generate-tests.js", "package.json", "fbsource//xplat/js:setup_env", "yarn.lock", ], visibility = ["PUBLIC"], ) rn_codegen_test( fixture_name = "INTERFACE_ONLY", ) rn_codegen_test( fixture_name = "BOOLEAN_PROP", ) rn_codegen_test( fixture_name = "STRING_PROP", ) rn_codegen_test( fixture_name = "INTEGER_PROPS", ) rn_codegen_test( fixture_name = "FLOAT_PROPS", ) rn_codegen_test( fixture_name = "COLOR_PROP", ) rn_codegen_test( fixture_name = "IMAGE_PROP", ) rn_codegen_test( fixture_name = "MULTI_NATIVE_PROP", ) rn_codegen_test( fixture_name = "ENUM_PROP", ) rn_codegen_test( fixture_name = "EVENT_PROPS", ) rn_codegen_test( fixture_name = "EVENT_NESTED_OBJECT_PROPS", ) rn_codegen_test( fixture_name = "TWO_COMPONENTS_SAME_FILE", ) rn_codegen_test( fixture_name = "TWO_COMPONENTS_DIFFERENT_FILES", ) fb_xplat_cxx_binary( name = "rn_codegen_binary", srcs = ["buck_tests/emptyFile.cpp"], compiler_flags = [ "-fexceptions", "-frtti", "-std=c++14", "-Wall", ], platforms = (ANDROID, APPLE), preprocessor_flags = [ "-DLOG_TAG=\"ReactNative\"", "-DWITH_FBSYSTRACE=1", ], visibility = ["PUBLIC"], deps = [ ":generated_components-BOOLEAN_PROP", ":generated_components-COLOR_PROP", ":generated_components-ENUM_PROP", ":generated_components-EVENT_NESTED_OBJECT_PROPS", ":generated_components-EVENT_PROPS", ":generated_components-FLOAT_PROPS", ":generated_components-IMAGE_PROP", ":generated_components-INTEGER_PROPS", ":generated_components-INTERFACE_ONLY", ":generated_components-MULTI_NATIVE_PROP", ":generated_components-STRING_PROP", ":generated_components-TWO_COMPONENTS_DIFFERENT_FILES", ":generated_components-TWO_COMPONENTS_SAME_FILE", ], ) rn_xplat_cxx_library( name = "rn_codegen_library", srcs = ["buck_tests/emptyFile.cpp"], headers = [], compiler_flags = [ "-fexceptions", "-frtti", "-std=c++14", "-Wall", ], platforms = (ANDROID, APPLE), preprocessor_flags = [ "-DLOG_TAG=\"ReactNative\"", "-DWITH_FBSYSTRACE=1", ], visibility = [ "PUBLIC", ], deps = [ ":generated_components-BOOLEAN_PROP", ":generated_components-COLOR_PROP", ":generated_components-ENUM_PROP", ":generated_components-EVENT_NESTED_OBJECT_PROPS", ":generated_components-EVENT_PROPS", ":generated_components-FLOAT_PROPS", ":generated_components-IMAGE_PROP", ":generated_components-INTEGER_PROPS", ":generated_components-INTERFACE_ONLY", ":generated_components-MULTI_NATIVE_PROP", ":generated_components-STRING_PROP", ":generated_components-TWO_COMPONENTS_DIFFERENT_FILES", ":generated_components-TWO_COMPONENTS_SAME_FILE", ], )