def test_filter_ignored_files(): d = utils.is_ignored_file("", "") assert not d d = utils.is_ignored_file("", "foo.log") assert d d = utils.is_ignored_file("", "bar.d.ts") assert d d = utils.is_ignored_file("", "bar.tar.gz") assert d d = utils.is_ignored_file("", "bar.java") assert not d d = utils.is_ignored_file("", "bar.min.js") assert d d = utils.is_ignored_file("", "bar.min.css") assert d d = utils.is_ignored_file("", ".babelrc.js") assert d d = utils.is_ignored_file("", ".eslintrc.js") assert d
def suppress_issues(issues): """Suppress issues based on the presence of certain tags and ignore logic :param issues: List of issues to be checked :return Filtered issues, Suppressed list """ suppress_list = [] filtered_list = [] supress_markers = config.get("suppress_markers", []) for issue in issues: suppressed = False issue_dict = issue_from_dict(issue).as_dict() rule_id = issue_dict.get("test_id") filename = issue_dict.get("filename") code = issue_dict.get("code", "").replace("\n", " ").replace("\t", " ") # Is this rule ignored globally? if rule_id in config.ignored_rules: suppressed = True # Is there an ignore marker if not suppressed and code: for marker in supress_markers: if marker in code: suppressed = True break if not suppressed and filename: if is_ignored_file(None, file_name=filename): suppressed = True else: for igdir in config.get("ignore_directories"): if filename.startswith(f"{igdir}/"): suppressed = True break if suppressed: suppress_list.append(issue) else: filtered_list.append(issue) return filtered_list, suppress_list