mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-18 13:11:31 +00:00
test: vboot: Parameterise the test
This test is actually made up of five separate tests. Split them out so that they appear as separate tests. Unfortunately this restarts U-Boot multiple times which adds about a second to the already-long vboot test, about 8 seconds total on my machine. We could add a special 'teardown' test afterwards but if the tests are executed out of order that would not work. Changing test_vboot into a class causes it not to be discovered and makes it different from all other tests. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
c021971e13
commit
1b09003202
1 changed files with 14 additions and 6 deletions
|
@ -30,13 +30,22 @@ import struct
|
|||
import u_boot_utils as util
|
||||
import vboot_forge
|
||||
|
||||
TESTDATA = [
|
||||
['sha1', '', False],
|
||||
['sha1', '-pss', False],
|
||||
['sha256', '', False],
|
||||
['sha256', '-pss', False],
|
||||
['sha256', '-pss', True],
|
||||
]
|
||||
|
||||
@pytest.mark.boardspec('sandbox')
|
||||
@pytest.mark.buildconfigspec('fit_signature')
|
||||
@pytest.mark.requiredtool('dtc')
|
||||
@pytest.mark.requiredtool('fdtget')
|
||||
@pytest.mark.requiredtool('fdtput')
|
||||
@pytest.mark.requiredtool('openssl')
|
||||
def test_vboot(u_boot_console):
|
||||
@pytest.mark.parametrize("sha_algo,padding,required", TESTDATA)
|
||||
def test_vboot(u_boot_console, sha_algo, padding, required):
|
||||
"""Test verified boot signing with mkimage and verification with 'bootm'.
|
||||
|
||||
This works using sandbox only as it needs to update the device tree used
|
||||
|
@ -297,11 +306,10 @@ def test_vboot(u_boot_console):
|
|||
# afterwards.
|
||||
old_dtb = cons.config.dtb
|
||||
cons.config.dtb = dtb
|
||||
test_with_algo('sha1','')
|
||||
test_with_algo('sha1','-pss')
|
||||
test_with_algo('sha256','')
|
||||
test_with_algo('sha256','-pss')
|
||||
test_required_key('sha256','-pss')
|
||||
if required:
|
||||
test_required_key(sha_algo, padding)
|
||||
else:
|
||||
test_with_algo(sha_algo, padding)
|
||||
finally:
|
||||
# Go back to the original U-Boot with the correct dtb.
|
||||
cons.config.dtb = old_dtb
|
||||
|
|
Loading…
Add table
Reference in a new issue