Testing ATs
This bug fix can be tested via Tasklist:
- Go to Tasklist
- Make sure to have...
- a task foo with assignee demo
- a task bar with candidate user demo
- Create a filter via search pills that matches any of the criteria Assignee=demo and Candidate User=demo
- You should see two tasks
Steps to reproduce:
Execute the following OR query
- Scenario 1
taskService.createTaskQuery() .or() .taskAssignee("demo") .taskCandidateUser("demo") .endOr() .list()
- Scenario 2
taskService.createTaskQuery().active() .or() .caseInstanceBusinessKey(businessKey) .processInstanceBusinessKey(businessKey) .endOr() .list();
More failing scenarios exist, please check joins in the query, the inner joins is better to be left ones. This leads to incorrect behavior of the queries.
Current behavior:
Returns intersection
Expected behavior:
Returns union
AT:
- the or queries work properly no matter of the filter criteria and combinations.
- add tests for the scenarios when another table is joined in the query