Derek Perez | bc45f92 | 2021-04-20 11:36:32 -0700 | [diff] [blame] | 1 | # PLEASE DO NOT DEPEND ON THE CONTENTS OF THIS FILE, IT IS UNSTABLE. |
| 2 | |
| 3 | def conformance_test(name, testee, failure_list = None, text_format_failure_list = None): |
| 4 | args = ["--testee %s" % _strip_bazel(testee)] |
| 5 | failure_lists = [] |
| 6 | if failure_list: |
| 7 | args = args + ["--failure_list %s" % _strip_bazel(failure_list)] |
| 8 | failure_lists = failure_lists + [failure_list] |
| 9 | if text_format_failure_list: |
| 10 | args = args + ["--text_format_failure_list %s" % _strip_bazel(text_format_failure_list)] |
| 11 | failure_lists = failure_lists + [text_format_failure_list] |
| 12 | |
| 13 | native.sh_test( |
| 14 | name = name, |
| 15 | srcs = ["//:conformance/conformance_test_runner.sh"], |
| 16 | data = [testee] + failure_lists + [ |
| 17 | "//:conformance_test_runner", |
| 18 | ], |
| 19 | args = args, |
| 20 | deps = [ |
| 21 | "@bazel_tools//tools/bash/runfiles", |
| 22 | ], |
| 23 | ) |
| 24 | |
| 25 | |
| 26 | def _strip_bazel(testee): |
| 27 | if testee.startswith("//"): |
| 28 | testee = testee.replace("//", "com_google_protobuf") |
| 29 | return testee.replace(":", "/") |