Skip to content

Commit c829392

Browse files
Merge branch 'develop' into feature/issue
# Conflicts: # src/test/java/tests/workers/imports/ClassNameNUnitHandlerTest.java # src/test/java/tests/workers/imports/CucumberHandlerTest.java # src/test/java/tests/workers/imports/FeatureTestNameNUnitHandlerTest.java
2 parents f4207c0 + bdd07aa commit c829392

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+5943
-36
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- ~/.m2
2424
key: v1-dependencies-{{ checksum "pom.xml" }}
2525

26-
- run: mvn test -f pom.xml -P !run-migration
26+
- run: mvn clean test -f pom.xml -P !run-migration
2727

2828
- run:
2929
name: Save test results

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
## 0.3.9 (Unreleased)
44

55
Features:
6+
- Added unit tests for import handlers -> [View Issue](https://github.com/aquality-automation/aquality-tracking/issues/81)
67
- Added unit tests for checking DAO's -> [View Issue](https://github.com/aquality-automation/aquality-tracking/issues/80)
78

89
## 0.3.8 (2020-03-11)

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@
146146
<dependency>
147147
<groupId>org.testng</groupId>
148148
<artifactId>testng</artifactId>
149-
<version>6.14.3</version>
149+
<version>7.0.0</version>
150150
<scope>test</scope>
151151
</dependency>
152152
<dependency>

src/main/java/main/model/db/imports/HandlerFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ Handler getHandler(File file, String type, TestNameNodeType testNameNodeType, Da
2121
if(testNameNodeType == null){
2222
throw new AqualityException("testNameNode is required");
2323
}
24-
return new JavaTestNG(file, testNameNodeType);
24+
return new JavaJUnitTestNG(file, testNameNodeType, finishTime);
2525
case Cucumber:
2626
case TestNGCucumber:
2727
return new Cucumber(file, finishTime);
2828
case PHPCodeception:
29-
return new PHPCodeception(file);
29+
return new PHPCodeception(file, finishTime);
3030
case NUnit_v2:
3131
return new NUnitV2(file);
3232
case NUnit_v3:

src/main/java/main/model/db/imports/ImportHandlers/JavaTestNG.java renamed to src/main/java/main/model/db/imports/ImportHandlers/JavaJUnitTestNG.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import main.exceptions.AqualityException;
44
import main.model.db.imports.Handler;
5-
import main.model.db.imports.SAXHandlers.JavaTestNGHandler;
5+
import main.model.db.imports.SAXHandlers.JavaJUnitTestNGHandler;
66
import main.model.db.imports.TestNameNodeType;
77
import main.model.dto.project.TestDto;
88
import main.model.dto.project.TestResultDto;
@@ -12,13 +12,14 @@
1212

1313
import java.io.File;
1414
import java.io.IOException;
15+
import java.util.Date;
1516
import java.util.List;
1617

17-
public class JavaTestNG extends Handler{
18-
private JavaTestNGHandler handler;
18+
public class JavaJUnitTestNG extends Handler{
19+
private JavaJUnitTestNGHandler handler;
1920

20-
public JavaTestNG(File file, TestNameNodeType testNameNodeType) throws AqualityException {
21-
handler = new JavaTestNGHandler(testNameNodeType);
21+
public JavaJUnitTestNG(File file, TestNameNodeType testNameNodeType, Date finishTime) throws AqualityException {
22+
handler = new JavaJUnitTestNGHandler(testNameNodeType, finishTime);
2223
try {
2324
this.parser.parse(file, handler);
2425
} catch (SAXException | IOException e) {

src/main/java/main/model/db/imports/ImportHandlers/PHPCodeception.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,15 @@
1111

1212
import java.io.File;
1313
import java.io.IOException;
14+
import java.util.Date;
1415
import java.util.List;
1516

1617
public class PHPCodeception extends Handler {
1718

1819
private PHPCodeceptionHandler handler;
1920

20-
public PHPCodeception(File file) throws AqualityException {
21-
handler = new PHPCodeceptionHandler();
21+
public PHPCodeception(File file, Date finishTime) throws AqualityException {
22+
handler = new PHPCodeceptionHandler(finishTime);
2223
try {
2324
this.parser.parse(file, handler);
2425
} catch (SAXException | IOException e) {

src/main/java/main/model/db/imports/SAXHandlers/JavaTestNGHandler.java renamed to src/main/java/main/model/db/imports/SAXHandlers/JavaJUnitTestNGHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
import static main.model.db.imports.ResultStatus.*;
1818

19-
public class JavaTestNGHandler extends Handler {
19+
public class JavaJUnitTestNGHandler extends Handler {
2020
private TestSuiteDto testSuite = new TestSuiteDto();
2121
private List<TestResultDto> results = new ArrayList<>();
2222
private TestResultDto result = new TestResultDto();
@@ -27,11 +27,11 @@ public class JavaTestNGHandler extends Handler {
2727
private Date currentTimeSlot;
2828
private TestNameNodeType testNameNodeType;
2929

30-
public JavaTestNGHandler(TestNameNodeType testNameNodeType) throws AqualityException {
30+
public JavaJUnitTestNGHandler(TestNameNodeType testNameNodeType, Date finishTime) throws AqualityException {
3131
super();
3232
this.testNameNodeType = testNameNodeType;
3333
result.setFail_reason("$blank");
34-
testRun.setFinish_time(new Date());
34+
testRun.setFinish_time(finishTime);
3535
}
3636

3737
@Override

src/main/java/main/model/db/imports/SAXHandlers/NUnitV2Handler.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -47,40 +47,40 @@ public void endDocument() {
4747
@Override
4848
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
4949
currentElement = qName;
50-
if(qName.equals("test-results")){
50+
if (qName.equals("test-results")) {
5151
try {
5252
testRun.setFinish_time(convertToDate(attributes.getValue("date"), attributes.getValue("time")));
5353
} catch (ParseException e) {
5454
e.printStackTrace();
5555
}
56-
}
57-
else if (qName.equals("environment")) {
56+
} else if (qName.equals("environment")) {
5857
testRun.setExecution_environment(attributes.getValue("machine-name"));
5958
testRun.setAuthor(String.format("%s\\%s", attributes.getValue("user-domain"), attributes.getValue("user")));
6059

61-
}
62-
else if (qName.equals("test-suite") && attributes.getValue("type").equals("TestSuite") && strTime == null) {
60+
} else if (qName.equals("test-suite")
61+
&& (attributes.getValue("type").equals("TestSuite") || attributes.getValue("type").equals("Assembly"))
62+
&& strTime == null) {
6363

6464
calendar.setTime(testRun.getFinish_time());
6565
strTime = attributes.getValue("time");
66-
milliTime = Integer.parseInt(strTime.replaceAll("\\.",""));
66+
milliTime = Integer.parseInt(strTime.replaceAll("\\.", ""));
6767
calendar.add(Calendar.MILLISECOND, -milliTime);
6868
testRun.setStart_time(calendar.getTime());
6969
currentTimeSlot = testRun.getStart_time();
70-
} else if(qName.equals("test-suite") && attributes.getValue("type").equals("TestSuite")
71-
&& strTime.equals(attributes.getValue("time"))){
70+
} else if (qName.equals("test-suite") && attributes.getValue("type").equals("TestSuite")
71+
&& strTime.equals(attributes.getValue("time"))) {
7272
testSuite.setName(attributes.getValue("name"));
73-
} else if(qName.equals("test-case")) {
73+
} else if (qName.equals("test-case")) {
7474
isTestCaseClose = false;
7575
test.setName(attributes.getValue("name"));
7676
result.setStart_date(currentTimeSlot);
7777
calendar.setTime(currentTimeSlot);
78-
milliTime = Integer.parseInt(attributes.getValue("time").replaceAll("\\.",""));
78+
milliTime = Integer.parseInt(attributes.getValue("time").replaceAll("\\.", ""));
7979
calendar.add(Calendar.MILLISECOND, milliTime);
8080
currentTimeSlot = calendar.getTime();
8181
result.setFinish_date(currentTimeSlot);
8282

83-
if(attributes.getValue("success").equals("False")){
83+
if (attributes.getValue("success").equals("False")) {
8484
isTestFailed = true;
8585
}
8686

@@ -99,7 +99,7 @@ public void endElement(String uri, String localName, String qName) {
9999
tests.add(test);
100100
test = new TestDto();
101101
result.setInternalTestId(test.getName());
102-
if(result.getFail_reason() != null && result.getFail_reason().equals("$blank")) result.setFail_reason("");
102+
if (result.getFail_reason() != null && result.getFail_reason().equals("$blank")) result.setFail_reason("");
103103
results.add(result);
104104
result = new TestResultDto();
105105
result.setFail_reason("$blank");
@@ -108,7 +108,7 @@ public void endElement(String uri, String localName, String qName) {
108108

109109
@Override
110110
public void characters(char[] ch, int start, int length) {
111-
String value = new String(ch,start,length);
111+
String value = new String(ch, start, length);
112112
if (isTestFailed) {
113113
if (currentElement.equals("message")) {
114114
String res = result.getFail_reason();
@@ -132,7 +132,7 @@ private Date convertToDate(String dateString, String timeString) throws ParseExc
132132
return format.parse(date);
133133
}
134134

135-
private ResultStatus getStatus(String status){
135+
private ResultStatus getStatus(String status) {
136136
switch (status) {
137137
case "Success":
138138
return PASSED;
@@ -144,19 +144,19 @@ private ResultStatus getStatus(String status){
144144
}
145145
}
146146

147-
public TestSuiteDto getTestSuite(){
147+
public TestSuiteDto getTestSuite() {
148148
return testSuite;
149149
}
150150

151-
public TestRunDto getTestRun(){
151+
public TestRunDto getTestRun() {
152152
return testRun;
153153
}
154154

155-
public List<TestDto> getTests(){
155+
public List<TestDto> getTests() {
156156
return tests;
157157
}
158158

159-
public List<TestResultDto> getTestResults(){
159+
public List<TestResultDto> getTestResults() {
160160
return results;
161161
}
162162
}

src/main/java/main/model/db/imports/SAXHandlers/PHPCodeceptionHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ public class PHPCodeceptionHandler extends Handler {
2626
private Calendar calendar = Calendar.getInstance();
2727
private boolean testcaseIsFound = false;
2828

29-
public PHPCodeceptionHandler() throws AqualityException {
29+
public PHPCodeceptionHandler(Date finishTime) throws AqualityException {
3030
super();
3131
result.setFail_reason("$blank");
32-
testRun.setFinish_time(new Date());
32+
testRun.setFinish_time(finishTime);
3333
}
3434

3535
@Override

src/main/java/main/model/db/imports/SAXHandlers/RobotHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public void startElement(String uri, String localName, String qName, Attributes
5151
currentElement = qName;
5252
if (qName.equals("robot")){
5353
try {
54-
testRun.setFinish_time(convertToDate(attributes.getValue("generated")));
54+
testRun.setStart_time(convertToDate(attributes.getValue("generated")));
5555
} catch (ParseException e) {
5656
e.printStackTrace();
5757
}
@@ -65,10 +65,10 @@ public void startElement(String uri, String localName, String qName, Attributes
6565
currentKWName = attributes.getValue("name");
6666
} else if(qName.equals("status") && testStarted && !kwStarted){
6767
try {
68-
6968
result.setFinal_result_id(getStatus(attributes.getValue("status")).getValue());
7069
result.setStart_date(convertToDate(attributes.getValue("starttime")));
7170
result.setFinish_date(convertToDate(attributes.getValue("endtime")));
71+
testRun.setFinish_time(convertToDate(attributes.getValue("endtime")));
7272
} catch (ParseException e) {
7373
e.printStackTrace();
7474
}

0 commit comments

Comments
 (0)