summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAlison Chaiken <alison@peloton-tech.com>2017-09-09 23:54:51 -0700
committerTom Rini <trini@konsulko.com>2017-09-14 21:32:59 -0400
commitc5772188ede914b0e67c2a58ae179039a582afe0 (patch)
tree7e9f0b9aadc81ef112da3bbfb7d7d9796e659339 /test
parenta2f422555fc80144aea418c0d8e95341acfe6868 (diff)
add pytests for 'gpt rename' and 'gpt swap'
Add unit tests for the 'gpt rename' and 'gpt swap' commands that rely on the block device created by test/py/make_test_disk.py. Add CONFIG_CMD_GPT_RENAME to the sandbox_defconfig. Remove the testdisk.raw test device at the end of the tests. Signed-off-by: Alison Chaiken <alison@peloton-tech.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'test')
-rw-r--r--test/py/tests/test_gpt.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/py/tests/test_gpt.py b/test/py/tests/test_gpt.py
index 73f5c50f6c..06f24b66ce 100644
--- a/test/py/tests/test_gpt.py
+++ b/test/py/tests/test_gpt.py
@@ -35,4 +35,35 @@ def test_gpt_save_guid(u_boot_console):
output = u_boot_console.run_command('gpt guid host 0 newguid')
output = u_boot_console.run_command('printenv newguid')
assert '375a56f7-d6c9-4e81-b5f0-09d41ca89efe' in output
+
+@pytest.mark.buildconfigspec('cmd_gpt')
+def test_gpt_rename_partition(u_boot_console):
+ """Test the gpt rename command to write partition names."""
+
+ if u_boot_console.config.buildconfig.get('config_cmd_gpt_rename', 'n') != 'y':
+ pytest.skip('gpt rename command not supported')
+ u_boot_console.run_command('host bind 0 testdisk.raw')
+ u_boot_console.run_command('gpt rename host 0 1 first')
+ output = u_boot_console.run_command('gpt read host 0')
+ assert 'name first' in output
+ u_boot_console.run_command('gpt rename host 0 2 second')
+ output = u_boot_console.run_command('gpt read host 0')
+ assert 'name second' in output
+
+@pytest.mark.buildconfigspec('cmd_gpt')
+def test_gpt_swap_partitions(u_boot_console):
+ """Test the gpt swap command to exchange two partition names."""
+
+ if u_boot_console.config.buildconfig.get('config_cmd_gpt_rename', 'n') != 'y':
+ pytest.skip('gpt rename command not supported')
+ if u_boot_console.config.buildconfig.get('config_cmd_part', 'n') != 'y':
+ pytest.skip('gpt swap test needs CMD_PART')
+ u_boot_console.run_command('host bind 0 testdisk.raw')
+ output = u_boot_console.run_command('part list host 0')
+ assert '0x000007ff "first"' in output
+ assert '0x000017ff "second"' in output
+ u_boot_console.run_command('gpt swap host 0 first second')
+ output = u_boot_console.run_command('part list host 0')
+ assert '0x000007ff "second"' in output
+ assert '0x000017ff "first"' in output
os.remove('testdisk.raw')