[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