mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
test: Add test for source command
This adds a basic test for FIT image handling by the source command. It's a python test becase we need to run mkimage. Signed-off-by: Sean Anderson <sean.anderson@seco.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
b5fd7b4a31
commit
895999261c
2 changed files with 71 additions and 0 deletions
43
test/py/tests/source.its
Normal file
43
test/py/tests/source.its
Normal file
|
@ -0,0 +1,43 @@
|
|||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
description = "FIT image to test the source command";
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
default = "script-1";
|
||||
|
||||
script-1 {
|
||||
data = "echo 1";
|
||||
type = "script";
|
||||
arch = "sandbox";
|
||||
compression = "none";
|
||||
};
|
||||
|
||||
script-2 {
|
||||
data = "echo 2";
|
||||
type = "script";
|
||||
arch = "sandbox";
|
||||
compression = "none";
|
||||
};
|
||||
|
||||
not-a-script {
|
||||
data = "echo 3";
|
||||
type = "kernel";
|
||||
arch = "sandbox";
|
||||
compression = "none";
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-2";
|
||||
|
||||
conf-1 {
|
||||
script = "script-1";
|
||||
};
|
||||
|
||||
conf-2 {
|
||||
script = "script-2";
|
||||
};
|
||||
};
|
||||
};
|
28
test/py/tests/test_source.py
Normal file
28
test/py/tests/test_source.py
Normal file
|
@ -0,0 +1,28 @@
|
|||
# SPDX-License-Identifier: GPL-2.0+
|
||||
# Copyright (C) 2022 Sean Anderson <sean.anderson@seco.com>
|
||||
|
||||
import os
|
||||
import pytest
|
||||
import u_boot_utils as util
|
||||
|
||||
@pytest.mark.boardspec('sandbox')
|
||||
@pytest.mark.buildconfigspec('cmd_echo')
|
||||
@pytest.mark.buildconfigspec('cmd_source')
|
||||
@pytest.mark.buildconfigspec('fit')
|
||||
def test_source(u_boot_console):
|
||||
# Compile our test script image
|
||||
cons = u_boot_console
|
||||
mkimage = os.path.join(cons.config.build_dir, 'tools/mkimage')
|
||||
its = os.path.join(cons.config.source_dir, 'test/py/tests/source.its')
|
||||
fit = os.path.join(cons.config.build_dir, 'source.itb')
|
||||
util.run_and_log(cons, (mkimage, '-f', its, fit))
|
||||
cons.run_command(f'host load hostfs - $loadaddr {fit}')
|
||||
|
||||
assert '1' in cons.run_command('source')
|
||||
assert '1' in cons.run_command('source :script-1')
|
||||
assert '2' in cons.run_command('source :script-2')
|
||||
assert 'Fail' in cons.run_command('source :not-a-script || echo Fail')
|
||||
|
||||
cons.run_command('fdt addr $loadaddr')
|
||||
cons.run_command('fdt rm /images default')
|
||||
assert 'Fail' in cons.run_command('source || echo Fail')
|
Loading…
Reference in a new issue