private List<List<FieldDescriptor>> getAllNonEmptyFields(TestDescription[] descriptions) { TestDescription description = descriptions[0]; ParameterWithValueDeclaration[] executionParams = description.getExecutionParams(); List<List<FieldDescriptor>> result = new ArrayList<>(executionParams.length); for (int i = 0; i < executionParams.length; i++) { ParameterWithValueDeclaration param = executionParams[i]; result.add(FieldDescriptor.nonEmptyFields(param.getType(), valuesForAllCases(descriptions, i))); } return result; }