bazel-contrib / bazel-contrib/rules_scala

Problems with specs2 test filters and test xml

Open
#339 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Starlark
Stars
384
Forks
292
Avg merge
2d 22h
Merged PRs (30d)
47

Description

https://github.com/bazelbuild/intellij/pull/155#issuecomment-342945215

> If I create a failing test at `Foo#bar::baz`, `Foo#bar::` and `Foo#` succeeds because they're running an empty suite.

https://github.com/bazelbuild/intellij/pull/155#issuecomment-343571800

> The specs2 test.xml seems to generate incorrect test suites right now:
>
> `com.example.TestClass#foo should::do bar`
> Produces:
> * test suite `TestClass` (should be fully qualified `com.example.TestClass`)
> * test suite `foo should` (should be fully qualified `com.example.TestClass#foo should` or something else instead of `#`)
> * test case `foo should::do bar` with class name `com.example.TestClass` (this one seems correct)

https://github.com/bazelbuild/intellij/pull/155#issuecomment-344440875

> If you have multiple test scopes with tests of the same name, e.g.,
> ```
> TestClass
> "foo" should "do blah"
> "bar" should "do blah"
> "baz" should "do blah"
> ```
> running any of them (e.g., "--filter=TestClass#foo::do blah", "--filter=TestClass#bar::do blah", "--filter=TestClass#baz::do blah"), will only run the first one (i.e., "foo" should "do blah").

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the referenced comments in bazel-contrib/rules_scala#339 and the linked pull request. Reproduce the reported specs2 filters and test XML output for nested test names and duplicate scopes; done means filters select only the requested test and generated suites use the correct names and qualification.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
build-system, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.