ci(pytest): reorder test sequence to run tests faster

pull/7554/merge
Fu Hanxi 2022-02-18 15:38:54 +08:00
rodzic 1b095db5c9
commit 31fafaea93
1 zmienionych plików z 5 dodań i 0 usunięć

Wyświetl plik

@ -152,11 +152,16 @@ def pytest_collection_modifyitems(config: Config, items: List[Function]) -> None
if not target: if not target:
return return
# sort by file path and callspec.config
# implement like this since this is a limitation of pytest, couldn't get fixture values while collecting
# https://github.com/pytest-dev/pytest/discussions/9689
def _get_param_config(_item: Function) -> str: def _get_param_config(_item: Function) -> str:
if hasattr(_item, 'callspec'): if hasattr(_item, 'callspec'):
return _item.callspec.params.get('config', DEFAULT_SDKCONFIG) # type: ignore return _item.callspec.params.get('config', DEFAULT_SDKCONFIG) # type: ignore
return DEFAULT_SDKCONFIG return DEFAULT_SDKCONFIG
items.sort(key=lambda x: (os.path.dirname(x.path), _get_param_config(x)))
# add markers for special markers # add markers for special markers
for item in items: for item in items:
if 'supported_targets' in item_marker_names(item): if 'supported_targets' in item_marker_names(item):