Skip to content

Commit 2e1bfcc

Browse files
Merge pull request #14 from aquality-automation/feature/REPPORTQA-1043
Feature/repportqa 1043
2 parents 3694498 + 02d47d0 commit 2e1bfcc

File tree

6 files changed

+91
-9
lines changed

6 files changed

+91
-9
lines changed

src/main/java/main/controllers/Project/ResultController.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,19 +37,18 @@ public TestResultDto create(TestResultDto template) throws AqualityException {
3737
}
3838
}
3939

40-
public List<TestResultDto> get(TestResultDto template, Integer limit) throws AqualityException {
40+
@Override
41+
public List<TestResultDto> get(TestResultDto template) throws AqualityException {
4142
if(baseUser.isFromGlobalManagement() || baseUser.getProjectUser(template.getProject_id()).isViewer()){
42-
template.setLimit(limit);
43+
if(template.getLimit() == null){
44+
template.setLimit(0);
45+
}
4346
return fillResults(testResultDao.searchAll(template));
4447
}else{
4548
throw new AqualityPermissionsException("Account is not allowed to view Test Results", baseUser);
4649
}
4750
}
4851

49-
@Override
50-
public List<TestResultDto> get(TestResultDto template) throws AqualityException {
51-
return get(template, 0);
52-
}
5352

5453
@Override
5554
public boolean delete(TestResultDto template) throws AqualityException {

src/main/java/main/controllers/Project/TestRunController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ private List<TestRunDto> fillTestRunResults(List<TestRunDto> testRuns) throws Aq
110110
TestResultDto testResultTemplate = new TestResultDto();
111111
testResultTemplate.setTest_run_id(testRun.getId());
112112
testResultTemplate.setProject_id(testRun.getProject_id());
113-
List<TestResultDto> results = resultController.get(testResultTemplate, 10000);
113+
List<TestResultDto> results = resultController.get(testResultTemplate);
114114
testRun.setTestResults(results);
115115
}
116116
return testRuns;

src/main/java/main/model/db/dao/project/TestResultDao.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
public class TestResultDao extends DAO<TestResultDto> {
77
public TestResultDao() {
88
super(TestResultDto.class);
9-
select = "{call SELECT_TEST_RESULT(?,?,?,?,?,?,?,?,?)}";
9+
select = "{call SELECT_TEST_RESULT(?,?,?,?,?,?,?,?,?,?)}";
1010
insert = "{call INSERT_TEST_RESULT(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
1111
remove = "{call REMOVE_TEST_RESULT(?)}";
1212
}

src/main/java/main/model/dto/TestResultDto.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,4 +75,7 @@ public class TestResultDto extends BaseDto {
7575
@DataBaseSearchable
7676
private Integer limit;
7777
private Integer pending;
78+
@DataBaseName(name="request_fail_reason_regex")
79+
@DataBaseSearchable
80+
private String fail_reason_regex;
7881
}

src/main/java/main/view/Project/TestResult.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public void doGet(HttpServletRequest req, HttpServletResponse resp){
4343
Session session = createSession(req);
4444
TestResultDto testResultTemplate = new TestResultDto();
4545
testResultTemplate.getSearchTemplateFromRequestParameters(req);
46-
List<TestResultDto> testResults = session.controllerFactory.getHandler(testResultTemplate).get(testResultTemplate, 100000);
46+
List<TestResultDto> testResults = session.controllerFactory.getHandler(testResultTemplate).get(testResultTemplate);
4747
setJSONContentType(resp);
4848
resp.getWriter().write(mapper.serialize(testResults));
4949
}catch (Exception e) {

src/main/resources/db_changelog/db.changelog-0.3.1.xml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,4 +238,84 @@
238238
END
239239
</rollback>
240240
</changeSet>
241+
242+
<changeSet id="start_date_idx for test results" author="v.kostyukevich">
243+
<sql>
244+
ALTER TABLE `test_results`
245+
ADD INDEX `start_date_idx` (`start_date` ASC);
246+
</sql>
247+
</changeSet>
248+
249+
<changeSet id="add regex search for fail reason" author="v.kostyukevich">
250+
<sql endDelimiter="#">
251+
DROP procedure IF EXISTS `SELECT_TEST_RESULT`;
252+
253+
#
254+
255+
CREATE PROCEDURE `SELECT_TEST_RESULT`(
256+
IN request_project_id VARCHAR(10),
257+
IN request_id VARCHAR(10),
258+
IN request_test_id VARCHAR(10),
259+
IN request_final_result_id VARCHAR(10),
260+
IN request_test_run_id VARCHAR(10),
261+
IN request_test_resolution_id VARCHAR(10),
262+
IN request_debug VARCHAR(1),
263+
IN request_fail_reason VARCHAR(150),
264+
IN request_fail_reason_regex VARCHAR(500),
265+
In request_limit INT(10)
266+
)
267+
BEGIN
268+
IF(request_fail_reason_regex = '') THEN SET request_fail_reason_regex = '.*';
269+
END IF;
270+
271+
SELECT * FROM test_results as res
272+
WHERE (
273+
request_id = '' OR id=request_id)
274+
AND (request_project_id = '' OR project_id = request_project_id)
275+
AND (request_test_id = '' OR test_id=request_test_id)
276+
AND (request_final_result_id = '' OR final_result_id=request_final_result_id)
277+
AND (request_test_run_id = '' OR test_run_id=request_test_run_id)
278+
AND (request_test_resolution_id = '' OR test_resolution_id=request_test_resolution_id)
279+
AND (request_debug = '' OR debug=request_debug)
280+
AND (request_fail_reason = '' OR INSTR(fail_reason, request_fail_reason) > 0)
281+
AND IFNULL(fail_reason, '') REGEXP request_fail_reason_regex
282+
ORDER BY start_date DESC
283+
LIMIT request_limit
284+
;
285+
END
286+
</sql>
287+
<rollback>
288+
DROP procedure IF EXISTS `SELECT_TEST_RESULT`;
289+
290+
#
291+
292+
CREATE PROCEDURE `SELECT_TEST_RESULT`(
293+
IN request_project_id VARCHAR(10),
294+
IN request_id VARCHAR(10),
295+
IN request_test_id VARCHAR(10),
296+
IN request_final_result_id VARCHAR(10),
297+
IN request_test_run_id VARCHAR(10),
298+
IN request_test_resolution_id VARCHAR(10),
299+
IN request_debug VARCHAR(1),
300+
IN request_fail_reason VARCHAR(150),
301+
In request_limit INT(10)
302+
)
303+
BEGIN
304+
305+
SELECT * FROM test_results as res
306+
WHERE (
307+
request_id = '' OR id=request_id)
308+
AND (request_project_id = '' OR project_id = request_project_id)
309+
AND (request_test_id = '' OR test_id=request_test_id)
310+
AND (request_final_result_id = '' OR final_result_id=request_final_result_id)
311+
AND (request_test_run_id = '' OR test_run_id=request_test_run_id)
312+
AND (request_test_resolution_id = '' OR test_resolution_id=request_test_resolution_id)
313+
AND (request_debug = '' OR debug=request_debug)
314+
AND (request_fail_reason = '' OR INSTR(fail_reason, request_fail_reason) > 0)
315+
ORDER BY start_date DESC
316+
LIMIT request_limit
317+
;
318+
END
319+
</rollback>
320+
</changeSet>
241321
</databaseChangeLog>

0 commit comments

Comments
 (0)