本文整理汇总了Python中webkitpy.layout_tests.models.test_expectations.TestExpectationParser.parse方法的典型用法代码示例。如果您正苦于以下问题:Python TestExpectationParser.parse方法的具体用法?Python TestExpectationParser.parse怎么用?Python TestExpectationParser.parse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类webkitpy.layout_tests.models.test_expectations.TestExpectationParser
的用法示例。
在下文中一共展示了TestExpectationParser.parse方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: GardeningExpectationsUpdater
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
class GardeningExpectationsUpdater(BugManager):
def __init__(self, tool, port):
self._converter = TestConfigurationConverter(port.all_test_configurations(), port.configuration_specifier_macros())
self._extrapolator = BuildCoverageExtrapolator(self._converter)
self._parser = TestExpectationParser(port, [], allow_rebaseline_modifier=False)
self._path_to_test_expectations_file = port.path_to_test_expectations_file()
self._tool = tool
def close_bug(self, bug_id, reference_bug_id=None):
# FIXME: Implement this properly.
pass
def create_bug(self):
return "BUG_NEW"
def update_expectations(self, failure_info_list):
expectation_lines = TestExpectationParser.tokenize_list(self._tool.filesystem.read_text_file(self._path_to_test_expectations_file))
for expectation_line in expectation_lines:
self._parser.parse(expectation_line)
editor = TestExpectationsEditor(expectation_lines, self)
updated_expectation_lines = []
# FIXME: Group failures by testName+failureTypeList.
for failure_info in failure_info_list:
expectation_set = set(filter(lambda expectation: expectation is not None,
map(TestExpectations.expectation_from_string, failure_info['failureTypeList'])))
assert(expectation_set)
test_name = failure_info['testName']
assert(test_name)
builder_name = failure_info['builderName']
affected_test_configuration_set = self._extrapolator.extrapolate_test_configurations(builder_name)
updated_expectation_lines.extend(editor.update_expectation(test_name, affected_test_configuration_set, expectation_set))
self._tool.filesystem.write_text_file(self._path_to_test_expectations_file, TestExpectationSerializer.list_to_string(expectation_lines, self._converter, reconstitute_only_these=updated_expectation_lines))
示例2: execute
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def execute(self, options, args, tool):
port = factory.get("chromium-win-win7") # FIXME: This should be selectable.
expectation_lines = TestExpectationParser.tokenize_list(port.test_expectations())
parser = TestExpectationParser(port, [], allow_rebaseline_modifier=False)
for expectation_line in expectation_lines:
parser.parse(expectation_line)
converter = TestConfigurationConverter(port.all_test_configurations(), port.configuration_specifier_macros())
tool.filesystem.write_text_file(port.path_to_test_expectations_file(), TestExpectationSerializer.list_to_string(expectation_lines, converter))
示例3: check_test_expectations
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def check_test_expectations(self, expectations_str, tests=None):
parser = TestExpectationParser(self._port_obj, tests, is_lint_mode=True)
expectations = parser.parse("expectations", expectations_str)
level = 5
for expectation_line in expectations:
for warning in expectation_line.warnings:
self._handle_style_error(expectation_line.line_numbers, "test/expectations", level, warning)
示例4: check_test_expectations
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def check_test_expectations(self, expectations_str, tests=None):
parser = TestExpectationParser(self._port_obj, tests, allow_rebaseline_modifier=False)
expectations = parser.parse('expectations', expectations_str)
level = 5
for expectation_line in expectations:
for warning in expectation_line.warnings:
self._handle_style_error(expectation_line.line_number, 'test/expectations', level, warning)
示例5: update_all_test_expectations_files
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def update_all_test_expectations_files(self, deleted_tests, renamed_tests):
"""Updates all test expectations files for tests that have been deleted or renamed."""
port = self.host.port_factory.get()
for path, file_contents in port.all_expectations_dict().iteritems():
parser = TestExpectationParser(port, all_tests=None, is_lint_mode=False)
expectation_lines = parser.parse(path, file_contents)
self._update_single_test_expectations_file(path, expectation_lines, deleted_tests, renamed_tests)
示例6: _init_paths_from_expectations
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def _init_paths_from_expectations(self, file_path):
if not self._filesystem.isfile(file_path):
_log.warning("Unable to read import expectation file: %s" % file_path)
return
parser = TestExpectationParser(self._host.port_factory.get(), (), False)
for line in parser.parse(file_path, self._filesystem.read_text_file(file_path)):
if "SKIP" in line.modifiers:
self.paths_to_skip.append(line.name)
elif "PASS" in line.expectations:
self.paths_to_import.append(line.name)
示例7: find_paths_to_skip
# 需要导入模块: from webkitpy.layout_tests.models.test_expectations import TestExpectationParser [as 别名]
# 或者: from webkitpy.layout_tests.models.test_expectations.TestExpectationParser import parse [as 别名]
def find_paths_to_skip(self):
if self.options.ignore_expectations:
return set()
paths_to_skip = set()
port = self.host.port_factory.get()
w3c_import_expectations_path = self.webkit_finder.path_from_webkit_base('LayoutTests', 'W3CImportExpectations')
w3c_import_expectations = self.filesystem.read_text_file(w3c_import_expectations_path)
parser = TestExpectationParser(port, full_test_list=(), is_lint_mode=False)
expectation_lines = parser.parse(w3c_import_expectations_path, w3c_import_expectations)
for line in expectation_lines:
if 'SKIP' in line.expectations:
if line.specifiers:
_log.warning("W3CImportExpectations:%s should not have any specifiers" % line.line_numbers)
continue
paths_to_skip.add(line.name)
return paths_to_skip