public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: alison at peloton-tech.com <alison@peloton-tech.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/1] add pytests for 'gpt rename' and 'gpt swap'
Date: Sat,  9 Sep 2017 23:54:51 -0700	[thread overview]
Message-ID: <20170910065451.31902-2-alison@peloton-tech.com> (raw)
In-Reply-To: <20170910065451.31902-1-alison@peloton-tech.com>

From: Alison Chaiken <alison@peloton-tech.com>

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>
---
 configs/sandbox_defconfig |  1 +
 test/py/tests/test_gpt.py | 31 +++++++++++++++++++++++++++++++
 2 files changed, 32 insertions(+)

diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 4c4e4809be..e7a61bd61a 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -34,6 +34,7 @@ CONFIG_CMD_MX_CYCLIC=y
 CONFIG_CMD_DEMO=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_GPT=y
+CONFIG_CMD_GPT_RENAME=y
 CONFIG_CMD_IDE=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_PCI=y
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
+
+ at 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
+
+ at 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')
-- 
2.14.1

  reply	other threads:[~2017-09-10  6:54 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-03  0:18 [U-Boot] [PATCH 1/3] GPT: create block device for sandbox testing alison at peloton-tech.com
2017-09-03  0:18 ` [U-Boot] [PATCH 2/3] add pytest for 'gpt guid' command in sandbox alison at peloton-tech.com
2017-09-03  0:18 ` [U-Boot] [PATCH 3/3] add pytests for 'gpt rename' and 'gpt swap' alison at peloton-tech.com
2017-09-05  8:55   ` Simon Glass
2017-09-10  6:54     ` [U-Boot] [PATCH v2 1/3] " alison at peloton-tech.com
2017-09-10  6:54       ` alison at peloton-tech.com [this message]
2017-09-12 12:29         ` [U-Boot] [PATCH 1/1] " Simon Glass
2017-09-15 12:29         ` [U-Boot] [U-Boot, " Tom Rini
2017-09-15 15:40           ` Stephen Warren
2017-09-15 16:16             ` Tom Rini
2017-09-15 16:29               ` Stephen Warren
2017-09-05  8:55 ` [U-Boot] [PATCH 1/3] GPT: create block device for sandbox testing Simon Glass
2017-09-10  6:47   ` [U-Boot] [PATCH 0/2] GPT: create block device for guid testing alison at peloton-tech.com
2017-09-10  6:47     ` [U-Boot] [PATCH 1/2] GPT: create block device for sandbox testing alison at peloton-tech.com
2017-09-12 12:29       ` Simon Glass
2017-09-15 12:23       ` [U-Boot] [U-Boot, " Tom Rini
2017-09-10  6:47     ` [U-Boot] [PATCH 2/2] add pytests for 'gpt guid' command in sandbox alison at peloton-tech.com
2017-09-12 12:29       ` Simon Glass
2017-09-15 12:28       ` [U-Boot] [U-Boot, " Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170910065451.31902-2-alison@peloton-tech.com \
    --to=alison@peloton-tech.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox