Skip to content

Commit a5adacd

Browse files
committed
add a basic regression test script
1 parent c7ebb07 commit a5adacd

4 files changed

Lines changed: 347 additions & 0 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ tags
2222
*.map
2323
# ignore files generated by the Arduino make system:
2424
build-*/
25+
# ignore test log files:
26+
*test.log
2527
# ignore files generated by patch:
2628
*.orig
2729
*.rej
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
compile log for all tests.
2+
source revision: v0.4.0-11-g87f15d6
3+
2 EEPROM/examples/eeprom_clear
4+
514 100 0 614 266 build-stm8sblue/eeprom_clear.map
5+
0 EEPROM/examples/eeprom_crc
6+
2881 238 70 3119 c2f build-stm8sblue/eeprom_crc.map
7+
0 EEPROM/examples/eeprom_get
8+
5757 195 70 5952 1740 build-stm8sblue/eeprom_get.map
9+
2 EEPROM/examples/eeprom_iteration
10+
85 0 0 85 55 build-stm8sblue/eeprom_iteration.map
11+
0 EEPROM/examples/eeprom_put
12+
2852 253 70 3105 c21 build-stm8sblue/eeprom_put.map
13+
0 EEPROM/examples/eeprom_read
14+
2693 129 73 2822 b06 build-stm8sblue/eeprom_read.map
15+
0 EEPROM/examples/eeprom_update
16+
2756 227 72 2983 ba7 build-stm8sblue/eeprom_update.map
17+
0 EEPROM/examples/eeprom_write
18+
2740 227 72 2967 b97 build-stm8sblue/eeprom_write.map
19+
0 EEPROM/examples/test
20+
2815 134 74 2949 b85 build-stm8sblue/test.map
21+
0 Generic_Examples/examples/01.Basics/AnalogReadSerial
22+
3346 225 70 3571 df3 build-stm8sblue/AnalogReadSerial.map
23+
2 Generic_Examples/examples/01.Basics/BareMinimum
24+
2 0 0 2 2 build-stm8sblue/BareMinimum.map
25+
0 Generic_Examples/examples/01.Basics/Blink
26+
2370 225 70 2595 a23 build-stm8sblue/Blink.map
27+
0 Generic_Examples/examples/01.Basics/DigitalReadSerial
28+
3061 227 72 3288 cd8 build-stm8sblue/DigitalReadSerial.map
29+
0 Generic_Examples/examples/01.Basics/Fade
30+
2686 231 76 2917 b65 build-stm8sblue/Fade.map
31+
0 Generic_Examples/examples/01.Basics/ReadAnalogVoltage
32+
6300 237 70 6537 1989 build-stm8sblue/ReadAnalogVoltage.map
33+
0 Generic_Examples/examples/02.Digital/BlinkWithoutDelay
34+
2431 237 76 2668 a6c build-stm8sblue/BlinkWithoutDelay.map
35+
2 Generic_Examples/examples/02.Digital/Button
36+
492 106 2 598 256 build-stm8sblue/Button.map
37+
0 Generic_Examples/examples/02.Digital/Debounce
38+
2475 241 84 2716 a9c build-stm8sblue/Debounce.map
39+
0 Generic_Examples/examples/02.Digital/DigitalInputPullup
40+
3087 225 70 3312 cf0 build-stm8sblue/DigitalInputPullup.map
41+
0 Generic_Examples/examples/02.Digital/StateChangeDetection
42+
3212 269 76 3481 d99 build-stm8sblue/StateChangeDetection.map
43+
0 Generic_Examples/examples/03.Analog/AnalogInOutSerial
44+
3935 259 78 4194 1062 build-stm8sblue/AnalogInOutSerial.map
45+
0 Generic_Examples/examples/03.Analog/AnalogInput
46+
2699 231 76 2930 b72 build-stm8sblue/AnalogInput.map
47+
0 Generic_Examples/examples/03.Analog/Calibration
48+
3423 239 80 3662 e4e build-stm8sblue/Calibration.map
49+
0 Generic_Examples/examples/03.Analog/Fading
50+
2692 227 72 2919 b67 build-stm8sblue/Fading.map
51+
0 Generic_Examples/examples/03.Analog/Smoothing
52+
3462 233 98 3695 e6f build-stm8sblue/Smoothing.map
53+
0 Generic_Examples/examples/04.Communication/ASCIITable
54+
2775 187 72 2962 b92 build-stm8sblue/ASCIITable.map
55+
0 Generic_Examples/examples/04.Communication/Dimmer
56+
2667 227 70 2894 b4e build-stm8sblue/Dimmer.map
57+
0 Generic_Examples/examples/04.Communication/Graph
58+
3346 225 70 3571 df3 build-stm8sblue/Graph.map
59+
0 Generic_Examples/examples/04.Communication/SerialCallResponseASCII
60+
4014 245 82 4259 10a3 build-stm8sblue/SerialCallResponseASCII.map
61+
0 Generic_Examples/examples/04.Communication/SerialCallResponse
62+
3422 237 82 3659 e4b build-stm8sblue/SerialCallResponse.map
63+
0 Generic_Examples/examples/06.Sensors/Ping
64+
3581 235 70 3816 ee8 build-stm8sblue/Ping.map
65+
2 Generic_Examples/examples/07.Display/barGraph
66+
1697 128 24 1825 721 build-stm8sblue/barGraph.map
67+
0 I2C/examples/busscan
68+
4525 353 108 4878 130e build-stm8sblue/busscan.map
69+
0 I2C/examples/pcf8574
70+
4715 322 111 5037 13ad build-stm8sblue/pcf8574.map
71+
0 LiquidCrystal/examples/Autoscroll
72+
4143 225 91 4368 1110 build-stm8sblue/Autoscroll.map
73+
0 LiquidCrystal/examples/Blink
74+
4055 239 91 4294 10c6 build-stm8sblue/Blink.map
75+
0 LiquidCrystal/examples/Cursor
76+
4055 239 91 4294 10c6 build-stm8sblue/Cursor.map
77+
0 LiquidCrystal/examples/CustomCharacter
78+
4990 283 135 5273 1499 build-stm8sblue/CustomCharacter.map
79+
0 LiquidCrystal/examples/Display
80+
4055 239 91 4294 10c6 build-stm8sblue/Display.map
81+
0 LiquidCrystal/examples/HelloWorld
82+
4067 239 91 4306 10d2 build-stm8sblue/HelloWorld.map
83+
0 LiquidCrystal/examples/Scroll
84+
4130 239 91 4369 1111 build-stm8sblue/Scroll.map
85+
0 LiquidCrystal/examples/SerialDisplay
86+
3386 225 91 3611 e1b build-stm8sblue/SerialDisplay.map
87+
0 LiquidCrystal/examples/setCursor
88+
3440 229 91 3669 e55 build-stm8sblue/setCursor.map
89+
0 LiquidCrystal/examples/TextDirection
90+
3401 227 93 3628 e2c build-stm8sblue/TextDirection.map
91+
0 LiquidCrystal_I2C/doc/LiquidCrystal_I2C/examples/HelloWorld
92+
0 LiquidCrystal_I2C/examples/BlinkingCursor
93+
5279 316 121 5595 15db build-stm8sblue/BlinkingCursor.map
94+
0 LiquidCrystal_I2C/examples/CustomChars
95+
5502 394 185 5896 1708 build-stm8sblue/CustomChars.map
96+
0 LiquidCrystal_I2C/examples/HelloWorld
97+
5264 301 121 5565 15bd build-stm8sblue/HelloWorld.map
98+
0 LiquidCrystal_I2C/examples/SerialDisplay
99+
5263 287 121 5550 15ae build-stm8sblue/SerialDisplay.map
100+
0 LiquidCrystal_I2C/examples/test
101+
5230 301 121 5531 159b build-stm8sblue/test.map
102+
0 LiquidCrystal_pcf2119/examples/BlinkingCursor
103+
5785 604 122 6389 18f5 build-mb208/BlinkingCursor.map
104+
0 LiquidCrystal_pcf2119/examples/CustomChars
105+
6004 682 186 6686 1a1e build-mb208/CustomChars.map
106+
0 LiquidCrystal_pcf2119/examples/HelloWorld
107+
5726 589 122 6315 18ab build-mb208/HelloWorld.map
108+
0 LiquidCrystal_pcf2119/examples/SerialDisplay
109+
5833 575 122 6408 1908 build-mb208/SerialDisplay.map
110+
0 Mini_SSD1306/examples/oled-mini
111+
5814 1411 1140 7225 1c39 build-stm8sblue/oled-mini.map
112+
0 PCD8544/examples/HelloWorld
113+
4822 724 146 5546 15aa build-stm8sblue/HelloWorld.map
114+
0 PCD8544/examples/Thermometer
115+
5866 748 149 6614 19d6 build-stm8sblue/Thermometer.map
116+
0 Servo/examples/Knob
117+
4661 232 143 4893 131d build-stm8sblue/Knob.map
118+
0 Servo/examples/Sweep
119+
4368 232 141 4600 11f8 build-stm8sblue/Sweep.map
120+
0 Stepper/examples/MotorKnob
121+
4339 245 90 4584 11e8 build-stm8sblue/MotorKnob.map
122+
0 Stepper/examples/stepper_oneRevolution
123+
4778 270 88 5048 13b8 build-stm8sblue/stepper_oneRevolution.map
124+
0 Stepper/examples/stepper_oneStepAtATime
125+
4755 252 90 5007 138f build-stm8sblue/stepper_oneStepAtATime.map
126+
0 Stepper/examples/stepper_speedControl
127+
4918 249 94 5167 142f build-stm8sblue/stepper_speedControl.map
128+
0 Wire/examples/digital_potentiometer
129+
3481 132 257 3613 e1d build-stm8sblue/digital_potentiometer.map
130+
0 Wire/examples/i2c_scanner
131+
4377 249 256 4626 1212 build-stm8sblue/i2c_scanner.map
132+
0 Wire/examples/master_reader
133+
3479 131 256 3610 e1a build-stm8sblue/master_reader.map
134+
0 Wire/examples/master_writer
135+
3473 138 257 3611 e1b build-stm8sblue/master_writer.map
136+
0 Wire/examples/pcf8574
137+
4419 166 259 4585 11e9 build-stm8sblue/pcf8574.map
138+
0 Wire/examples/SFRRanger_reader
139+
4252 133 258 4385 1121 build-stm8sblue/SFRRanger_reader.map
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
compile log for all tests.
2+
source revision: v0.4.0-12-gc7ebb07
3+
0 EEPROM/examples/eeprom_clear
4+
2406 227 72 2633 a49 build-stm8sblue/eeprom_clear.map
5+
0 EEPROM/examples/eeprom_crc
6+
2881 240 72 3121 c31 build-stm8sblue/eeprom_crc.map
7+
0 EEPROM/examples/eeprom_get
8+
5757 197 72 5954 1742 build-stm8sblue/eeprom_get.map
9+
0 EEPROM/examples/eeprom_iteration
10+
1977 127 72 2104 838 build-stm8sblue/eeprom_iteration.map
11+
0 EEPROM/examples/eeprom_put
12+
2852 255 72 3107 c23 build-stm8sblue/eeprom_put.map
13+
0 EEPROM/examples/eeprom_read
14+
2693 131 75 2824 b08 build-stm8sblue/eeprom_read.map
15+
0 EEPROM/examples/eeprom_update
16+
2756 229 74 2985 ba9 build-stm8sblue/eeprom_update.map
17+
0 EEPROM/examples/eeprom_write
18+
2740 229 74 2969 b99 build-stm8sblue/eeprom_write.map
19+
0 EEPROM/examples/test
20+
2815 136 76 2951 b87 build-stm8sblue/test.map
21+
0 Generic_Examples/examples/01.Basics/AnalogReadSerial
22+
3346 227 72 3573 df5 build-stm8sblue/AnalogReadSerial.map
23+
0 Generic_Examples/examples/01.Basics/BareMinimum
24+
1894 127 72 2021 7e5 build-stm8sblue/BareMinimum.map
25+
0 Generic_Examples/examples/01.Basics/Blink
26+
2370 227 72 2597 a25 build-stm8sblue/Blink.map
27+
0 Generic_Examples/examples/01.Basics/DigitalReadSerial
28+
3061 229 74 3290 cda build-stm8sblue/DigitalReadSerial.map
29+
0 Generic_Examples/examples/01.Basics/Fade
30+
2686 233 78 2919 b67 build-stm8sblue/Fade.map
31+
0 Generic_Examples/examples/01.Basics/ReadAnalogVoltage
32+
6300 239 72 6539 198b build-stm8sblue/ReadAnalogVoltage.map
33+
0 Generic_Examples/examples/02.Digital/BlinkWithoutDelay
34+
2431 239 78 2670 a6e build-stm8sblue/BlinkWithoutDelay.map
35+
0 Generic_Examples/examples/02.Digital/Button
36+
2384 233 74 2617 a39 build-stm8sblue/Button.map
37+
0 Generic_Examples/examples/02.Digital/Debounce
38+
2475 243 86 2718 a9e build-stm8sblue/Debounce.map
39+
0 Generic_Examples/examples/02.Digital/DigitalInputPullup
40+
3087 227 72 3314 cf2 build-stm8sblue/DigitalInputPullup.map
41+
0 Generic_Examples/examples/02.Digital/StateChangeDetection
42+
3212 271 78 3483 d9b build-stm8sblue/StateChangeDetection.map
43+
0 Generic_Examples/examples/03.Analog/AnalogInOutSerial
44+
3935 261 80 4196 1064 build-stm8sblue/AnalogInOutSerial.map
45+
0 Generic_Examples/examples/03.Analog/AnalogInput
46+
2699 233 78 2932 b74 build-stm8sblue/AnalogInput.map
47+
0 Generic_Examples/examples/03.Analog/Calibration
48+
3423 241 82 3664 e50 build-stm8sblue/Calibration.map
49+
0 Generic_Examples/examples/03.Analog/Fading
50+
2692 229 74 2921 b69 build-stm8sblue/Fading.map
51+
0 Generic_Examples/examples/03.Analog/Smoothing
52+
3462 235 100 3697 e71 build-stm8sblue/Smoothing.map
53+
0 Generic_Examples/examples/04.Communication/ASCIITable
54+
2775 189 74 2964 b94 build-stm8sblue/ASCIITable.map
55+
0 Generic_Examples/examples/04.Communication/Dimmer
56+
2667 229 72 2896 b50 build-stm8sblue/Dimmer.map
57+
0 Generic_Examples/examples/04.Communication/Graph
58+
3346 227 72 3573 df5 build-stm8sblue/Graph.map
59+
0 Generic_Examples/examples/04.Communication/SerialCallResponseASCII
60+
4014 247 84 4261 10a5 build-stm8sblue/SerialCallResponseASCII.map
61+
0 Generic_Examples/examples/04.Communication/SerialCallResponse
62+
3422 239 84 3661 e4d build-stm8sblue/SerialCallResponse.map
63+
0 Generic_Examples/examples/06.Sensors/Ping
64+
3581 237 72 3818 eea build-stm8sblue/Ping.map
65+
0 Generic_Examples/examples/07.Display/barGraph
66+
3375 255 96 3630 e2e build-stm8sblue/barGraph.map
67+
0 I2C/examples/busscan
68+
4525 355 110 4880 1310 build-stm8sblue/busscan.map
69+
0 I2C/examples/pcf8574
70+
4715 324 113 5039 13af build-stm8sblue/pcf8574.map
71+
0 LiquidCrystal/examples/Autoscroll
72+
4143 227 93 4370 1112 build-stm8sblue/Autoscroll.map
73+
0 LiquidCrystal/examples/Blink
74+
4055 241 93 4296 10c8 build-stm8sblue/Blink.map
75+
0 LiquidCrystal/examples/Cursor
76+
4055 241 93 4296 10c8 build-stm8sblue/Cursor.map
77+
0 LiquidCrystal/examples/CustomCharacter
78+
4990 285 137 5275 149b build-stm8sblue/CustomCharacter.map
79+
0 LiquidCrystal/examples/Display
80+
4055 241 93 4296 10c8 build-stm8sblue/Display.map
81+
0 LiquidCrystal/examples/HelloWorld
82+
4067 241 93 4308 10d4 build-stm8sblue/HelloWorld.map
83+
0 LiquidCrystal/examples/Scroll
84+
4130 241 93 4371 1113 build-stm8sblue/Scroll.map
85+
0 LiquidCrystal/examples/SerialDisplay
86+
3386 227 93 3613 e1d build-stm8sblue/SerialDisplay.map
87+
0 LiquidCrystal/examples/setCursor
88+
3440 231 93 3671 e57 build-stm8sblue/setCursor.map
89+
0 LiquidCrystal/examples/TextDirection
90+
3401 229 95 3630 e2e build-stm8sblue/TextDirection.map
91+
0 LiquidCrystal_I2C/doc/LiquidCrystal_I2C/examples/HelloWorld
92+
0 LiquidCrystal_I2C/examples/BlinkingCursor
93+
5279 318 123 5597 15dd build-stm8sblue/BlinkingCursor.map
94+
0 LiquidCrystal_I2C/examples/CustomChars
95+
5502 396 187 5898 170a build-stm8sblue/CustomChars.map
96+
0 LiquidCrystal_I2C/examples/HelloWorld
97+
5264 303 123 5567 15bf build-stm8sblue/HelloWorld.map
98+
0 LiquidCrystal_I2C/examples/SerialDisplay
99+
5263 289 123 5552 15b0 build-stm8sblue/SerialDisplay.map
100+
2 LiquidCrystal_pcf2119/examples/BlinkingCursor
101+
2 LiquidCrystal_pcf2119/examples/CustomChars
102+
2 LiquidCrystal_pcf2119/examples/HelloWorld
103+
2 LiquidCrystal_pcf2119/examples/SerialDisplay
104+
0 Mini_SSD1306/examples/oled-mini
105+
5814 1413 1142 7227 1c3b build-stm8sblue/oled-mini.map
106+
0 PCD8544/examples/HelloWorld
107+
4822 726 148 5548 15ac build-stm8sblue/HelloWorld.map
108+
0 PCD8544/examples/Thermometer
109+
5866 750 151 6616 19d8 build-stm8sblue/Thermometer.map
110+
0 Servo/examples/Knob
111+
4661 234 145 4895 131f build-stm8sblue/Knob.map
112+
0 Servo/examples/Sweep
113+
4368 234 143 4602 11fa build-stm8sblue/Sweep.map
114+
0 Stepper/examples/MotorKnob
115+
4339 247 92 4586 11ea build-stm8sblue/MotorKnob.map
116+
0 Stepper/examples/stepper_oneRevolution
117+
4778 272 90 5050 13ba build-stm8sblue/stepper_oneRevolution.map
118+
0 Stepper/examples/stepper_oneStepAtATime
119+
4755 254 92 5009 1391 build-stm8sblue/stepper_oneStepAtATime.map
120+
0 Stepper/examples/stepper_speedControl
121+
4918 251 96 5169 1431 build-stm8sblue/stepper_speedControl.map
122+
0 Wire/examples/digital_potentiometer
123+
3481 134 259 3615 e1f build-stm8sblue/digital_potentiometer.map
124+
0 Wire/examples/i2c_scanner
125+
4377 251 258 4628 1214 build-stm8sblue/i2c_scanner.map
126+
0 Wire/examples/master_reader
127+
3479 133 258 3612 e1c build-stm8sblue/master_reader.map
128+
0 Wire/examples/master_writer
129+
3473 140 259 3613 e1d build-stm8sblue/master_writer.map
130+
0 Wire/examples/pcf8574
131+
4419 168 261 4587 11eb build-stm8sblue/pcf8574.map
132+
0 Wire/examples/SFRRanger_reader
133+
4252 135 260 4387 1123 build-stm8sblue/SFRRanger_reader.map
134+
total text/data/bss/flash (text+data): 237586 16819 7864 254405
135+
Failed tests:
136+
2 LiquidCrystal_pcf2119/examples/BlinkingCursor
137+
2 LiquidCrystal_pcf2119/examples/CustomChars
138+
2 LiquidCrystal_pcf2119/examples/HelloWorld
139+
2 LiquidCrystal_pcf2119/examples/SerialDisplay

