From 8f1093cff72d1e1f36db02cde9fde65ab0442a98 Mon Sep 17 00:00:00 2001 From: jiangkaiwen Date: Fri, 25 Nov 2022 18:41:03 +0800 Subject: [PATCH] Modify collect_module_dependencies() function for fixing 262 frame of monthly Issue:I637BE Signed-off-by: jiangkaiwen Change-Id: I0e7b14eb612eaff09a610d1a331adf1568eae103 --- test262/utils.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/test262/utils.py b/test262/utils.py index 6d38ded768..87d59ae050 100755 --- a/test262/utils.py +++ b/test262/utils.py @@ -165,6 +165,7 @@ def search_dependency(file, directory): for f in files: if f == file: return os.path.join(root, f) + return "FILE_NOT_FOUND" def collect_module_dependencies(file, directory, traversedDependencies): @@ -175,12 +176,15 @@ def collect_module_dependencies(file, directory, traversedDependencies): module_import_list = re.findall(r'(import|from)(?:\s*)\(?(\'(\.\/.*)\'|"(\.\/.*)")\)?', content) for result in list(set(module_import_list)): - specifier = result[2] if len(result[2]) != 0 else result[3] - if re.search(r'\S+_FIXTURE.js$', specifier): - dependency = search_dependency(specifier.lstrip('./'), directory) + specifier = (result[2] if len(result[2]) != 0 else result[3]).lstrip('./') + if os.path.basename(file) is not specifier: + dependency = search_dependency(specifier, directory) + if dependency == "FILE_NOT_FOUND": + continue + if dependency not in traversedDependencies: dependencies.extend(collect_module_dependencies(dependency, directory, - list(set(traversedDependencies)))) + list(set(traversedDependencies)))) dependencies.append(dependency) - return dependencies + return dependencies \ No newline at end of file -- Gitee