@@ -11,9 +11,11 @@ function run_test {
11
11
local error=0
12
12
local sdkconfig_path
13
13
local extra_args
14
+ local test_type
14
15
15
16
sketchdir=$( dirname " $sketch " )
16
17
sketchname=$( basename " $sketchdir " )
18
+ test_type=$( basename " $( dirname " $sketchdir " ) " )
17
19
18
20
if [ " $options " -eq 0 ] && [ -f " $sketchdir " /ci.json ]; then
19
21
len=$( jq -r --arg target " $target " ' .fqbn[$target] | length' " $sketchdir " /ci.json)
@@ -25,9 +27,9 @@ function run_test {
25
27
fi
26
28
27
29
if [ " $len " -eq 1 ]; then
28
- sdkconfig_path=" $HOME /.arduino/tests/$sketchname /build.tmp/sdkconfig"
30
+ sdkconfig_path=" $HOME /.arduino/tests/$target / $ sketchname /build.tmp/sdkconfig"
29
31
else
30
- sdkconfig_path=" $HOME /.arduino/tests/$sketchname /build0.tmp/sdkconfig"
32
+ sdkconfig_path=" $HOME /.arduino/tests/$target / $ sketchname /build0.tmp/sdkconfig"
31
33
fi
32
34
33
35
if [ -f " $sketchdir " /ci.json ]; then
@@ -43,22 +45,22 @@ function run_test {
43
45
fi
44
46
45
47
if [ ! -f " $sdkconfig_path " ]; then
46
- printf " \033[93mSketch %s not built \nMight be due to missing target requirements or build failure\033[0m\n" " $sketchname "
48
+ printf " \033[93mSketch %s build not found in %s \nMight be due to missing target requirements or build failure\033[0m\n" " $( dirname " $sdkconfig_path " ) " " $sketchname "
47
49
printf " \n\n\n"
48
50
return 0
49
51
fi
50
52
51
- local right_target
52
- right_target =$( grep -E " ^ CONFIG_IDF_TARGET=\" $target \" $ " " $sdkconfig_path " )
53
- if [ -z " $right_target " ]; then
54
- printf " \033[91mError: Sketch %s compiled for different target\n\ 033[0m\n" " $sketchname "
53
+ local compiled_target
54
+ compiled_target =$( grep -E " CONFIG_IDF_TARGET=" " $sdkconfig_path " | cut -d ' " ' -f2 )
55
+ if [ " $compiled_target " != " $target " ]; then
56
+ printf " \033[91mError: Sketch %s compiled for %s, expected %s\ 033[0m\n" " $sketchname " " $compiled_target " " $target "
55
57
printf " \n\n\n"
56
58
return 1
57
59
fi
58
60
59
61
if [ " $len " -eq 1 ]; then
60
62
# build_dir="$sketchdir/build"
61
- build_dir=" $HOME /.arduino/tests/$sketchname /build.tmp"
63
+ build_dir=" $HOME /.arduino/tests/$target / $ sketchname /build.tmp"
62
64
report_file=" $sketchdir /$target /$sketchname .xml"
63
65
fi
64
66
@@ -81,7 +83,7 @@ function run_test {
81
83
82
84
if [ " $len " -ne 1 ]; then
83
85
# build_dir="$sketchdir/build$i"
84
- build_dir=" $HOME /.arduino/tests/$sketchname /build$i .tmp"
86
+ build_dir=" $HOME /.arduino/tests/$target / $ sketchname /build$i .tmp"
85
87
report_file=" $sketchdir /$target /$sketchname$i .xml"
86
88
fi
87
89
@@ -113,14 +115,14 @@ function run_test {
113
115
rm " $sketchdir " /diagram.json 2> /dev/null || true
114
116
115
117
result=0
116
- printf " \033[95mpytest \" %s/test_%s.py\" --build-dir \" %s\" --junit-xml=\" %s\" %s \033[0m\n" " $sketchdir " " $sketchname " " $build_dir " " $report_file " " ${extra_args[*]@ Q} "
117
- bash -c " set +e; pytest \" $sketchdir /test_$sketchname .py\" --build-dir \" $build_dir \" --junit-xml=\" $report_file \" ${extra_args[*]@ Q} ; exit \$ ?" || result=$?
118
+ printf " \033[95mpytest \" %s/test_%s.py\" --build-dir \" %s\" --junit-xml=\" %s\" -o junit_suite_name=%s_%s_%s_%s%s %s \033[0m\n" " $sketchdir " " $sketchname " " $build_dir " " $report_file " " $test_type " " $platform " " $target " " $sketchname " " $i " " ${extra_args[*]@ Q} "
119
+ bash -c " set +e; pytest \" $sketchdir /test_$sketchname .py\" --build-dir \" $build_dir \" --junit-xml=\" $report_file \" -o junit_suite_name= ${test_type} _ ${platform} _ ${target} _ ${sketchname}${i} ${extra_args[*]@ Q} ; exit \$ ?" || result=$?
118
120
printf " \n"
119
121
if [ $result -ne 0 ]; then
120
122
result=0
121
123
printf " \033[95mRetrying test: %s -- Config: %s\033[0m\n" " $sketchname " " $i "
122
- printf " \033[95mpytest \" %s/test_%s.py\" --build-dir \" %s\" --junit-xml=\" %s\" %s \033[0m\n" " $sketchdir " " $sketchname " " $build_dir " " $report_file " " ${extra_args[*]@ Q} "
123
- bash -c " set +e; pytest \" $sketchdir /test_$sketchname .py\" --build-dir \" $build_dir \" --junit-xml=\" $report_file \" ${extra_args[*]@ Q} ; exit \$ ?" || result=$?
124
+ printf " \033[95mpytest \" %s/test_%s.py\" --build-dir \" %s\" --junit-xml=\" %s\" -o junit_suite_name=%s_%s_%s_%s%s %s \033[0m\n" " $sketchdir " " $sketchname " " $build_dir " " $report_file " " $test_type " " $platform " " $target " " $sketchname " " $i " " ${extra_args[*]@ Q} "
125
+ bash -c " set +e; pytest \" $sketchdir /test_$sketchname .py\" --build-dir \" $build_dir \" --junit-xml=\" $report_file \" -o junit_suite_name= ${test_type} _ ${platform} _ ${target} _ ${sketchname}${i} ${extra_args[*]@ Q} ; exit \$ ?" || result=$?
124
126
printf " \n"
125
127
if [ $result -ne 0 ]; then
126
128
printf " \033[91mFailed test: %s -- Config: %s\033[0m\n\n" " $sketchname " " $i "
0 commit comments