Skip to content

Commit b359d8e

Browse files
Refactor filterTestDefinitions method
Updated the method to use streams for filtering test definitions. Included sorting of results by test name before collecting into a list. This improves readability and potential efficiency of the function.
1 parent d04177b commit b359d8e

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/main/java/org/eomasters/davalien/Davalien.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -289,12 +289,13 @@ private void runGptTests(List<TestInst> activeTests) {
289289
static List<TestDefinition> filterTestDefinitions(List<TestDefinition> allTestDefinitions, List<String> testNames,
290290
List<String> tags) {
291291

292-
if ((testNames == null || testNames.isEmpty()) && (tags == null || tags.isEmpty())) {
293-
return allTestDefinitions;
292+
Stream<TestDefinition> activeTestDefinitions = allTestDefinitions.stream();
293+
if ((testNames != null && !testNames.isEmpty()) || (tags != null && !tags.isEmpty())) {
294+
activeTestDefinitions = activeTestDefinitions
295+
.filter(testDefinition -> isFiltered(testDefinition, testNames, tags));
294296
}
297+
return activeTestDefinitions.sorted(Comparator.comparing(TestDefinition::getTestName)).collect(Collectors.toList());
295298

296-
return allTestDefinitions.stream().filter(testDefinition -> isFiltered(testDefinition, testNames, tags)).collect(
297-
Collectors.toList());
298299
}
299300

300301
private static boolean isFiltered(TestDefinition testDefinition, List<String> testNames, List<String> tags) {

0 commit comments

Comments
 (0)