@@ -1722,21 +1722,21 @@ run_e2e_tests () {
1722
1722
# yarn link "@kalisio/kdk" --link-folder /opt/kalisio/yarn-links
1723
1723
# export BROWSER="firefox"bucket
1724
1724
# mkdir -p "$ROOT_DIR/test/run/firefox"
1725
- return " $RET " # return the exit code of the tests
1725
+ return " $RET " # return the exit code of the tests (= number of failed tests)
1726
1726
}
1727
1727
1728
1728
# Upload e2e tests artefacts to some s3 storage.
1729
1729
# Expected args:
1730
1730
# 1. the app root dir
1731
1731
# 2. the app name
1732
- # 3. the return code of the testing process
1732
+ # 3. the number of failed tests
1733
1733
# 4. the s3 bucket where to upload artefacts (with a rclone remote, like ovh:e2e-test/blabla)
1734
1734
# 5. the rclone.conf file to use to upload artefacts
1735
1735
# 6. the file where the upload report will be written (json)
1736
1736
upload_e2e_tests_artefacts () {
1737
1737
local ROOT_DIR=" $1 "
1738
1738
local APP=" $2 "
1739
- local TESTS_RET_CODE =" $3 "
1739
+ local NUM_FAILED =" $3 "
1740
1740
local S3_BUCKET=" $4 "
1741
1741
local RCLONE_CONF=" $5 "
1742
1742
local UPLOAD_REPORT_FILE=" $6 "
@@ -1759,7 +1759,7 @@ upload_e2e_tests_artefacts() {
1759
1759
cp " $TESTS_RESULTS_DIR /logs.txt" " $WORK_DIR /logs.txt"
1760
1760
1761
1761
# and keep captures and diffs for failed tests
1762
- local FAILED_TESTS =()
1762
+ local TESTS_WITH_DIFF =()
1763
1763
readarray -d ' ' DIFF_FILES < <( find " $TESTS_RESULTS_DIR " -type f -name ' diff.*.png' -print0)
1764
1764
for DIFF_FILE in " ${DIFF_FILES[@]} " ; do
1765
1765
local BASE_DIFF_FILE
@@ -1776,7 +1776,7 @@ upload_e2e_tests_artefacts() {
1776
1776
local TEST_NAME
1777
1777
TEST_NAME=" $TEST_DIR /${BASE_CAPTURE_FILE% .* } "
1778
1778
1779
- FAILED_TESTS +=(" $TEST_NAME " )
1779
+ TESTS_WITH_DIFF +=(" $TEST_NAME " )
1780
1780
1781
1781
mkdir -p " $WORK_DIR /$TEST_DIR "
1782
1782
cp " $DIFF_FILE " " $WORK_DIR /$TEST_DIR "
@@ -1793,10 +1793,10 @@ upload_e2e_tests_artefacts() {
1793
1793
local LOGS_LINK
1794
1794
LOGS_LINK=" $( rclone --config " $RCLONE_CONF " link " $REMOTE_DIR /logs.txt" ) "
1795
1795
1796
- printf ' { "app": "%s", "timestamp": "%s", "ret_code ": "%d", "artefacts": "%s", "logs": "%s", "num_failed ": "%d", "failed ": [' " $APP " " $TIMESTAMP " " $TESTS_RET_CODE " " $ARTEFACTS_LINK " " $LOGS_LINK " " ${# FAILED_TESTS [@]} " > " $UPLOAD_REPORT_FILE "
1796
+ printf ' { "app": "%s", "timestamp": "%s", "num_failed ": "%d", "artefacts": "%s", "logs": "%s", "num_diffs ": "%d", "diffs ": [' " $APP " " $TIMESTAMP " " $NUM_FAILED " " $ARTEFACTS_LINK " " $LOGS_LINK " " ${# TESTS_WITH_DIFF [@]} " > " $UPLOAD_REPORT_FILE "
1797
1797
1798
1798
local COMMA=" "
1799
- for TEST_NAME in " ${FAILED_TESTS [@]} " ; do
1799
+ for TEST_NAME in " ${TESTS_WITH_DIFF [@]} " ; do
1800
1800
local CAPTURE_LINK
1801
1801
CAPTURE_LINK=" $( rclone --config " $RCLONE_CONF " link " $REMOTE_DIR /$TEST_NAME .png" ) "
1802
1802
local DIFF_FILE
@@ -1825,12 +1825,14 @@ generate_e2e_tests_markdown_report() {
1825
1825
APP=$( get_json_value " $UPLOAD_REPORT_FILE " " app" )
1826
1826
local TIMESTAMP
1827
1827
TIMESTAMP=$( get_json_value " $UPLOAD_REPORT_FILE " " timestamp" )
1828
+ local NUM_FAILED
1829
+ NUM_FAILED=$( get_json_value " $UPLOAD_REPORT_FILE " " num_failed" )
1828
1830
local ARTEFACTS_LINK
1829
1831
ARTEFACTS_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " artefacts" )
1830
1832
local LOGS_LINK
1831
1833
LOGS_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " logs" )
1832
- local NUM_FAILED
1833
- NUM_FAILED =$( get_json_value " $UPLOAD_REPORT_FILE " " num_failed " )
1834
+ local NUM_DIFFS
1835
+ NUM_DIFFS =$( get_json_value " $UPLOAD_REPORT_FILE " " num_diffs " )
1834
1836
1835
1837
printf " # [%s] (e2e run from %s)\n\n" " $( echo " $APP " | tr ' [:lower:]' ' [:upper:]' ) " " $TIMESTAMP " > " $MD_REPORT_FILE "
1836
1838
printf " [All artefacts](%s), [logs](%s)\n\n" " $ARTEFACTS_LINK " " $LOGS_LINK " >> " $MD_REPORT_FILE "
@@ -1841,15 +1843,15 @@ generate_e2e_tests_markdown_report() {
1841
1843
printf " > [!CAUTION]\n> **%d** tests have failed\n" " $NUM_FAILED " >> " $MD_REPORT_FILE "
1842
1844
1843
1845
local SECTIONS=()
1844
- for (( i = 0 ; i < NUM_FAILED ; ++ i )) ; do
1846
+ for (( i = 0 ; i < NUM_DIFFS ; ++ i )) ; do
1845
1847
local TEST_NAME
1846
- TEST_NAME=$( get_json_value " $UPLOAD_REPORT_FILE " " failed [$i ].name" )
1848
+ TEST_NAME=$( get_json_value " $UPLOAD_REPORT_FILE " " diff [$i ].name" )
1847
1849
printf " > - [%s](#%s)\n" " $TEST_NAME " " $( normalize_markdown_anchor " $TEST_NAME " " $MD_FLAVOR " ) " >> " $MD_REPORT_FILE "
1848
1850
1849
1851
local CAPTURE_LINK
1850
- CAPTURE_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " failed [$i ].capture" )
1852
+ CAPTURE_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " diff [$i ].capture" )
1851
1853
local DIFF_LINK
1852
- DIFF_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " failed [$i ].diff" )
1854
+ DIFF_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " diff [$i ].diff" )
1853
1855
1854
1856
read -r -d ' ' SECTION << EOF
1855
1857
## $TEST_NAME
@@ -1925,14 +1927,14 @@ push_e2e_tests_report_to_slack() {
1925
1927
1926
1928
local APP
1927
1929
APP=$( get_json_value " $UPLOAD_REPORT_FILE " " app" )
1928
- local TESTS_RET_CODE
1929
- TESTS_RET_CODE =$( get_json_value " $UPLOAD_REPORT_FILE " " ret_code " )
1930
+ local NUM_FAILED
1931
+ NUM_FAILED =$( get_json_value " $UPLOAD_REPORT_FILE " " num_failed " )
1930
1932
local ARTEFACTS_LINK
1931
1933
ARTEFACTS_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " artefacts" )
1932
1934
local LOGS_LINK
1933
1935
LOGS_LINK=$( get_json_value " $UPLOAD_REPORT_FILE " " logs" )
1934
1936
1935
- slack_e2e_report " $APP " " $TESTS_RET_CODE " " $SLACK_WEBHOOK " " $LOGS_LINK " " $ARTEFACTS_LINK "
1937
+ slack_e2e_report " $APP " " $NUM_FAILED " " $SLACK_WEBHOOK " " $LOGS_LINK " " $ARTEFACTS_LINK "
1936
1938
}
1937
1939
1938
1940
# Take all steps to run e2e test and push results to a git repository. Binary artefacts
@@ -1953,7 +1955,7 @@ run_and_publish_e2e_tests_to_git_repo() {
1953
1955
local REPORTS_BASE=" $6 "
1954
1956
1955
1957
run_e2e_tests " $ROOT_DIR " " $APP "
1956
- local TESTS_RET_CODE =" $? "
1958
+ local NUM_FAILED =" $? "
1957
1959
1958
1960
local MD_FLAVOR
1959
1961
[[ " $REPOSITORY_URL " = * gitlab* ]] && MD_FLAVOR=" gitlab"
@@ -1963,7 +1965,7 @@ run_and_publish_e2e_tests_to_git_repo() {
1963
1965
local MD_REPORT_FILE=" $TMP_DIR /e2e.md"
1964
1966
1965
1967
upload_e2e_tests_artefacts \
1966
- " $ROOT_DIR " " $APP " " $TESTS_RET_CODE " \
1968
+ " $ROOT_DIR " " $APP " " $NUM_FAILED " \
1967
1969
" $S3_BUCKET " " $RCLONE_CONF " \
1968
1970
" $UPLOAD_REPORT_FILE "
1969
1971
generate_e2e_tests_markdown_report \
@@ -1989,12 +1991,12 @@ run_and_publish_e2e_tests_to_slack() {
1989
1991
local SLACK_WEBHOOK=" $5 "
1990
1992
1991
1993
run_e2e_tests " $ROOT_DIR " " $APP "
1992
- local TESTS_RET_CODE =" $? "
1994
+ local NUM_FAILED =" $? "
1993
1995
1994
1996
local UPLOAD_REPORT_FILE=" $TMP_DIR /e2e-upload-report.json"
1995
1997
1996
1998
upload_e2e_tests_artefacts \
1997
- " $ROOT_DIR " " $APP " " $TESTS_RET_CODE " \
1999
+ " $ROOT_DIR " " $APP " " $NUM_FAILED " \
1998
2000
" $S3_BUCKET " " $RCLONE_CONF " \
1999
2001
" $UPLOAD_REPORT_FILE "
2000
2002
push_e2e_tests_report_to_slack \
0 commit comments