@@ -5,31 +5,100 @@ $(EXPVER):
55 make -C tools/test-expect-version
66
77test-update : test-app/image.bin FORCE
8- $(SIGN_TOOL ) test-app/image.bin $(PRIVATE_KEY ) $(TEST_UPDATE_VERSION ) 131072
9- dd if=test-app/image.bin.v$(TEST_UPDATE_VERSION ) .signed of=test-update.bin bs=1 count=131067
10- printf " pBOOT" >> test-update.bin
11- sudo st-term reset init || true
12- sleep 2
13- sudo st-flash --reset write test-update.bin 0x08040000
8+ @$(SIGN_TOOL ) test-app/image.bin $(PRIVATE_KEY ) $(TEST_UPDATE_VERSION ) 131072 > /dev/null
9+ @dd if=test-app/image.bin.v$(TEST_UPDATE_VERSION ) .signed of=test-update.bin bs=1 count=131067
10+ @printf " pBOOT" >> test-update.bin
11+ @make test-reset
12+ @sleep 2
13+ @sudo st-flash --reset write test-update.bin 0x08040000 || \
14+ (make test-reset && sleep 1 && sudo st-flash --reset write test-update.bin 0x08040000) || \
15+ (make test-reset && sleep 1 && sudo st-flash --reset write test-update.bin 0x08040000)
16+
1417
1518test-erase : FORCE
16- sudo st-term reset init || true
17- sleep 2
18- sudo st-flash erase
19+ @echo Mass-erasing the internal flash:
20+ @make test-reset
21+ @sleep 2
22+ @sudo st-flash erase
1923
2024
2125test-factory : factory.bin
22- sudo st-term reset init || true
23- sleep 2
24- sudo st-flash --reset write factory.bin 0x08000000
26+ @make test-reset
27+ @sleep 2
28+ @sudo st-flash --reset write factory.bin 0x08000000 || \
29+ (make test-reset && sleep 1 && sudo st-flash --reset write factory.bin 0x08000000) || \
30+ (make test-reset && sleep 1 && sudo st-flash --reset write factory.bin 0x08000000)
2531
2632test-reset : FORCE
27- sudo st-info --reset || true
33+ @ sudo st-info --reset
2834
2935
3036
3137# # Test cases:
3238
33- test-00-forward-update : $(EXPVER ) FORCE
34- make test-factory
35- $(EXPVER )
39+ test-01-forward-update-no-downgrade : $(EXPVER ) FORCE
40+ @echo Creating and uploading factory image...
41+ @make test-factory
42+ @echo Expecting version ' 1'
43+ @$$(test `$(EXPVER ) ` -eq 1 )
44+ @echo
45+ @echo Creating and uploading update image...
46+ @make test-update TEST_UPDATE_VERSION=4
47+ @echo Expecting version ' 4'
48+ @$$(test `$(EXPVER ) ` -eq 4 )
49+ @echo
50+ @echo Creating and uploading update image...
51+ @make test-update TEST_UPDATE_VERSION=1
52+ @echo Expecting version ' 4'
53+ @$$(test `$(EXPVER ) ` -eq 4 )
54+ @make clean
55+ @echo TEST PASSED
56+
57+ test-02-forward-update-allow-downgrade : $(EXPVER ) FORCE
58+ @echo Creating and uploading factory image...
59+ @make test-factory ALLOW_DOWNGRADE=1
60+ @echo Expecting version ' 1'
61+ @$$(test `$(EXPVER ) ` -eq 1 )
62+ @echo
63+ @echo Creating and uploading update image...
64+ @make test-update TEST_UPDATE_VERSION=4
65+ @echo Expecting version ' 4'
66+ @$$(test `$(EXPVER ) ` -eq 4 )
67+ @echo
68+ @echo Creating and uploading update image...
69+ @make test-update TEST_UPDATE_VERSION=2
70+ @echo Expecting version ' 4'
71+ @$$(test `$(EXPVER ) ` -eq 2 )
72+ @make clean
73+ @echo TEST PASSED
74+
75+ test-03-rollback : $(EXPVER ) FORCE
76+ @echo Creating and uploading factory image...
77+ @make test-factory ALLOW_DOWNGRADE=1
78+ @echo Expecting version ' 1'
79+ @$$(test `$(EXPVER ) ` -eq 1 )
80+ @echo
81+ @echo Creating and uploading update image...
82+ @make test-update TEST_UPDATE_VERSION=4
83+ @echo Expecting version ' 4'
84+ @$$(test `$(EXPVER ) ` -eq 4 )
85+ @echo
86+ @echo Creating and uploading update image...
87+ @make test-update TEST_UPDATE_VERSION=5
88+ @echo Expecting version ' 5'
89+ @$$(test `$(EXPVER ) ` -eq 5 )
90+ @echo
91+ @echo Resetting to trigger rollback...
92+ @make test-reset
93+ @$$(test `$(EXPVER ) ` -eq 4 )
94+ @make clean
95+ @echo TEST PASSED
96+
97+ test-11-forward-update-no-downgrade-ECC : $(EXPVER ) FORCE
98+ @make test-01-forward-update-no-downgrade SIGN=ECC256
99+
100+ test-13-rollback-ECC : $(EXPVER ) FORCE
101+ @make test-03-rollback SIGN=ECC256
102+
103+
104+ test-all : clean test-01-forward-update-no-downgrade test-02-forward-update-allow-downgrade test-03-rollback test-11-forward-update-no-downgrade-ECC test-13-rollback-ECC
0 commit comments