From: Max Krummenacher <max.oss.09@gmail.com>
To: u-boot@lists.denx.de
Cc: Max Krummenacher <max.krummenacher@toradex.com>,
Heinrich Schuchardt <xypron.glpk@gmx.de>,
Simon Glass <sjg@chromium.org>
Subject: [PATCH v1] test: env: add test for u-boot-initial-env creation
Date: Fri, 9 Dec 2022 13:09:56 +0100 [thread overview]
Message-ID: <20221209120956.2286619-1-max.oss.09@gmail.com> (raw)
From: Max Krummenacher <max.krummenacher@toradex.com>
Checks that `make u-boot-initial-env` creates the text file
u-boot-initial-env and checks that it at least contains
`board=<something>`.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
---
Changes in v1:
I assume every board has a board environment variable but I don't
test its value. I.e. the test succseeds even if a board sets it
to some arbitrary string at build time.
-
Tested only with 'sandbox'.
-
As proposed by Simon, see
https://lore.kernel.org/all/CAPnjgZ0V_Fdj9EvzD1hOYa7VqeptsueAuPj5ktYa7owO1qr_CQ@mail.gmail.com/
Thanks for the pointers tn where to add and where to look
for a host test example. This was very helpful.
test/py/tests/test_env.py | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/test/py/tests/test_env.py b/test/py/tests/test_env.py
index 6d08565f0b5..ea1e4c76e09 100644
--- a/test/py/tests/test_env.py
+++ b/test/py/tests/test_env.py
@@ -8,6 +8,7 @@ Test operation of shell commands relating to environment variables.
import os
import os.path
+import re
from subprocess import call, CalledProcessError
import tempfile
@@ -173,6 +174,28 @@ def validate_set(state_test_env, var, value):
response = state_test_env.u_boot_console.run_command('printenv %s' % var)
assert response == ('%s=%s' % (var, value))
+def test_env_initial_env_file(u_boot_console):
+ """Test that the u-boot-initial-env make target works"""
+ cons = u_boot_console
+ builddir = 'O=' + cons.config.build_dir
+ envfile = cons.config.build_dir + '/u-boot-initial-env'
+
+ # remove if already exists from an older run
+ try:
+ os.remove(envfile)
+ except:
+ pass
+
+ u_boot_utils.run_and_log(cons, ['make', builddir, 'u-boot-initial-env'])
+
+ assert os.path.exists(envfile)
+
+ # assume that every environment has a board variable, e.g. board=sandbox
+ with open(envfile, 'r') as file:
+ env = file.read()
+ regex = re.compile('board=.+\\n')
+ assert re.search(regex, env)
+
def test_env_echo_exists(state_test_env):
"""Test echoing a variable that exists."""
--
2.35.3
next reply other threads:[~2022-12-09 12:10 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-09 12:09 Max Krummenacher [this message]
2022-12-09 19:51 ` [PATCH v1] test: env: add test for u-boot-initial-env creation Simon Glass
2023-01-12 15:18 ` 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=20221209120956.2286619-1-max.oss.09@gmail.com \
--to=max.oss.09@gmail.com \
--cc=max.krummenacher@toradex.com \
--cc=sjg@chromium.org \
--cc=u-boot@lists.denx.de \
--cc=xypron.glpk@gmx.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