test/make-test.sh

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#!/bin/bash
2+
3+
CURDIR=$(pwd)
4+
SRCREV=$(git describe --tags --match="v*")
5+
LOGFILE=${CURDIR}/logs/test-${SRCREV}.log
6+
BASEDIR=../sduino/hardware/sduino/stm8/libraries/
7+
8+
# count the number of CPUs and use them for parallel compiling
9+
THREADS=$(grep processor /proc/cpuinfo |wc -l)
10+
11+
# make sure $COLUMNS is set
12+
shopt -s checkwinsize
13+
14+
print_status() {
15+
local status
16+
if [ $1 -eq 0 ]; then
17+
status="\e[32m ok \e[0m"
18+
else
19+
status="\e[31mfail\e[0m"
20+
fi
21+
22+
# Get the number of columns, but subtact 8 to leave space for the status.
23+
local columns=$((COLUMNS-8))
24+
echo -e "\r\e[${columns}C[${status}]"
25+
}
26+
27+
28+
(
29+
echo "compile log for all tests."
30+
echo "source revision: $SRCREV"
31+
) | tee "$LOGFILE"
32+
33+
# removing *all* old build directories for a clear start
34+
find "$BASEDIR" -name "build-*" -type d|xargs rm -r
35+
36+
#find "$BASEDIR" -name Makefile|sort|while read line; do
37+
for line in $(find "$BASEDIR" -name Makefile|sort); do
38+
dir=$(dirname $line)
39+
shortdir=${dir#$BASEDIR}
40+
echo -n "$shortdir"
41+
cd $dir
42+
make -j$THREADS > build-test.log 2>&1
43+
status=$?
44+
# echo $status
45+
print_status $status
46+
echo "$status $shortdir" >> "$LOGFILE"
47+
if [ $status -eq 0 ]; then
48+
sdsize.sh build-*/*.map|tail -1 >> "$LOGFILE"
49+
fi
50+
cd - > /dev/null
51+
done
52+
53+
54+
# output some statistics
55+
(
56+
# sum up the total memory usage
57+
TOTAL=$(awk '/^ / {
58+
text+=$1; data+=$2; bss+=$3
59+
}
60+
END {
61+
printf "total text/data/bss/flash (text+data):\t%i\t%i\t%i\t%i\n",text,data,bss,text+data
62+
}' "$LOGFILE")
63+
echo $TOTAL
64+
65+
echo "Failed tests:"
66+
grep "^[1-9]" "$LOGFILE"
67+
) | tee -a "$LOGFILE"

0 commit comments

Comments
 (0)