Show stdout on error in fit-test

When this test fails it is useful to see the output from U-Boot. Add
printing of this information on failure.

Signed-off-by: Simon Glass <sjg@chromium.org>
master
Simon Glass 11 years ago committed by Tom Rini
parent 92765f4209
commit aec36cfdac
  1. 19
      test/image/test-fit.py

@ -272,12 +272,13 @@ def set_test(name):
test_name = name
print name
def fail(msg):
def fail(msg, stdout):
"""Raise an error with a helpful failure message
Args:
msg: Message to display
"""
print stdout
raise ValueError("Test '%s' failed: %s" % (test_name, msg))
def run_fit_test(mkimage, u_boot):
@ -341,11 +342,11 @@ def run_fit_test(mkimage, u_boot):
set_test('Kernel load')
stdout = command.Output(u_boot, '-d', control_dtb, '-c', cmd)
if read_file(kernel) != read_file(kernel_out):
fail('Kernel not loaded')
fail('Kernel not loaded', stdout)
if read_file(control_dtb) == read_file(fdt_out):
fail('FDT loaded but should be ignored')
fail('FDT loaded but should be ignored', stdout)
if read_file(ramdisk) == read_file(ramdisk_out):
fail('Ramdisk loaded but should not be')
fail('Ramdisk loaded but should not be', stdout)
# Find out the offset in the FIT where U-Boot has found the FDT
line = find_matching(stdout, 'Booting using the fdt blob at ')
@ -357,7 +358,7 @@ def run_fit_test(mkimage, u_boot):
real_fit_offset = data.find(fdt_magic, 4)
if fit_offset != real_fit_offset:
fail('U-Boot loaded FDT from offset %#x, FDT is actually at %#x' %
(fit_offset, real_fit_offset))
(fit_offset, real_fit_offset), stdout)
# Now a kernel and an FDT
set_test('Kernel + FDT load')
@ -365,11 +366,11 @@ def run_fit_test(mkimage, u_boot):
fit = make_fit(mkimage, params)
stdout = command.Output(u_boot, '-d', control_dtb, '-c', cmd)
if read_file(kernel) != read_file(kernel_out):
fail('Kernel not loaded')
fail('Kernel not loaded', stdout)
if read_file(control_dtb) != read_file(fdt_out):
fail('FDT not loaded')
fail('FDT not loaded', stdout)
if read_file(ramdisk) == read_file(ramdisk_out):
fail('Ramdisk loaded but should not be')
fail('Ramdisk loaded but should not be', stdout)
# Try a ramdisk
set_test('Kernel + FDT + Ramdisk load')
@ -378,7 +379,7 @@ def run_fit_test(mkimage, u_boot):
fit = make_fit(mkimage, params)
stdout = command.Output(u_boot, '-d', control_dtb, '-c', cmd)
if read_file(ramdisk) != read_file(ramdisk_out):
fail('Ramdisk not loaded')
fail('Ramdisk not loaded', stdout)
def run_tests():
"""Parse options, run the FIT tests and print the result"""

Loading…
Cancel
Save