@@ -526,6 +526,9 @@ void setTestProperties(Task task, TestTypeEnum type, TestModuleEnum module) {
526
526
*/
527
527
task(testTestTypeEnum) { task ->
528
528
setTestProperties(task, TestTypeEnum . GRADLE , TestModuleEnum . TOOL )
529
+ doFirst {
530
+ ReportTestStarted (task)
531
+ }
529
532
doLast {
530
533
def expectedTestTypeEnumCompleteSet =
531
534
new HashSet ([
@@ -570,6 +573,9 @@ task(testTestTypeEnum) { task ->
570
573
*/
571
574
task(testTestModuleEnum) { task ->
572
575
setTestProperties(task, TestTypeEnum . GRADLE , TestModuleEnum . TOOL )
576
+ doFirst {
577
+ ReportTestStarted (task)
578
+ }
573
579
doLast {
574
580
def expectedTestModuleEnumCompleteSet =
575
581
new HashSet ([
@@ -1480,6 +1486,9 @@ Task createUnityTestTask(String taskName, String description,
1480
1486
doLast {
1481
1487
EvaluateTestResult (task)
1482
1488
}
1489
+ doFirst {
1490
+ ReportTestStarted (task)
1491
+ }
1483
1492
setTestProperties(task, testType, testModule)
1484
1493
}
1485
1494
@@ -1713,54 +1722,62 @@ task testDownloadArtifacts(type: GradleBuild) { task ->
1713
1722
doLast {
1714
1723
EvaluateTestResult (task)
1715
1724
}
1725
+ doFirst {
1726
+ ReportTestStarted (task)
1727
+ }
1716
1728
finalizedBy " reportAllTestsResult"
1717
1729
}
1718
1730
1731
+
1732
+ /*
1733
+ * Report when a test starts to run
1734
+ *
1735
+ * @param testTask Task for test to start.
1736
+ */
1737
+ void ReportTestStarted (Task testTask ) {
1738
+ println sprintf (" Test %s STARTED" , testTask. name)
1739
+ }
1740
+
1719
1741
/*
1720
1742
* Evaluate previously-ran test result
1721
1743
*
1722
1744
* @param testTask Task for previously-ran test
1723
1745
*/
1724
1746
void EvaluateTestResult (Task testTask ) {
1747
+ Boolean succeeded = false
1725
1748
if (testTask. class. simpleName. startsWith(" Exec" )) {
1726
- if (testTask. execResult. exitValue != 0 ) {
1727
- String errorMsg = sprintf (" Test %s FAILED" , testTask. name)
1728
- println sprintf (" ::error::%s" , errorMsg)
1729
- project. ext. testSessions. add(new TestSession (
1730
- name : testTask. name,
1731
- type : testTask. ext. testType,
1732
- module : testTask. ext. testModule,
1733
- isPassed : false ))
1734
- if (! project. ext. continueOnFailForTestsEnabled) {
1735
- throw new GradleException (errorMsg)
1736
- }
1737
- } else {
1738
- println sprintf (" ::debug::Test %s PASSED" , testTask. name, testTask. execResult. exitValue)
1739
- project. ext. testSessions. add(new TestSession (
1740
- name : testTask. name,
1741
- type : testTask. ext. testType,
1742
- module : testTask. ext. testModule,
1743
- isPassed : true ))
1749
+ if (testTask. execResult. exitValue == 0 ) {
1750
+ succeeded = true
1744
1751
}
1745
1752
} else if (testTask. class. simpleName. startsWith(" DefaultTask" ) ||
1746
1753
testTask. class. simpleName. startsWith(" GradleBuild" )) {
1747
1754
if (testTask. state. didWork && testTask. state. failure == null ) {
1748
- project. ext. testSessions. add(new TestSession (
1749
- name : testTask. name,
1750
- type : testTask. ext. testType,
1751
- module : testTask. ext. testModule,
1752
- isPassed : true ))
1753
- } else {
1754
- project. ext. testSessions. add(new TestSession (
1755
- name : testTask. name,
1756
- type : testTask. ext. testType,
1757
- module : testTask. ext. testModule,
1758
- isPassed : false ))
1755
+ succeeded = true
1759
1756
}
1760
1757
} else {
1761
1758
throw new GradleException (
1762
1759
sprintf (" Unsupported test class %s" , testTask. class. simpleName))
1763
1760
}
1761
+
1762
+ if (succeeded) {
1763
+ println sprintf (" Test %s PASSED" , testTask. name)
1764
+ project. ext. testSessions. add(new TestSession (
1765
+ name : testTask. name,
1766
+ type : testTask. ext. testType,
1767
+ module : testTask. ext. testModule,
1768
+ isPassed : true ))
1769
+ } else {
1770
+ String errorMsg = sprintf (" Test %s FAILED" , testTask. name)
1771
+ println sprintf (" ::error::%s" , errorMsg)
1772
+ project. ext. testSessions. add(new TestSession (
1773
+ name : testTask. name,
1774
+ type : testTask. ext. testType,
1775
+ module : testTask. ext. testModule,
1776
+ isPassed : false ))
1777
+ if (! project. ext. continueOnFailForTestsEnabled) {
1778
+ throw new GradleException (errorMsg)
1779
+ }
1780
+ }
1764
1781
}
1765
1782
1766
1783
Task reportAllTestsResult = tasks. create (
@@ -1769,26 +1786,36 @@ Task reportAllTestsResult = tasks.create (
1769
1786
type : Task
1770
1787
). with {
1771
1788
doLast {
1789
+ if (project. ext. testSessions. isEmpty()) {
1790
+ return
1791
+ }
1792
+
1793
+ println " \n\n [Test Summary]"
1772
1794
int failedCount = 0
1773
1795
int totalCount = 0
1774
1796
project. ext. testSessions. each { session ->
1775
1797
String resultStr
1776
1798
++ totalCount
1799
+ String logType = " "
1777
1800
if (session. isPassed) {
1778
1801
resultStr = " PASSED"
1779
1802
} else {
1780
1803
resultStr = " FAILED"
1804
+ logType = " ::error::"
1781
1805
++ failedCount
1782
1806
}
1783
- println sprintf (" Test %s %s [%s/%s]" ,
1807
+ println sprintf (" %sTest %s %s [%s/%s]" ,
1808
+ logType,
1784
1809
session. name,
1785
1810
resultStr,
1786
1811
session. type,
1787
1812
session. module)
1788
1813
}
1814
+ println " --------------------------------------"
1815
+ println sprintf (" ::notice::%s out of %d test(s) passed" , totalCount - failedCount, totalCount)
1789
1816
if (failedCount > 0 ) {
1790
1817
throw new GradleException (
1791
- sprintf (" %d out of %d tests failed" , failedCount, totalCount))
1818
+ sprintf (" %d out of %d test(s) failed" , failedCount, totalCount))
1792
1819
}
1793
1820
}
1794
1821
}
@@ -1805,6 +1832,9 @@ Task testPackageUploader = createPythonTask(
1805
1832
doLast {
1806
1833
EvaluateTestResult (task)
1807
1834
}
1835
+ doFirst {
1836
+ ReportTestStarted (task)
1837
+ }
1808
1838
setTestProperties(task, TestTypeEnum . PYTHON , TestModuleEnum . TOOL )
1809
1839
}
1810
1840
@@ -1821,7 +1851,10 @@ createPythonTask(
1821
1851
doLast {
1822
1852
EvaluateTestResult (task)
1823
1853
}
1824
- }
1854
+ doFirst {
1855
+ ReportTestStarted (task)
1856
+ }
1857
+ }
1825
1858
1826
1859
createPythonTask(
1827
1860
" testGenGuids" ,
@@ -1836,6 +1869,9 @@ createPythonTask(
1836
1869
doLast {
1837
1870
EvaluateTestResult (task)
1838
1871
}
1872
+ doFirst {
1873
+ ReportTestStarted (task)
1874
+ }
1839
1875
}
1840
1876
1841
1877
createPythonTask(
@@ -1851,6 +1887,9 @@ createPythonTask(
1851
1887
doLast {
1852
1888
EvaluateTestResult (task)
1853
1889
}
1890
+ doFirst {
1891
+ ReportTestStarted (task)
1892
+ }
1854
1893
}
1855
1894
1856
1895
task updateEmbeddedGradleWrapper (type : Zip ) {
0 commit comments