Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 17/18] support/testing/tests: add test for check_bin_arch
Date: Tue, 6 Jul 2021 22:20:01 +0200	[thread overview]
Message-ID: <20210706202001.GP2521@scaer> (raw)
In-Reply-To: <20210706142501.951345-18-herve.codina@bootlin.com>

Herv?, All,

On 2021-07-06 16:25 +0200, Herve Codina spake thusly:
> From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> This tests build a bogus package that installs a binary built for the
> host architecture into $(TARGET_DIR), which should cause a build
> failure, at least as long as the host architecture isn't ARM.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Signed-off-by: Herve Codina <herve.codina@bootlin.com>
> ---
> New patch in this v2 series
> 
> This patch is retrieved from Thomas's work.
> The first version was discussed
> https://patchwork.ozlabs.org/project/buildroot/patch/20200430095249.782597-10-thomas.petazzoni at bootlin.com/

Correct URL is:
    https://patchwork.ozlabs.org/project/buildroot/patch/20200430095249.782597-11-thomas.petazzoni at bootlin.com/

> Compared to the first version, as proposed by Yann in the previous
> review, this patch does not launch a subprocess (grep) to search the
> string.
> 
> Note also that the .gitlab-ci.yml modification present in the previous
> version is not present in this patch.

Yes, because the file is generated now. \o/

[--SNIP--]
> diff --git a/support/testing/tests/core/test_bad_arch.py b/support/testing/tests/core/test_bad_arch.py
> new file mode 100644
> index 0000000000..0be7fdc9b7
> --- /dev/null
> +++ b/support/testing/tests/core/test_bad_arch.py
> @@ -0,0 +1,19 @@
> +import infra
> +import infra.basetest
> +import subprocess
> +
> +
> +class DetectBadArchTest(infra.basetest.BRConfigTest):
> +    config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + infra.basetest.MINIMAL_CONFIG
> +    br2_external = [infra.filepath("tests/core/br2-external/detect-bad-arch")]
> +
> +    def test_run(self):
> +        with self.assertRaises(SystemError):
> +            self.b.build()
> +        logf_path = infra.log_file_path(self.b.builddir, "build",
> +                                        infra.basetest.BRConfigTest.logtofile)
> +        if logf_path:
> +            s = 'ERROR: architecture for "/usr/bin/foo" is'
> +            with open(logf_path, "r") as f:
> +                lines = [l for l in f.readlines() if l.startswith(s)]
> +            self.assertEqual(len(lines), 0)

So, this tests explicitly installs a host executable in target/, yet the
assert is written to ensure there is no error: it compares against zero.

So this test-case will fail, by design.

But test should not fail; they should succeed. In this case, the assert
should check that there indeed is an error:

    self.assertEqual(len(lines), 1)

Or did I miss something?

Regards,
Yann E. MORIN.

> -- 
> 2.31.1
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2021-07-06 20:20 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-06 14:24 [Buildroot] [PATCH v2 00/18] Overwritten file detection and fixes, one more step to TLP build Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 01/18] package/e2fsprogs: fix fsck overwrite in HOST_DIR Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 02/18] package/pkg-generic.mk: Remove Info documents dir entry Herve Codina
2021-07-06 19:25   ` Yann E. MORIN
2021-07-06 14:24 ` [Buildroot] [PATCH v2 03/18] package/pkg-generic.mk: perform .la files fixup in per-package HOST_DIR Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 04/18] package/pkg-generic: add post-prepare hooks Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 05/18] package/apr-util: use post-prepare hook Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 06/18] package/apache: move APACHE_FIXUP_APR_LIBTOOL to " Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 07/18] package/pkg-python: remove _sysconfigdata*.pyc files when _sysconfigdata*.py are changed Herve Codina
2021-07-06 19:29   ` Yann E. MORIN
2021-07-06 14:24 ` [Buildroot] [PATCH v2 08/18] package/pkg-generic.mk: move python fixup to generic package infrastructure Herve Codina
2021-07-06 19:50   ` Yann E. MORIN
2021-07-06 21:22     ` Yann E. MORIN
2021-07-07 11:48     ` Herve Codina
2021-07-07 12:21       ` Arnout Vandecappelle
2021-07-07 12:49         ` Herve Codina
2021-07-07 14:28           ` Arnout Vandecappelle
2021-07-07 20:12           ` Yann E. MORIN
2021-07-08 15:38             ` Herve Codina
2021-07-08 20:26               ` Yann E. MORIN
2021-07-09  6:48                 ` Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 09/18] package/owfs: remove Python sysconfigdata fixup Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 10/18] package/pkg-generic.mk: detect files overwritten in TARGET_DIR and HOST_DIR Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 11/18] package/pkg-generic.mk: generate final rsync exclude file list Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 12/18] Makefile: rsync global {TARGET, HOST}_DIR using exclusion " Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 13/18] Makefile: breaks hardlinks in global {TARGET, HOST}_DIR on per-package build Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 14/18] package/pkg-generic.mk: fix per-package <pkg>-{reconfigure, rebuild, reinstall} Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 15/18] package/pkg-generic.mk: remove .files-final-rsync.before temporary file Herve Codina
2021-07-06 14:24 ` [Buildroot] [PATCH v2 16/18] support/testing/infra: add log_file_path() function Herve Codina
2021-07-06 14:25 ` [Buildroot] [PATCH v2 17/18] support/testing/tests: add test for check_bin_arch Herve Codina
2021-07-06 20:20   ` Yann E. MORIN [this message]
2021-07-06 21:25     ` Yann E. MORIN
2021-07-07 12:07       ` Herve Codina
2021-07-06 14:25 ` [Buildroot] [PATCH v2 18/18] support/testing/tests: add test for file overwrite detection Herve Codina
2021-07-06 21:19 ` [Buildroot] [PATCH v2 00/18] Overwritten file detection and fixes, one more step to TLP build Yann E. MORIN

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=20210706202001.GP2521@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /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