bazelbuild / bazelbuild/rules_java

java_test: make it work for multiple junit tests and non tests sources without Skylark wrapper and dependent library

Đang mở
#330 21 bình luận 10 reaction 0 người được giao Xem trên GitHub
P3
Ngôn ngữ chính
Starlark
Star
103
Fork
102
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

`java_test` rule doesn't work as I would expect it should. I would expect to write this and provide mixed Junit tests and utility (also not tests classes) to the `srcs` glob.

Buck version:

```
java_test(
name = 'evict_cache_tests',
srcs = glob(['src/test/java/**/*.java']),
)
```

This doesn't work. Instead, I need this Skylark wrapper to generate JUnit Suites for me: [1]. Even then, it doesn't work because I must separate the utility library with non test sources from the JUnit test sources.

Bazel version:

```
load("//tools/bzl:junit.bzl", "junit_tests")

java_library(
name = "evict_test_utills",
srcs = glob([]),
)

junit_tests(
name = "evict_cache_tests",
srcs = glob(["src/test/java/**/*Test.java"]),# this would only pick test sources
deps = [":evict_test_utills"],
)
```

[1] https://github.com/GerritCodeReview/gerrit/blob/master/tools/bzl/junit.bzl

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Start by examining the java_test rule and the referenced tools/bzl:junit.bzl wrapper in the issue. Trace how mixed JUnit test and utility sources are handled, including the separate java_library dependency, and define done as allowing the shown java_test glob without a Skylark wrapper or separate dependent library.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
java
Lĩnh vực
build-system, testing
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.