| # PLEASE DO NOT DEPEND ON THE CONTENTS OF THIS FILE, IT IS UNSTABLE. |
| |
| def conformance_test(name, testee, failure_list = None, text_format_failure_list = None): |
| args = ["--testee %s" % _strip_bazel(testee)] |
| failure_lists = [] |
| if failure_list: |
| args = args + ["--failure_list %s" % _strip_bazel(failure_list)] |
| failure_lists = failure_lists + [failure_list] |
| if text_format_failure_list: |
| args = args + ["--text_format_failure_list %s" % _strip_bazel(text_format_failure_list)] |
| failure_lists = failure_lists + [text_format_failure_list] |
| |
| native.sh_test( |
| name = name, |
| srcs = ["//:conformance/conformance_test_runner.sh"], |
| data = [testee] + failure_lists + [ |
| "//:conformance_test_runner", |
| ], |
| args = args, |
| deps = [ |
| "@bazel_tools//tools/bash/runfiles", |
| ], |
| ) |
| |
| |
| def _strip_bazel(testee): |
| if testee.startswith("//"): |
| testee = testee.replace("//", "com_google_protobuf") |
| return testee.replace(":", "/") |