From: Thomas Huth <[email protected]> Pylint recommends to use a "with" context for tempfile.TemporaryDirectory() to make sure that the directory is deleted once it is not needed anymore, and it recommends to use the "check" parameter for subprocess.run(). For style reasons, the imports at the beginning of the file should be grouped by module.
Signed-off-by: Thomas Huth <[email protected]> --- .../arm/test_aspeed_ast2600_buildroot.py | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/tests/functional/arm/test_aspeed_ast2600_buildroot.py b/tests/functional/arm/test_aspeed_ast2600_buildroot.py index 51f2676c906..575a5f64143 100755 --- a/tests/functional/arm/test_aspeed_ast2600_buildroot.py +++ b/tests/functional/arm/test_aspeed_ast2600_buildroot.py @@ -9,8 +9,8 @@ import tempfile import subprocess -from qemu_test import Asset from aspeed import AspeedTest +from qemu_test import Asset from qemu_test import exec_command_and_wait_for_pattern, skipIfMissingCommands @@ -66,21 +66,18 @@ def test_arm_ast2600_evb_buildroot(self): 'images/ast2600-evb/buildroot-2023.02-tpm/flash.img'), 'a46009ae8a5403a0826d607215e731a8c68d27c14c41e55331706b8f9c7bd997') - @skipIfMissingCommands('swtpm') - def test_arm_ast2600_evb_buildroot_tpm(self): - self.set_machine('ast2600-evb') - + def _test_arm_ast2600_evb_buildroot_tpm(self, tpmstate_dir): image_path = self.ASSET_BR2_202302_AST2600_TPM_FLASH.fetch() - tpmstate_dir = tempfile.TemporaryDirectory(prefix="qemu_") - socket = os.path.join(tpmstate_dir.name, 'swtpm-socket') + socket = os.path.join(tpmstate_dir, 'swtpm-socket') # We must put the TPM state dir in /tmp/, not the build dir, # because some distros use AppArmor to lock down swtpm and # restrict the set of locations it can access files in. subprocess.run(['swtpm', 'socket', '-d', '--tpm2', - '--tpmstate', f'dir={tpmstate_dir.name}', - '--ctrl', f'type=unixio,path={socket}']) + '--tpmstate', f'dir={tpmstate_dir}', + '--ctrl', f'type=unixio,path={socket}'], + check=True) self.vm.add_args('-chardev', f'socket,id=chrtpm,path={socket}') self.vm.add_args('-tpmdev', 'emulator,id=tpm0,chardev=chrtpm') @@ -97,6 +94,12 @@ def test_arm_ast2600_evb_buildroot_tpm(self): self.do_test_arm_aspeed_buildroot_poweroff() + @skipIfMissingCommands('swtpm') + def test_arm_ast2600_evb_buildroot_tpm(self): + self.set_machine('ast2600-evb') + with tempfile.TemporaryDirectory(prefix="qemu_") as tpmstate_dir: + self._test_arm_ast2600_evb_buildroot_tpm(tpmstate_dir) + if __name__ == '__main__': AspeedTest.main() -- 2.51.1
