[OE-core] [PATCH] core/loader.py: fix regex to include all available test cases

Joshua Lock joshua.g.lock at linux.intel.com
Wed Dec 6 11:50:58 UTC 2017


On 05/12/17 15:51, leonardo.sandoval.gonzalez at linux.intel.com wrote:
> From: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>
> 
> Some test cases (i.e. eSDK.oeSDKExtSelfTest*) does not match with current regex,
> fix it to accept these (and previous ones).
> 
> Without it, the following runtime exception is observed when executing eSDK
> selftest (oe-selftest -r eSDK)
> 
>      Traceback (most recent call last):
>        File "/openembedded-core/scripts/oe-selftest", line 70, in <module>
>          ret = main()
>        File "/openembedded-core/scripts/oe-selftest", line 57, in main
>          results = args.func(logger, args)
>        File "/openembedded-core/meta/lib/oeqa/selftest/context.py", line 253, in run
>          rc = self._internal_run(logger, args)
>        File "/openembedded-core/meta/lib/oeqa/selftest/context.py", line 205, in _internal_run
>          self.tc.loadTests(self.module_paths, **self.tc_kwargs['load'])
>        File "/openembedded-core/meta/lib/oeqa/core/context.py", line 58, in loadTests
>          modules_required, filters)
>        File "/openembedded-core/meta/lib/oeqa/core/loader.py", line 69, in __init__
>          self.modules = _built_modules_dict(modules)
>        File "/openembedded-core/meta/lib/oeqa/core/loader.py", line 48, in _built_modules_dict
>          module_name, class_name, test_name = m.groups()
>      AttributeError: 'NoneType' object has no attribute 'groups'
> 
> Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>

LGTM and fixes [YOCTO #12385], thanks!

Acked-by: Joshua Lock <joshua.g.lock at intel.com>

> ---
>   meta/lib/oeqa/core/loader.py | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/lib/oeqa/core/loader.py b/meta/lib/oeqa/core/loader.py
> index 975a081ba4..9ab4df0a60 100644
> --- a/meta/lib/oeqa/core/loader.py
> +++ b/meta/lib/oeqa/core/loader.py
> @@ -43,7 +43,7 @@ def _built_modules_dict(modules):
>       for module in modules:
>           # Assumption: package and module names do not contain upper case
>           # characters, whereas class names do
> -        m = re.match(r'^([^A-Z]+)(?:\.([A-Z][^.]*)(?:\.([^.]+))?)?$', module)
> +        m = re.match(r'^([a-zA-Z]+)(?:\.([a-zA-Z][^.]*)(?:\.([^.]+))?)?$', module)
>   
>           module_name, class_name, test_name = m.groups()
>   
> 



More information about the Openembedded-core mailing list