| # | 
 | # Licensed to the Apache Software Foundation (ASF) under one or more | 
 | # contributor license agreements.  See the NOTICE file distributed with | 
 | # this work for additional information regarding copyright ownership. | 
 | # The ASF licenses this file to You under the Apache License, Version 2.0 | 
 | # (the "License"); you may not use this file except in compliance with | 
 | # the License.  You may obtain a copy of the License at | 
 | # | 
 | #    http://www.apache.org/licenses/LICENSE-2.0 | 
 | # | 
 | # Unless required by applicable law or agreed to in writing, software | 
 | # distributed under the License is distributed on an "AS IS" BASIS, | 
 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
 | # See the License for the specific language governing permissions and | 
 | # limitations under the License. | 
 | # | 
 |  | 
 | [nosetests] | 
 | # Allow discovery of Python test files marked executable. | 
 | exe=True | 
 | verbosity=2 | 
 |  | 
 | # Creates an xml file compatible with standard XUnit XML format. | 
 | with-xunit=1 | 
 |  | 
 | # Configurations to control coverage.py. | 
 | [coverage:run] | 
 | branch = True | 
 | source = apache_beam | 
 | omit = | 
 |   # Omit auto-generated files by the protocol buffer compiler. | 
 |   apache_beam/portability/api/*_pb2.py | 
 |   apache_beam/portability/api/*_pb2_grpc.py | 
 |  | 
 | [coverage:report] | 
 | # Regexes for lines to exclude from consideration | 
 | exclude_lines = | 
 |   # Have to re-enable the standard pragma | 
 |   pragma: no cover | 
 |   abc.abstractmethod | 
 |  | 
 |   # Don't complain about missing debug-only code: | 
 |   def __repr__ | 
 |   if self\.debug | 
 |  | 
 |   # Don't complain if tests don't hit defensive assertion code: | 
 |   raise NotImplementedError | 
 |  | 
 |   # Don't complain if non-runnable code isn't run: | 
 |   if __name__ == .__main__.: | 
 |  | 
 | [coverage:xml] | 
 | output = target/site/cobertura/coverage.xml | 
 |  | 
 | [isort] | 
 | known_standard_library = dataclasses | 
 |  | 
 | [yapf] | 
 | indent_width = 2 | 
 | continuation_indent_width = 4 | 
 | column_limit = 80 | 
 | allow_split_before_dict_value = False | 
 | blank_line_before_module_docstring = True | 
 | coalesce_brackets = True | 
 | each_dict_entry_on_separate_line = True | 
 | split_all_top_level_comma_separated_values = True | 
 | split_arguments_when_comma_terminated = True | 
 | split_before_expression_after_opening_paren = True | 
 | split_before_first_argument = True | 
 | split_before_logical_operator = False | 
 | # Use this feature to keep type ignore comments on the correct line | 
 | i18n_comment = # type: ignore.* |