Re: [PATCH 14/14] kconfig: test: check if recursive inclusion is detected

From: Ulf Magnusson
Date: Wed Feb 07 2018 - 19:16:55 EST


On Tue, Feb 6, 2018 at 1:34 AM, Masahiro Yamada
<yamada.masahiro@xxxxxxxxxxxxx> wrote:
> If recursive inclusion is detected, it should fail with error messages.
> Test this.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
>
> scripts/kconfig/tests/err_recursive_inc/Kconfig | 1 +
> scripts/kconfig/tests/err_recursive_inc/Kconfig.inc | 1 +
> scripts/kconfig/tests/err_recursive_inc/__init__.py | 10 ++++++++++
> scripts/kconfig/tests/err_recursive_inc/expected_stderr | 4 ++++
> 4 files changed, 16 insertions(+)
> create mode 100644 scripts/kconfig/tests/err_recursive_inc/Kconfig
> create mode 100644 scripts/kconfig/tests/err_recursive_inc/Kconfig.inc
> create mode 100644 scripts/kconfig/tests/err_recursive_inc/__init__.py
> create mode 100644 scripts/kconfig/tests/err_recursive_inc/expected_stderr
>
> diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig b/scripts/kconfig/tests/err_recursive_inc/Kconfig
> new file mode 100644
> index 0000000..3ce7a3f
> --- /dev/null
> +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig
> @@ -0,0 +1 @@
> +source "Kconfig.inc"
> diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc
> new file mode 100644
> index 0000000..1fab1c1
> --- /dev/null
> +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc
> @@ -0,0 +1 @@
> +source "Kconfig"
> diff --git a/scripts/kconfig/tests/err_recursive_inc/__init__.py b/scripts/kconfig/tests/err_recursive_inc/__init__.py
> new file mode 100644
> index 0000000..1dae64f
> --- /dev/null
> +++ b/scripts/kconfig/tests/err_recursive_inc/__init__.py
> @@ -0,0 +1,10 @@
> +"""
> +Detect recursive inclusion error
> +================================
> +
> +If recursive inclusion is detected, it should fail with error messages.
> +"""
> +
> +def test(conf):
> + assert conf.oldaskconfig() != 0
> + assert conf.stderr_contains('expected_stderr')
> diff --git a/scripts/kconfig/tests/err_recursive_inc/expected_stderr b/scripts/kconfig/tests/err_recursive_inc/expected_stderr
> new file mode 100644
> index 0000000..b256c91
> --- /dev/null
> +++ b/scripts/kconfig/tests/err_recursive_inc/expected_stderr
> @@ -0,0 +1,4 @@
> +Kconfig:1: recursive inclusion detected. Inclusion path:
> + current file : 'Kconfig'
> + included from: 'Kconfig.inc:1'
> + included from: 'Kconfig:3'
> --
> 2.7.4
>

Reviewed-by: Ulf Magnusson <ulfalizer@xxxxxxxxx>