Bazel powered Java testing (#8506)
* Protobuf Java/Core Tests running w/ Bazel.
Also integrates rules_jvm_external and migrates existing maven deps
in place.
* Add test_suite target that maps to rule name.
* Lite tests passing in Bazel
* util tests passing with Bazel.
* Add conformance and build testing to //java:core
* Cleanup bzl style and lock down access to failure lists.
* Adding Java Lite conformance tests.
* rm newline
* parameterize conformance_test
This makes usage of failure lists more explicit.
* restrict visibility more for newly added libs and fix formatting.
* fix formatting and visibility.
* move testing.bzl to an internal package.
* fix file formatting.
* moving conformance_test to internal.bzl
diff --git a/WORKSPACE b/WORKSPACE
index 4346dbd..bf896e0 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -26,23 +26,27 @@
],
)
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-load("//:protobuf_deps.bzl", "protobuf_deps")
-
# Load common dependencies.
+load("//:protobuf_deps.bzl", "protobuf_deps")
protobuf_deps()
-load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external")
bind(
name = "python_headers",
actual = "//util/python:python_headers",
)
-jvm_maven_import_external(
- name = "guava_maven",
- artifact = "com.google.guava:guava:18.0",
- artifact_sha256 = "d664fbfc03d2e5ce9cab2a44fb01f1d0bf9dfebeccc1a473b1f9ea31f79f6f99",
- server_urls = [
+load("@rules_jvm_external//:defs.bzl", "maven_install")
+maven_install(
+ artifacts = [
+ "com.google.guava:guava:18.0",
+ "com.google.code.gson:gson:2.7",
+ "com.google.errorprone:error_prone_annotations:2.3.2",
+ "junit:junit:4.12",
+ "org.easymock:easymock:3.2",
+ "org.easymock:easymockclassextension:3.2",
+ "com.google.truth:truth:1.1.2",
+ ],
+ repositories = [
"https://jcenter.bintray.com/",
"https://repo1.maven.org/maven2",
],
@@ -50,40 +54,39 @@
bind(
name = "guava",
- actual = "@guava_maven//jar",
-)
-
-jvm_maven_import_external(
- name = "gson_maven",
- artifact = "com.google.code.gson:gson:2.7",
- artifact_sha256 = "2d43eb5ea9e133d2ee2405cc14f5ee08951b8361302fdd93494a3a997b508d32",
- server_urls = [
- "https://jcenter.bintray.com/",
- "https://repo1.maven.org/maven2",
- ],
+ actual = "@maven//:com_google_guava_guava",
)
bind(
name = "gson",
- actual = "@gson_maven//jar",
-)
-
-jvm_maven_import_external(
- name = "error_prone_annotations_maven",
- artifact = "com.google.errorprone:error_prone_annotations:2.3.2",
- artifact_sha256 = "357cd6cfb067c969226c442451502aee13800a24e950fdfde77bcdb4565a668d",
- server_urls = [
- "https://jcenter.bintray.com/",
- "https://repo1.maven.org/maven2",
- ],
+ actual = "@maven//:com_google_code_gson_gson",
)
bind(
name = "error_prone_annotations",
- actual = "@error_prone_annotations_maven//jar",
+ actual = "@maven//:com_google_errorprone_error_prone_annotations",
+)
+
+bind(
+ name = "junit",
+ actual = "@maven//:junit_junit",
+)
+
+bind(
+ name = "easymock",
+ actual = "@maven//:org_easymock_easymock",
+)
+
+bind(
+ name = "easymock_classextension",
+ actual = "@maven//:org_easymock_easymockclassextension",
+)
+
+bind(
+ name = "truth",
+ actual = "@maven//:com_google_truth_truth",
)
# For `cc_proto_blacklist_test`.
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
-
bazel_skylib_workspace()