From 0f6ddb372bc24a010c85849dfc80f72fc8cd604d Mon Sep 17 00:00:00 2001 From: David Ostrovsky <david@ostrovsky.org> Date: Sat, 18 Mar 2017 16:13:26 +0100 Subject: Add remaining parts of the bazel build Add bazel build for ui and junit.http, and the test packages. A number of different test labels are supported: api attributes dfs diff http lfs lfs-server nls notes pack patch pgm reftree revplot revwalk storage submodule symlinks transport treewalk util To run all tests: bazel test //... To run specific tests, using labels: bazel test --test_tag_filters=api,dfs,revplot,treewalk //... Change-Id: Ic41b05a79d855212e67b1b4707e9c6b4dc9ea70d Signed-off-by: David Ostrovsky <david@ostrovsky.org> Signed-off-by: Jonathan Nieder <jrn@google.com> --- org.eclipse.jgit.test/BUILD | 61 +++++++++++++++++++++++++++++++++++++++++ org.eclipse.jgit.test/tests.bzl | 51 ++++++++++++++++++++++++++++++++++ 2 files changed, 112 insertions(+) create mode 100644 org.eclipse.jgit.test/BUILD create mode 100644 org.eclipse.jgit.test/tests.bzl (limited to 'org.eclipse.jgit.test') diff --git a/org.eclipse.jgit.test/BUILD b/org.eclipse.jgit.test/BUILD new file mode 100644 index 0000000000..ae6f24223c --- /dev/null +++ b/org.eclipse.jgit.test/BUILD @@ -0,0 +1,61 @@ +load(":tests.bzl", "tests") +load( + "@com_googlesource_gerrit_bazlets//tools:genrule2.bzl", + "genrule2", +) + +PKG = "tst/org/eclipse/jgit/" + +HELPERS = glob(["src/**/*.java"]) + [PKG + c for c in [ + "api/AbstractRemoteCommandTest.java", + "diff/AbstractDiffTestCase.java", + "internal/storage/file/GcTestCase.java", + "internal/storage/file/PackIndexTestCase.java", + "internal/storage/file/XInputStream.java", + "nls/GermanTranslatedBundle.java", + "nls/MissingPropertyBundle.java", + "nls/NoPropertiesBundle.java", + "nls/NonTranslatedBundle.java", + "revwalk/RevQueueTestCase.java", + "revwalk/RevWalkTestCase.java", + "transport/SpiTransport.java", + "treewalk/FileTreeIteratorWithTimeControl.java", + "treewalk/filter/AlwaysCloneTreeFilter.java", + "test/resources/SampleDataRepositoryTestCase.java", + "util/CPUTimeStopWatch.java", + "util/io/Strings.java", +]] + +DATA = [ + PKG + "lib/empty.gitindex.dat", + PKG + "lib/sorttest.gitindex.dat", +] + +tests(glob( + ["tst/**/*.java"], + exclude = HELPERS + DATA +)) + +java_library( + name = "helpers", + testonly = 1, + srcs = HELPERS, + resources = DATA, + deps = [ + "//lib:junit", + "//org.eclipse.jgit:jgit", + "//org.eclipse.jgit.junit:junit", + ], +) + +java_import( + name = "tst_rsrc", + jars = [":tst_rsrc_jar"], +) + +genrule2( + name = 'tst_rsrc_jar', + cmd = 'o=$$PWD/$@ && tar cf - $(SRCS) | tar -C $$TMP --strip-components=2 -xf - && cd $$TMP && zip -qr $$o .', + srcs = glob(['tst-rsrc/**']), + outs = ['tst_rsrc.jar',], +) diff --git a/org.eclipse.jgit.test/tests.bzl b/org.eclipse.jgit.test/tests.bzl new file mode 100644 index 0000000000..d5cc2c9868 --- /dev/null +++ b/org.eclipse.jgit.test/tests.bzl @@ -0,0 +1,51 @@ +load( + "@com_googlesource_gerrit_bazlets//tools:junit.bzl", + "junit_tests", +) + +def tests(tests): + for src in tests: + name = src[len('tst/'):len(src)-len('.java')].replace('/', '_') + labels = [] + if name.startswith('org_eclipse_jgit_'): + l = name[len('org.eclipse.jgit_'):] + if l.startswith('internal_storage_'): + l = l[len('internal.storage_'):] + i = l.find('_') + if i > 0: + labels.append(l[:i]) + else: + labels.append(i) + if 'lib' not in labels: + labels.append('lib') + + additional_deps = [] + if src.endswith("RootLocaleTest.java"): + additional_deps = [ + '//org.eclipse.jgit.pgm:pgm', + '//org.eclipse.jgit.ui:ui', + ] + if src.endswith("WalkEncryptionTest.java"): + additional_deps = [ + '//org.eclipse.jgit:insecure_cipher_factory', + ] + + junit_tests( + name = name, + tags = labels, + srcs = [src], + deps = additional_deps + [ + ':helpers', + ':tst_rsrc', + '//org.eclipse.jgit:jgit', + '//org.eclipse.jgit.junit:junit', + '//org.eclipse.jgit.lfs:jgit-lfs', + '@hamcrest_core//jar', + '@hamcrest_library//jar', + '@javaewah//jar', + '@junit//jar', + '@log_api//jar', + '@slf4j_simple//jar', + ], + jvm_flags = ["-Xmx256m", "-Dfile.encoding=UTF-8"], + ) -- cgit v1.2.3