├── .github └── workflows │ ├── publish.yml │ └── tests.yml ├── .gitignore ├── .mega-linter.yml ├── .pre-commit-config.yaml ├── .pre-commit-hooks.yaml ├── .readthedocs.yml ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── docs ├── Makefile ├── make.bat ├── releasenotes │ ├── 2.6.0.rst │ ├── 2.7.0.rst │ ├── 2.8.0.rst │ ├── 2.8.1.rst │ ├── 3.0.0.rst │ ├── 3.1.0.rst │ ├── 3.1.1.rst │ ├── 3.2.0.rst │ ├── 3.2.1.rst │ ├── 4.0.0.rst │ ├── 4.0.1.rst │ ├── 4.1.0.rst │ ├── 4.1.1.rst │ ├── 4.2.0.rst │ ├── 4.2.1.rst │ ├── 4.2.2.rst │ ├── 5.0.0.rst │ ├── 5.0.1.rst │ ├── 5.0.2.rst │ ├── 5.0.3.rst │ ├── 5.0.4.rst │ ├── 5.1.0.rst │ ├── 5.2.0.rst │ ├── 5.3.0.rst │ ├── 5.4.0.rst │ ├── 5.5.0.rst │ ├── 5.6.0.rst │ ├── 5.7.0.rst │ ├── 5.8.0.rst │ ├── 6.0.0.rst │ ├── 6.0.1.rst │ ├── 6.0.2.rst │ ├── 6.0.3.rst │ ├── 6.0.4.rst │ ├── 6.1.0.rst │ ├── 6.1.1.rst │ ├── 6.2.0.rst │ ├── 6.3.0.rst │ └── 6.4.0.rst └── source │ ├── _static │ └── css │ │ └── custom.css │ ├── _templates │ └── sidebar │ │ └── brand.html │ ├── conf.py │ ├── configuration │ ├── configuration.rst │ └── file_discovery.rst │ ├── disablers.rst │ ├── formatters │ ├── formatters_list │ │ ├── AddMissingEnd.rst │ │ ├── AlignKeywordsSection.rst │ │ ├── AlignSettingsSection.rst │ │ ├── AlignTemplatedTestCases.rst │ │ ├── AlignTestCasesSection.rst │ │ ├── AlignVariablesSection.rst │ │ ├── DiscardEmptySections.rst │ │ ├── GenerateDocumentation.rst │ │ ├── IndentNestedKeywords.rst │ │ ├── InlineIf.rst │ │ ├── MergeAndOrderSections.rst │ │ ├── NormalizeAssignments.rst │ │ ├── NormalizeComments.rst │ │ ├── NormalizeNewLines.rst │ │ ├── NormalizeSectionHeaderName.rst │ │ ├── NormalizeSeparators.rst │ │ ├── NormalizeSettingName.rst │ │ ├── NormalizeTags.rst │ │ ├── OrderSettings.rst │ │ ├── OrderSettingsSection.rst │ │ ├── OrderTags.rst │ │ ├── RemoveEmptySettings.rst │ │ ├── RenameKeywords.rst │ │ ├── RenameTestCases.rst │ │ ├── RenameVariables.rst │ │ ├── ReplaceBreakContinue.rst │ │ ├── ReplaceEmptyValues.rst │ │ ├── ReplaceReturns.rst │ │ ├── ReplaceRunKeywordIf.rst │ │ ├── ReplaceWithVAR.rst │ │ ├── SmartSortKeywords.rst │ │ ├── SplitTooLongLine.rst │ │ ├── Translate.rst │ │ ├── disabled_hint.txt │ │ ├── enabled_hint.txt │ │ └── index.rst │ └── skip_formatting.rst │ ├── images │ ├── github_code_scanning1.png │ ├── github_code_scanning2.png │ ├── robocop.ico │ ├── robocop_external_tool.jpg │ ├── robocop_logo.png │ └── robocop_logo_small.png │ ├── index.rst │ ├── integrations.rst │ ├── overview │ ├── formatter.rst │ ├── linter.rst │ └── overview.rst │ ├── reports.rst │ ├── rules │ ├── external_rules.rst │ ├── rules_basics.rst │ └── rules_list.rst │ └── rules_metadata.py ├── noxfile.py ├── pyproject.toml ├── src └── robocop │ ├── __init__.py │ ├── __main__.py │ ├── config.py │ ├── errors.py │ ├── files.py │ ├── formatter │ ├── __init__.py │ ├── disablers.py │ ├── formatters │ │ ├── AddMissingEnd.py │ │ ├── AlignKeywordsSection.py │ │ ├── AlignSettingsSection.py │ │ ├── AlignTemplatedTestCases.py │ │ ├── AlignTestCasesSection.py │ │ ├── AlignVariablesSection.py │ │ ├── DiscardEmptySections.py │ │ ├── GenerateDocumentation.py │ │ ├── IndentNestedKeywords.py │ │ ├── InlineIf.py │ │ ├── MergeAndOrderSections.py │ │ ├── NormalizeAssignments.py │ │ ├── NormalizeComments.py │ │ ├── NormalizeNewLines.py │ │ ├── NormalizeSectionHeaderName.py │ │ ├── NormalizeSeparators.py │ │ ├── NormalizeSettingName.py │ │ ├── NormalizeTags.py │ │ ├── OrderSettings.py │ │ ├── OrderSettingsSection.py │ │ ├── OrderTags.py │ │ ├── RemoveEmptySettings.py │ │ ├── RenameKeywords.py │ │ ├── RenameTestCases.py │ │ ├── RenameVariables.py │ │ ├── ReplaceBreakContinue.py │ │ ├── ReplaceEmptyValues.py │ │ ├── ReplaceReturns.py │ │ ├── ReplaceRunKeywordIf.py │ │ ├── ReplaceWithVAR.py │ │ ├── SmartSortKeywords.py │ │ ├── SplitTooLongLine.py │ │ ├── Translate.py │ │ ├── __init__.py │ │ └── aligners_core.py │ ├── runner.py │ ├── skip.py │ └── utils │ │ ├── misc.py │ │ └── variable_matcher.py │ ├── linter │ ├── __init__.py │ ├── diagnostics.py │ ├── reports │ │ ├── __init__.py │ │ ├── file_stats_report.py │ │ ├── gitlab.py │ │ ├── json_report.py │ │ ├── print_issues.py │ │ ├── return_status_report.py │ │ ├── robocop_version_report.py │ │ ├── rules_by_id_report.py │ │ ├── rules_by_severity_report.py │ │ ├── sarif.py │ │ ├── sonarqube.py │ │ ├── text_file.py │ │ ├── time_taken_report.py │ │ └── timestamp_report.py │ ├── rules │ │ ├── __init__.py │ │ ├── arguments.py │ │ ├── comments.py │ │ ├── deprecated.py │ │ ├── documentation.py │ │ ├── duplications.py │ │ ├── errors.py │ │ ├── imports.py │ │ ├── keywords.py │ │ ├── lengths.py │ │ ├── misc.py │ │ ├── naming.py │ │ ├── order.py │ │ ├── spacing.py │ │ ├── tags.py │ │ ├── usage.py │ │ ├── variables.py │ │ └── whitespace.py │ ├── runner.py │ ├── sonar_qube.py │ └── utils │ │ ├── __init__.py │ │ ├── disablers.py │ │ ├── file_types.py │ │ ├── misc.py │ │ ├── variable_matcher.py │ │ └── version_matching.py │ ├── migrate_config.py │ ├── parsing │ └── run_keywords.py │ └── run.py ├── tests ├── __init__.py ├── config │ ├── __init__.py │ ├── test_config_manager.py │ ├── test_data │ │ ├── cli_config │ │ │ └── pyproject.toml │ │ ├── config_with_all_options │ │ │ ├── other_config.toml │ │ │ ├── pyproject.toml │ │ │ └── test.robot │ │ ├── config_with_all_options_hyphens │ │ │ ├── pyproject.toml │ │ │ └── test.robot │ │ ├── filter_paths │ │ │ ├── file.py │ │ │ └── file.robot │ │ ├── gitignore │ │ │ ├── .gitignore │ │ │ ├── file.robot │ │ │ ├── file_ignored.robot │ │ │ └── ignored │ │ │ │ └── file.robot │ │ ├── invalid_config │ │ │ └── invalid.toml │ │ ├── invalid_option_values │ │ │ └── invalid_target_version.toml │ │ ├── multiple_files_one_config │ │ │ ├── resources │ │ │ │ └── test.resource │ │ │ ├── robocop.toml │ │ │ └── test_suites │ │ │ │ └── test.robot │ │ ├── no_config │ │ │ ├── file1.robot │ │ │ └── subdir │ │ │ │ ├── dontparse.py │ │ │ │ ├── file2.robot │ │ │ │ └── file3.resource │ │ ├── non_robot_files │ │ │ └── log.html │ │ ├── old_config │ │ │ └── pyproject.toml │ │ ├── one_config_root │ │ │ ├── file1.robot │ │ │ ├── pyproject.toml │ │ │ └── subdir │ │ │ │ ├── dontparse.py │ │ │ │ ├── file2.robot │ │ │ │ └── file3.resource │ │ ├── one_config_subdir │ │ │ ├── file1.robot │ │ │ └── subdir │ │ │ │ ├── dontparse.py │ │ │ │ ├── file2.robot │ │ │ │ ├── file3.resource │ │ │ │ └── pyproject.toml │ │ ├── relative_paths │ │ │ ├── custom_formatters │ │ │ │ └── __init__.py │ │ │ ├── custom_rules │ │ │ │ └── CustomRules.py │ │ │ └── pyproject.toml │ │ ├── robot_toml_with_reports │ │ │ ├── robot.toml │ │ │ └── test.robot │ │ ├── simple │ │ │ ├── test.robot │ │ │ └── test2.robot │ │ └── two_config │ │ │ ├── excluded_dir │ │ │ ├── file2.robot │ │ │ ├── file3.resource │ │ │ └── pyproject.toml │ │ │ ├── file1.robot │ │ │ ├── pyproject.toml │ │ │ └── subdir │ │ │ ├── dontparse.py │ │ │ ├── file2.robot │ │ │ ├── file3.resource │ │ │ └── pyproject.toml │ └── test_formatter_config.py ├── conftest.py ├── formatter │ ├── __init__.py │ ├── formatters │ │ ├── AddMissingEnd │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── test.robot │ │ │ │ ├── test_5.robot │ │ │ │ └── test_selected.robot │ │ │ ├── source │ │ │ │ ├── test.robot │ │ │ │ ├── test_5.robot │ │ │ │ └── test_5_disablers.robot │ │ │ └── test_formatter.py │ │ ├── AlignKeywordsSection │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── align_settings_separately.robot │ │ │ │ ├── blocks.robot │ │ │ │ ├── blocks_auto.robot │ │ │ │ ├── blocks_auto_0.robot │ │ │ │ ├── blocks_rf5.robot │ │ │ │ ├── compact_overflow_last_0.robot │ │ │ │ ├── documentation_auto_align_first_col.robot │ │ │ │ ├── documentation_auto_skip.robot │ │ │ │ ├── documentation_fixed_align_first_col.robot │ │ │ │ ├── documentation_fixed_skip.robot │ │ │ │ ├── non_ascii_spaces.robot │ │ │ │ ├── one_column.robot │ │ │ │ ├── overflow_first_line.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── simple_auto_ignore_line_0.robot │ │ │ │ ├── simple_auto_ignore_line_24_0_24.robot │ │ │ │ ├── simple_auto_ignore_line_24_24_24.robot │ │ │ │ ├── simple_auto_ignore_line_24_40_24.robot │ │ │ │ ├── simple_auto_ignore_line_4_4_4.robot │ │ │ │ ├── simple_auto_ignore_rest_0.robot │ │ │ │ ├── simple_auto_ignore_rest_24_0_24.robot │ │ │ │ ├── simple_auto_ignore_rest_24_24_24.robot │ │ │ │ ├── simple_auto_ignore_rest_24_40_24.robot │ │ │ │ ├── simple_auto_ignore_rest_4_4_4.robot │ │ │ │ ├── simple_auto_overflow_0.robot │ │ │ │ ├── simple_auto_overflow_24_0_24.robot │ │ │ │ ├── simple_auto_overflow_24_24_24.robot │ │ │ │ ├── simple_auto_overflow_24_40_24.robot │ │ │ │ ├── simple_auto_overflow_4_4_4.robot │ │ │ │ ├── simple_fixed_ignore_line_0.robot │ │ │ │ ├── simple_fixed_ignore_line_24_0_24.robot │ │ │ │ ├── simple_fixed_ignore_line_24_24_24.robot │ │ │ │ ├── simple_fixed_ignore_line_24_40_24.robot │ │ │ │ ├── simple_fixed_ignore_line_4_4_4.robot │ │ │ │ ├── simple_fixed_ignore_rest_0.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_0_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_24_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_40_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_4_4_4.robot │ │ │ │ ├── simple_fixed_overflow_0.robot │ │ │ │ ├── simple_fixed_overflow_24_0_24.robot │ │ │ │ ├── simple_fixed_overflow_24_24_24.robot │ │ │ │ ├── simple_fixed_overflow_24_40_24.robot │ │ │ │ ├── simple_fixed_overflow_4_4_4.robot │ │ │ │ ├── skip_keywords.robot │ │ │ │ ├── skip_return_values.robot │ │ │ │ ├── skip_settings.robot │ │ │ │ ├── too_long_line.robot │ │ │ │ ├── too_long_line_disablers.robot │ │ │ │ ├── too_long_token_counter_compact_overflow.robot │ │ │ │ ├── too_long_token_counter_ignore_line.robot │ │ │ │ ├── too_long_token_counter_ignore_rest.robot │ │ │ │ └── too_long_token_counter_overflow.robot │ │ │ ├── source │ │ │ │ ├── align_settings_separately.robot │ │ │ │ ├── blocks.robot │ │ │ │ ├── blocks_rf5.robot │ │ │ │ ├── compact_overflow_last_0.robot │ │ │ │ ├── documentation.robot │ │ │ │ ├── error_node.robot │ │ │ │ ├── non_ascii_spaces.robot │ │ │ │ ├── one_column.robot │ │ │ │ ├── overflow_first_line.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── simple.robot │ │ │ │ ├── skip_keywords.robot │ │ │ │ ├── skip_return_values.robot │ │ │ │ ├── too_long_line.robot │ │ │ │ ├── too_long_line_disablers.robot │ │ │ │ └── too_long_token_counter.robot │ │ │ └── test_formatter.py │ │ ├── AlignSettingsSection │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── all_columns.robot │ │ │ │ ├── all_columns_fixed.robot │ │ │ │ ├── argument_indents.robot │ │ │ │ ├── blank_line_and_whitespace.robot │ │ │ │ ├── blank_line_doc.robot │ │ │ │ ├── empty_lines.robot │ │ │ │ ├── multiline_keywords.robot │ │ │ │ ├── multiline_keywords_0indent.robot │ │ │ │ ├── multiline_keywords_20indent.robot │ │ │ │ ├── multiline_keywords_2indent.robot │ │ │ │ ├── multiline_keywords_all_col.robot │ │ │ │ ├── selected_part.robot │ │ │ │ ├── selected_whole.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_disablers.robot │ │ │ │ ├── test_fixed.robot │ │ │ │ ├── test_min_width.robot │ │ │ │ ├── test_min_width_50_width.robot │ │ │ │ ├── test_skip_documentation.robot │ │ │ │ └── three_columns.robot │ │ │ ├── source │ │ │ │ ├── argument_indents.robot │ │ │ │ ├── blank_line_and_whitespace.robot │ │ │ │ ├── blank_line_doc.robot │ │ │ │ ├── empty_lines.robot │ │ │ │ ├── multiline_keywords.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_disablers.robot │ │ │ └── test_formatter.py │ │ ├── AlignTemplatedTestCases │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── no_header_col.robot │ │ │ │ ├── partly_templated.robot │ │ │ │ ├── tags_settings.robot │ │ │ │ ├── templated_for_loops.robot │ │ │ │ ├── templated_for_loops_and_without.robot │ │ │ │ ├── templated_for_loops_and_without_fixed.robot │ │ │ │ ├── templated_for_loops_header_cols.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_fixed.robot │ │ │ │ └── with_settings.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty_line.robot │ │ │ │ ├── for_loops.robot │ │ │ │ ├── no_header_col.robot │ │ │ │ ├── partly_templated.robot │ │ │ │ ├── tags_settings.robot │ │ │ │ ├── templated_for_loops.robot │ │ │ │ ├── templated_for_loops_and_without.robot │ │ │ │ ├── templated_for_loops_header_cols.robot │ │ │ │ ├── test.robot │ │ │ │ └── with_settings.robot │ │ │ └── test_formatter.py │ │ ├── AlignTestCasesSection │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── blocks.robot │ │ │ │ ├── blocks_auto.robot │ │ │ │ ├── blocks_auto_0.robot │ │ │ │ ├── blocks_rf5.robot │ │ │ │ ├── compact_overflow_bug.robot │ │ │ │ ├── compact_overflow_last_0.robot │ │ │ │ ├── documentation_auto_align_first_col.robot │ │ │ │ ├── documentation_auto_skip.robot │ │ │ │ ├── documentation_fixed_align_first_col.robot │ │ │ │ ├── documentation_fixed_skip.robot │ │ │ │ ├── dynamic_compact_overflow.robot │ │ │ │ ├── dynamic_compact_overflow_limit_1.robot │ │ │ │ ├── non_ascii_spaces.robot │ │ │ │ ├── one_column.robot │ │ │ │ ├── overflow_first_line.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── settings_auto_separate_settings.robot │ │ │ │ ├── simple_auto_ignore_line_0.robot │ │ │ │ ├── simple_auto_ignore_line_24_0_24.robot │ │ │ │ ├── simple_auto_ignore_line_24_24_24.robot │ │ │ │ ├── simple_auto_ignore_line_24_40_24.robot │ │ │ │ ├── simple_auto_ignore_line_4_4_4.robot │ │ │ │ ├── simple_auto_ignore_rest_0.robot │ │ │ │ ├── simple_auto_ignore_rest_24_0_24.robot │ │ │ │ ├── simple_auto_ignore_rest_24_24_24.robot │ │ │ │ ├── simple_auto_ignore_rest_24_40_24.robot │ │ │ │ ├── simple_auto_ignore_rest_4_4_4.robot │ │ │ │ ├── simple_auto_overflow_0.robot │ │ │ │ ├── simple_auto_overflow_24_0_24.robot │ │ │ │ ├── simple_auto_overflow_24_24_24.robot │ │ │ │ ├── simple_auto_overflow_24_40_24.robot │ │ │ │ ├── simple_auto_overflow_4_4_4.robot │ │ │ │ ├── simple_fixed_ignore_line_0.robot │ │ │ │ ├── simple_fixed_ignore_line_24_0_24.robot │ │ │ │ ├── simple_fixed_ignore_line_24_24_24.robot │ │ │ │ ├── simple_fixed_ignore_line_24_40_24.robot │ │ │ │ ├── simple_fixed_ignore_line_4_4_4.robot │ │ │ │ ├── simple_fixed_ignore_rest_0.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_0_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_24_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_24_40_24.robot │ │ │ │ ├── simple_fixed_ignore_rest_4_4_4.robot │ │ │ │ ├── simple_fixed_overflow_0.robot │ │ │ │ ├── simple_fixed_overflow_24_0_24.robot │ │ │ │ ├── simple_fixed_overflow_24_24_24.robot │ │ │ │ ├── simple_fixed_overflow_24_40_24.robot │ │ │ │ ├── simple_fixed_overflow_4_4_4.robot │ │ │ │ ├── skip_keywords.robot │ │ │ │ ├── skip_return_values_overflow.robot │ │ │ │ ├── templated_with_setting.robot │ │ │ │ ├── templated_with_settings_auto.robot │ │ │ │ ├── too_long_token_counter_compact_overflow.robot │ │ │ │ ├── too_long_token_counter_ignore_line.robot │ │ │ │ ├── too_long_token_counter_ignore_rest.robot │ │ │ │ └── too_long_token_counter_overflow.robot │ │ │ ├── source │ │ │ │ ├── blocks.robot │ │ │ │ ├── blocks_rf5.robot │ │ │ │ ├── compact_overflow_bug.robot │ │ │ │ ├── compact_overflow_last_0.robot │ │ │ │ ├── documentation.robot │ │ │ │ ├── dynamic_compact_overflow.robot │ │ │ │ ├── dynamic_compact_overflow_limit_1.robot │ │ │ │ ├── non_ascii_spaces.robot │ │ │ │ ├── one_column.robot │ │ │ │ ├── overflow_first_line.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── simple.robot │ │ │ │ ├── skip_keywords.robot │ │ │ │ ├── skip_return_values_overflow.robot │ │ │ │ ├── templated.robot │ │ │ │ ├── templated_with_setting.robot │ │ │ │ └── too_long_token_counter.robot │ │ │ └── test_formatter.py │ │ ├── AlignVariablesSection │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── align_selected_part.robot │ │ │ │ ├── align_selected_skip.robot │ │ │ │ ├── align_selected_whole.robot │ │ │ │ ├── all_columns.robot │ │ │ │ ├── all_columns_fixed.robot │ │ │ │ ├── long_comment.robot │ │ │ │ ├── multiline_skip.robot │ │ │ │ ├── multiline_with_blank.robot │ │ │ │ ├── optional_equal_sign.robot │ │ │ │ ├── single_var.robot │ │ │ │ ├── tests.robot │ │ │ │ ├── tests_2space_sep.robot │ │ │ │ ├── tests_disablers.robot │ │ │ │ ├── tests_fixed.robot │ │ │ │ ├── tests_fixed_one.robot │ │ │ │ ├── tests_min_width.robot │ │ │ │ ├── tests_min_width_50_width.robot │ │ │ │ ├── tests_skip.robot │ │ │ │ └── three_columns.robot │ │ │ ├── source │ │ │ │ ├── align_selected.robot │ │ │ │ ├── long_comment.robot │ │ │ │ ├── multiline_skip.robot │ │ │ │ ├── multiline_with_blank.robot │ │ │ │ ├── optional_equal_sign.robot │ │ │ │ ├── single_var.robot │ │ │ │ ├── tests.robot │ │ │ │ └── tests_disablers.robot │ │ │ └── test_formatter.py │ │ ├── DiscardEmptySections │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── removes_empty_sections.robot │ │ │ │ ├── removes_empty_sections_except_comments.robot │ │ │ │ ├── removes_empty_sections_skip_variables.robot │ │ │ │ └── removes_selected_empty_section.robot │ │ │ ├── source │ │ │ │ ├── removes_empty_sections.robot │ │ │ │ └── removes_empty_sections_disablers.robot │ │ │ └── test_formatter.py │ │ ├── ExternalTransformer │ │ │ ├── ExternalDisabledTransformer.py │ │ │ ├── ExternalTransformer.py │ │ │ ├── ExternalTransformers │ │ │ │ ├── __init__.py │ │ │ │ └── custom_class.py │ │ │ ├── ExternalTransformersOrdered │ │ │ │ ├── __init__.py │ │ │ │ ├── custom_class.py │ │ │ │ └── custom_class2.py │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── tests.robot │ │ │ │ ├── tests_lowercase.robot │ │ │ │ ├── tests_module_load.robot │ │ │ │ ├── tests_module_load_configure.robot │ │ │ │ ├── tests_module_transform.robot │ │ │ │ ├── tests_module_transform_configure.robot │ │ │ │ ├── tests_only_defaults.robot │ │ │ │ ├── tests_with_defaults.robot │ │ │ │ └── tests_with_defaults_lowercase.robot │ │ │ ├── source │ │ │ │ └── tests.robot │ │ │ └── test_formatter.py │ │ ├── GenerateDocumentation │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── overwrite.robot │ │ │ │ ├── template_with_defaults.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rf4.robot │ │ │ ├── source │ │ │ │ ├── invalid_template.jinja │ │ │ │ ├── template_with_defaults.txt │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── IndentNestedKeywords │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── comments.robot │ │ │ │ ├── indent_and_2spaces_4cont_indent.robot │ │ │ │ ├── keep_in_line.robot │ │ │ │ ├── run_keyword.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── split_and_indent.robot │ │ │ │ └── too_long_line.robot │ │ │ ├── source │ │ │ │ ├── comments.robot │ │ │ │ ├── run_keyword.robot │ │ │ │ ├── settings.robot │ │ │ │ └── too_long_line.robot │ │ │ └── test_formatter.py │ │ ├── InlineIf │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── one_if_2spaces.robot │ │ │ │ ├── one_if_4spaces.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_disablers.robot │ │ │ │ └── test_skip_else.robot │ │ │ ├── source │ │ │ │ ├── invalid_if.robot │ │ │ │ ├── invalid_inline_if.robot │ │ │ │ ├── one_if.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_disablers.robot │ │ │ └── test_formatter.py │ │ ├── MergeAndOrderSections │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── both_test_and_task.robot │ │ │ │ ├── both_test_and_task_rf6.robot │ │ │ │ ├── comments_section.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty_section.robot │ │ │ │ ├── multiple_header_comments.robot │ │ │ │ ├── nested_block_for.robot │ │ │ │ ├── nested_blocks.robot │ │ │ │ ├── order_settings_comments_keywords_variables_testcases.robot │ │ │ │ ├── tests.robot │ │ │ │ ├── tests_without_comment_section.robot │ │ │ │ ├── too_few_calls_in_keyword.robot │ │ │ │ └── translated.robot │ │ │ ├── source │ │ │ │ ├── both_test_and_task.robot │ │ │ │ ├── comments_section.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty_section.robot │ │ │ │ ├── inline_if.robot │ │ │ │ ├── invalid.robot │ │ │ │ ├── multiple_header_comments.robot │ │ │ │ ├── nested_block_for.robot │ │ │ │ ├── nested_blocks.robot │ │ │ │ ├── order.robot │ │ │ │ ├── parsing_error.robot │ │ │ │ ├── tests.robot │ │ │ │ ├── too_few_calls_in_keyword.robot │ │ │ │ └── translated.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeAssignments │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── common_equal_sign.robot │ │ │ │ ├── common_equal_sign_variables.robot │ │ │ │ ├── common_remove.robot │ │ │ │ ├── common_remove_variables.robot │ │ │ │ ├── common_space_and_equal_sign.robot │ │ │ │ ├── common_space_and_equal_sign_variables.robot │ │ │ │ ├── equal_sign.robot │ │ │ │ ├── remove.robot │ │ │ │ ├── space_and_equal_sign.robot │ │ │ │ ├── var_autodetect.robot │ │ │ │ ├── var_equal_sign.robot │ │ │ │ ├── var_remove.robot │ │ │ │ └── var_space_and_equal_sign.robot │ │ │ ├── source │ │ │ │ ├── common_equal_sign.robot │ │ │ │ ├── common_remove.robot │ │ │ │ ├── common_space_and_equal_sign.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── most_common_attr.robot │ │ │ │ ├── tests.robot │ │ │ │ └── var.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeComments │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ └── test.robot │ │ │ ├── source │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeNewLines │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── blocks.robot │ │ │ │ ├── consecutive_empty_lines_0line.robot │ │ │ │ ├── consecutive_empty_lines_1line.robot │ │ │ │ ├── consecutive_empty_lines_2line.robot │ │ │ │ ├── disablers_selected.robot │ │ │ │ ├── inline_if.robot │ │ │ │ ├── language_header_0empty.robot │ │ │ │ ├── language_header_2empty.robot │ │ │ │ ├── language_header_and_comments.robot │ │ │ │ ├── multiline.robot │ │ │ │ ├── templated_tests.robot │ │ │ │ ├── templated_tests_with_1_line.robot │ │ │ │ ├── test_case_last.robot │ │ │ │ ├── tests.robot │ │ │ │ ├── tests_three_lines_section.robot │ │ │ │ └── tests_two_lines_keywords.robot │ │ │ ├── source │ │ │ │ ├── blocks.robot │ │ │ │ ├── consecutive_empty_lines.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── disablers_selected.robot │ │ │ │ ├── inline_if_0_lines.robot │ │ │ │ ├── inline_if_1_lines.robot │ │ │ │ ├── inline_if_2_lines.robot │ │ │ │ ├── language_header_0empty.robot │ │ │ │ ├── language_header_2empty.robot │ │ │ │ ├── language_header_5empty.robot │ │ │ │ ├── language_header_and_comments.robot │ │ │ │ ├── multiline.robot │ │ │ │ ├── templated_tests.robot │ │ │ │ ├── test_case_last_0_lines.robot │ │ │ │ ├── test_case_last_1_lines.robot │ │ │ │ └── tests.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeSectionHeaderName │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── selected.robot │ │ │ │ ├── task.robot │ │ │ │ ├── task2.robot │ │ │ │ ├── tests.robot │ │ │ │ ├── translated.robot │ │ │ │ └── uppercase.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── task.robot │ │ │ │ ├── task2.robot │ │ │ │ ├── tests.robot │ │ │ │ └── translated.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeSeparators │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── bug390.robot │ │ │ │ ├── comments_skip_block_comments.robot │ │ │ │ ├── comments_skip_comments.robot │ │ │ │ ├── cont_indent_align_new_line.robot │ │ │ │ ├── continuation_indent.robot │ │ │ │ ├── flatten.robot │ │ │ │ ├── flatten_rf4.robot │ │ │ │ ├── inline_if_2indent_2spaces.robot │ │ │ │ ├── inline_if_2indent_4spaces.robot │ │ │ │ ├── inline_if_4indent_2spaces.robot │ │ │ │ ├── inline_if_4indent_4spaces.robot │ │ │ │ ├── inline_if_flatten.robot │ │ │ │ ├── pipes.robot │ │ │ │ ├── rf5_syntax.robot │ │ │ │ ├── settings_variables_testcases.robot │ │ │ │ ├── skip_documentation.robot │ │ │ │ ├── skip_none.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_8spaces.robot │ │ │ │ ├── test_skip_keyword.robot │ │ │ │ └── testcases_keywords.robot │ │ │ ├── source │ │ │ │ ├── bug390.robot │ │ │ │ ├── comments.robot │ │ │ │ ├── continuation_indent.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── disablers2.robot │ │ │ │ ├── disablers3.robot │ │ │ │ ├── disablers4.robot │ │ │ │ ├── flatten.robot │ │ │ │ ├── inline_if.robot │ │ │ │ ├── pipes.robot │ │ │ │ ├── rf5_syntax.robot │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeSettingName │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── rf6.robot │ │ │ │ ├── selected.robot │ │ │ │ ├── tests.robot │ │ │ │ └── translated.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── rf6.robot │ │ │ │ ├── tests.robot │ │ │ │ └── translated.robot │ │ │ └── test_formatter.py │ │ ├── NormalizeTags │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── duplicates.robot │ │ │ │ ├── lowercase.robot │ │ │ │ ├── preserve_format_default.robot │ │ │ │ ├── preserve_format_enabled.robot │ │ │ │ ├── spacing_2indent_2spaces.robot │ │ │ │ ├── spacing_2indent_4spaces.robot │ │ │ │ ├── spacing_4indent_2spaces.robot │ │ │ │ ├── spacing_4indent_4spaces.robot │ │ │ │ ├── titlecase.robot │ │ │ │ ├── uppercase.robot │ │ │ │ ├── variables_in_tags_lowercase.robot │ │ │ │ ├── variables_in_tags_titlecase.robot │ │ │ │ └── variables_in_tags_uppercase.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── disablers2.robot │ │ │ │ ├── disablers3.robot │ │ │ │ ├── disablers4.robot │ │ │ │ ├── duplicates.robot │ │ │ │ ├── preserve_format.robot │ │ │ │ ├── rf6.robot │ │ │ │ ├── spacing.robot │ │ │ │ ├── tests.robot │ │ │ │ └── variables_in_tags.robot │ │ │ └── test_formatter.py │ │ ├── OrderSettings │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── custom_order_all_end.robot │ │ │ │ ├── custom_order_all_end_pre_rf7.robot │ │ │ │ ├── custom_order_default.robot │ │ │ │ ├── custom_order_default_pre_rf7.robot │ │ │ │ ├── custom_order_without_test_teardown.robot │ │ │ │ ├── custom_order_without_test_teardown_pre_rf7.robot │ │ │ │ ├── stick_comments.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_pre_rf7.robot │ │ │ │ └── translated.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── stick_comments.robot │ │ │ │ ├── test.robot │ │ │ │ └── translated.robot │ │ │ └── test_formatter.py │ │ ├── OrderSettingsSection │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── last_section.robot │ │ │ │ ├── missing_group.robot │ │ │ │ ├── parsing_error.robot │ │ │ │ ├── remote_library.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_0_newline.robot │ │ │ │ ├── test_2_newline.robot │ │ │ │ ├── test_empty_group_order.robot │ │ │ │ ├── test_group_order.robot │ │ │ │ ├── test_group_order_import_ordered.robot │ │ │ │ ├── test_missing_group_from_param.robot │ │ │ │ ├── test_resource_metadata_first.robot │ │ │ │ └── test_tags.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── just_comment.robot │ │ │ │ ├── last_section.robot │ │ │ │ ├── missing_group.robot │ │ │ │ ├── parsing_error.robot │ │ │ │ ├── remote_library.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_tags.robot │ │ │ └── test_formatter.py │ │ ├── OrderTags │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── case_insensitive.robot │ │ │ │ ├── case_insensitive_reverse.robot │ │ │ │ ├── case_sensitive.robot │ │ │ │ ├── case_sensitive_reverse.robot │ │ │ │ ├── default.robot │ │ │ │ ├── default_tags_false.robot │ │ │ │ ├── force_tags_false.robot │ │ │ │ └── test_tags.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── test_tags.robot │ │ │ │ └── tests.robot │ │ │ └── test_formatter.py │ │ ├── RemoveEmptySettings │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── empty_always_more_explicit.robot │ │ │ │ ├── empty_always_no_explicit.robot │ │ │ │ ├── empty_overwritten_ok_more_explicit.robot │ │ │ │ ├── empty_overwritten_ok_no_explicit.robot │ │ │ │ ├── overwritten_always_more_explicit.robot │ │ │ │ ├── overwritten_always_no_explicit.robot │ │ │ │ ├── overwritten_overwritten_ok_more_explicit.robot │ │ │ │ └── overwritten_overwritten_ok_no_explicit.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty.robot │ │ │ │ └── overwritten.robot │ │ │ └── test_formatter.py │ │ ├── RenameKeywords │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── bug537_538.robot │ │ │ │ ├── capitalize_first.robot │ │ │ │ ├── embedded_variables.robot │ │ │ │ ├── library_embedded_var_pattern.robot │ │ │ │ ├── no_title_case.robot │ │ │ │ ├── rename_pattern_partial.robot │ │ │ │ ├── rename_pattern_whole.robot │ │ │ │ ├── run_keywords.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_transform_library.robot │ │ │ │ ├── with_library_name.robot │ │ │ │ ├── with_library_name_transform.robot │ │ │ │ └── with_underscores.robot │ │ │ ├── source │ │ │ │ ├── bug537_538.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── embedded_variables.robot │ │ │ │ ├── library_embedded_var_pattern.robot │ │ │ │ ├── no_title_case.robot │ │ │ │ ├── run_keywords.robot │ │ │ │ ├── test.robot │ │ │ │ └── with_library_name.robot │ │ │ └── test_formatter.py │ │ ├── RenameTestCases │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── replace_pattern_empty.robot │ │ │ │ ├── replace_pattern_placeholder.robot │ │ │ │ ├── replace_pattern_special_chars.robot │ │ │ │ ├── selected.robot │ │ │ │ ├── test.robot │ │ │ │ └── upper_case.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty_test_name.robot │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── RenameVariables │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── configure_ignore_vars.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── equal_sign_in_section.robot │ │ │ │ ├── excluded_vars.robot │ │ │ │ ├── if_while_conditions.robot │ │ │ │ ├── inline_if.robot │ │ │ │ ├── math_operations.robot │ │ │ │ ├── return_and_set_global.robot │ │ │ │ ├── template_arguments.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_ignore_camel_case.robot │ │ │ │ ├── test_ignore_settings_case.robot │ │ │ │ ├── test_ignore_unknown.robot │ │ │ │ ├── test_ignore_var_separator.robot │ │ │ │ ├── test_lower.robot │ │ │ │ ├── test_lower_with_nested.robot │ │ │ │ ├── test_separator_underscore.robot │ │ │ │ ├── test_template.robot │ │ │ │ ├── try_except.robot │ │ │ │ └── variable_type_conversion.robot │ │ │ ├── source │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── equal_sign_in_section.robot │ │ │ │ ├── excluded_vars.robot │ │ │ │ ├── if_while_conditions.robot │ │ │ │ ├── inline_if.robot │ │ │ │ ├── math_operations.robot │ │ │ │ ├── return_and_set_global.robot │ │ │ │ ├── template_arguments.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_template.robot │ │ │ │ ├── try_except.robot │ │ │ │ └── variable_type_conversion.robot │ │ │ └── test_formatter.py │ │ ├── ReplaceBreakContinue │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ └── test.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── errors.robot │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── ReplaceEmptyValues │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ └── test.robot │ │ │ ├── source │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── ReplaceReturns │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── return_from_keyword.robot │ │ │ │ ├── return_from_keyword_if.robot │ │ │ │ ├── return_from_keyword_if_selected.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_selected.robot │ │ │ ├── source │ │ │ │ ├── errors.robot │ │ │ │ ├── replace_returns_disablers.robot │ │ │ │ ├── return_from_keyword.robot │ │ │ │ ├── return_from_keyword_if.robot │ │ │ │ ├── run_keyword_and_return.robot │ │ │ │ ├── run_keyword_and_return_if.robot │ │ │ │ └── test.robot │ │ │ └── test_formatter.py │ │ ├── ReplaceRunKeywordIf │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── configure_whitespace.robot │ │ │ │ ├── invalid_data.robot │ │ │ │ ├── keyword_name_in_var.robot │ │ │ │ ├── set_variable_workaround.robot │ │ │ │ ├── tests.robot │ │ │ │ └── tests_selected.robot │ │ │ ├── source │ │ │ │ ├── configure_whitespace.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── golden.robot │ │ │ │ ├── invalid_data.robot │ │ │ │ ├── keyword_name_in_var.robot │ │ │ │ ├── set_variable_workaround.robot │ │ │ │ └── tests.robot │ │ │ └── test_formatter.py │ │ ├── ReplaceWithVAR │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── assignment_char.robot │ │ │ │ ├── explicit_local.robot │ │ │ │ ├── replace_catenate_false.robot │ │ │ │ ├── replace_create_dictionary_false.robot │ │ │ │ ├── replace_create_list_false.robot │ │ │ │ ├── replace_set_variable_if_false.robot │ │ │ │ ├── test.robot │ │ │ │ └── too_long.robot │ │ │ ├── source │ │ │ │ ├── assignment_char.robot │ │ │ │ ├── invalid_inline_if.robot │ │ │ │ ├── test.robot │ │ │ │ └── too_long.robot │ │ │ └── test_formatter.py │ │ ├── SmartSortKeywords │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── multiple_sections.robot │ │ │ │ ├── sort_.robot │ │ │ │ ├── sort_ci.robot │ │ │ │ ├── sort_ci_ilu.robot │ │ │ │ ├── sort_ci_ilu_iou.robot │ │ │ │ ├── sort_ci_iou.robot │ │ │ │ ├── sort_ilu.robot │ │ │ │ ├── sort_ilu_iou.robot │ │ │ │ └── sort_iou.robot │ │ │ ├── source │ │ │ │ ├── disablers.robot │ │ │ │ ├── empty_before_fist_keyword.robot │ │ │ │ ├── multiple_sections.robot │ │ │ │ └── sort_input.robot │ │ │ └── test_formatter.py │ │ ├── SplitTooLongLine │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── align_new_line.robot │ │ │ │ ├── align_new_line_all.robot │ │ │ │ ├── comments.robot │ │ │ │ ├── comments_skip_comments.robot │ │ │ │ ├── comments_split_scalar.robot │ │ │ │ ├── continuation_indent_feed.robot │ │ │ │ ├── continuation_indent_split.robot │ │ │ │ ├── feed_until_line_length.robot │ │ │ │ ├── feed_until_line_length_4.robot │ │ │ │ ├── multiple_assignments_on_every_arg.robot │ │ │ │ ├── multiple_assignments_on_every_arg_120.robot │ │ │ │ ├── multiple_assignments_until_line_length.robot │ │ │ │ ├── settings_on_every_arg.robot │ │ │ │ ├── settings_skip_tests.robot │ │ │ │ ├── settings_until_line_length.robot │ │ │ │ ├── settings_until_line_length_skip_comments.robot │ │ │ │ ├── skip_keywords.robot │ │ │ │ ├── split_on_every_arg.robot │ │ │ │ ├── split_on_every_arg_4.robot │ │ │ │ ├── variables_feed.robot │ │ │ │ ├── variables_split_on_every_value.robot │ │ │ │ └── variables_split_scalar.robot │ │ │ ├── source │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── align_new_line.robot │ │ │ │ ├── comments.robot │ │ │ │ ├── continuation_indent.robot │ │ │ │ ├── disablers.robot │ │ │ │ ├── multiple_assignments.robot │ │ │ │ ├── settings.robot │ │ │ │ ├── tests.robot │ │ │ │ └── variables.robot │ │ │ └── test_formatter.py │ │ ├── Translate │ │ │ ├── __init__.py │ │ │ ├── expected │ │ │ │ ├── add_lang_header │ │ │ │ │ ├── comment_section.robot │ │ │ │ │ ├── diff_lang_header.robot │ │ │ │ │ ├── en_header.robot │ │ │ │ │ └── no_lang_header.robot │ │ │ │ ├── bdd │ │ │ │ │ ├── pl.robot │ │ │ │ │ ├── pl_alternative.robot │ │ │ │ │ └── uk.robot │ │ │ │ ├── de.robot │ │ │ │ ├── en.robot │ │ │ │ ├── en_with_pl_header.robot │ │ │ │ └── pl.robot │ │ │ ├── source │ │ │ │ ├── add_lang_header │ │ │ │ │ ├── comment_section.robot │ │ │ │ │ ├── diff_lang_header.robot │ │ │ │ │ ├── empty.robot │ │ │ │ │ ├── en_header.robot │ │ │ │ │ └── no_lang_header.robot │ │ │ │ ├── bdd │ │ │ │ │ └── en_and_pl.robot │ │ │ │ ├── en.robot │ │ │ │ ├── pl.robot │ │ │ │ ├── pl_and_de.robot │ │ │ │ └── pl_language_header.robot │ │ │ └── test_formatter.py │ │ └── __init__.py │ ├── test_data │ │ ├── disablers │ │ │ ├── empty.robot │ │ │ ├── file_disabled.robot │ │ │ ├── file_disabled_and_enabled.robot │ │ │ ├── file_disabled_enabled_in_comments.robot │ │ │ ├── file_disabled_in_comments.robot │ │ │ ├── file_disabled_in_comments_no_header.robot │ │ │ ├── file_disabled_in_selected.robot │ │ │ ├── open_disabler_in_section.robot │ │ │ └── test.robot │ │ └── good_bad_files │ │ │ ├── bad.robot │ │ │ └── good.robot │ ├── test_disablers.py │ └── test_skip.py ├── linter │ ├── __init__.py │ ├── cli │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_list_reports.py │ │ ├── test_list_rules.py │ │ ├── test_rule.py │ │ └── test_thresholds.py │ ├── reports │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_file_stats_report.py │ │ ├── test_gitlab.py │ │ ├── test_json_report.py │ │ ├── test_print_issues.py │ │ ├── test_reports.py │ │ ├── test_return_status_report.py │ │ ├── test_robocop_version_report.py │ │ ├── test_rules_by_id_report.py │ │ ├── test_rules_by_severity_report.py │ │ ├── test_sarif_report.py │ │ ├── test_sonar_qube.py │ │ ├── test_text_file.py │ │ ├── test_time_taken_report.py │ │ └── test_timestamp_report.py │ ├── rules │ │ ├── __init__.py │ │ ├── arguments │ │ │ ├── argument_overwritten_before_usage │ │ │ │ ├── __init__.py │ │ │ │ ├── arguments_cleared_after_keyword.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_after_var.txt │ │ │ │ ├── expected_output_pre_var.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ │ ├── arguments_per_line │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_extended_configured.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_max_2.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_argument_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── invalid_argument │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_api.py │ │ │ │ └── test_rule.py │ │ │ ├── undefined_argument_default │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── undefined_argument_value │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── unused_argument │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── extended_variable_syntax.robot │ │ │ │ ├── groups.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ ├── comments │ │ │ ├── bom_encoding_in_file │ │ │ │ ├── __init__.py │ │ │ │ ├── bom_in_file.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_bom.robot │ │ │ │ └── test_rule.py │ │ │ ├── ignored_data │ │ │ │ ├── __init__.py │ │ │ │ ├── bom_and_ignored_data.robot │ │ │ │ ├── bom_and_two_ignored_lines.robot │ │ │ │ ├── bom_example.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── just_ignored_rule.robot │ │ │ │ ├── just_language_header.robot │ │ │ │ ├── language_header_and_other.robot │ │ │ │ ├── language_header_in_second_line.robot │ │ │ │ ├── robotidy_disabler.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── with_ignored_data.robot │ │ │ │ └── with_ignored_rule_and_data.robot │ │ │ ├── invalid_comment │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── missing_space_after_comment │ │ │ │ ├── __init__.py │ │ │ │ ├── block.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_block.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── todo_in_comment │ │ │ │ ├── __init__.py │ │ │ │ ├── added_terms │ │ │ │ ├── expected_output.txt │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── phrases │ │ │ │ ├── expected_output.txt │ │ │ │ └── test.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── custom_tests │ │ │ └── project_checker │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_output.txt │ │ │ │ ├── external_project_checker │ │ │ │ └── __init__.py │ │ │ │ ├── file1.robot │ │ │ │ ├── file2.robot │ │ │ │ └── test_rule.py │ │ ├── deprecated │ │ │ ├── deprecated_singular_header │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── language.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── deprecated_statement │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_force_tags.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── force_tags.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── deprecated_with_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── if_can_be_used │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── replace_create_with_var │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── replace_set_variable_with_var │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── documentation │ │ │ ├── missing_doc_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── missing_doc_resource_file │ │ │ │ ├── __init__.py │ │ │ │ ├── documentation.resource │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.resource │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── with_settings.resource │ │ │ ├── missing_doc_suite │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.resource │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── missing_doc_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_templated.txt │ │ │ │ ├── templated.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── duplications │ │ │ ├── both_tests_and_tasks │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test2.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_library │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_pre_rf6.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_metadata │ │ │ │ ├── __init__.py │ │ │ │ ├── __init__.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_resource │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_setting │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── unrecognized_header.robot │ │ │ ├── duplicated_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test1.robot │ │ │ │ ├── test2.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_variables_import │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── section_already_defined │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── errors │ │ │ ├── invalid_continuation_mark │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── settings_errors.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── variable_errors.robot │ │ │ ├── invalid_for_loop │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── invalid_if │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── expected_output_rf6.1.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── invalid_section_in_resource │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre6.txt │ │ │ │ ├── task.resource │ │ │ │ ├── test.resource │ │ │ │ ├── test_lang.resource │ │ │ │ └── test_rule.py │ │ │ ├── invalid_setting_in_resource │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_pre_rf6.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── test.resource │ │ │ │ └── test_rule.py │ │ │ ├── missing_keyword_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── non_existing_setting │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── parsing_error │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── expected_output_rf7_1.txt │ │ │ │ ├── expected_output_rf7_2.txt │ │ │ │ ├── invalid_try_except.robot │ │ │ │ ├── invalid_while.robot │ │ │ │ ├── positional_args.robot │ │ │ │ ├── resource_with_test.resource │ │ │ │ ├── resource_with_test_lang.resource │ │ │ │ ├── settings_errors.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── variable_errors.robot │ │ │ ├── return_in_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── setting_not_supported │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre7.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── unsupported_setting_in_init_file │ │ │ │ ├── __init__.py │ │ │ │ ├── __init__.resource │ │ │ │ ├── __init__.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── pl_language │ │ │ │ │ ├── __init__.resource │ │ │ │ │ ├── __init__.robot │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── variables_import_with_args │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── imports │ │ │ ├── builtin_imports_not_sorted │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_builtins.robot │ │ │ │ ├── no_imports.robot │ │ │ │ ├── only_builtins.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── non_builtin_imports_not_sorted │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_builtins.robot │ │ │ │ ├── no_imports.robot │ │ │ │ ├── only_builtins.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── resources_imports_not_sorted │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_resources.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── wrong_import_order │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_builtins.robot │ │ │ │ ├── no_imports.robot │ │ │ │ ├── only_builtins.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── keywords │ │ │ ├── no_embedded_keyword_arguments │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── not_allowed_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── sleep_keyword_used │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_1min.txt │ │ │ │ ├── expected_output_1s.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── unused_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── resource.robot │ │ │ │ ├── suite.robot │ │ │ │ ├── tasks.robot │ │ │ │ └── test_rule.py │ │ ├── lengths │ │ │ ├── __init__.py │ │ │ ├── empty_arguments │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_default_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_documentation │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_force_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_keyword_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_library_import │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_metadata │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_resource_import │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_section │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── missing_header_in_rf5.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── with_empty_sections.robot │ │ │ ├── empty_setup │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_suite_setup │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_suite_teardown │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_teardown │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_template │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_test_setup │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_test_teardown │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_test_template │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_test_timeout │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_timeout │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_variables_import │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── file_too_long │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_severity_threshold.txt │ │ │ │ ├── expected_output_severity_threshold_only_error.txt │ │ │ │ ├── longer.robot │ │ │ │ ├── shorter.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── line_too_long │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_exception.txt │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_severity_threshold.txt │ │ │ │ ├── severity_threshold.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── number_of_returned_values │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre_rf5.txt │ │ │ │ ├── expected_output_severity_threshold.txt │ │ │ │ ├── expected_output_severity_threshold_rf5.txt │ │ │ │ ├── severity.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_few_calls_in_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── bug629.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_bug629.txt │ │ │ │ ├── expected_output_bug629_rf3.txt │ │ │ │ ├── expected_output_bug629_rf4.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_few_calls_in_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── bug629 │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── templated │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ ├── templated_suite.robot │ │ │ │ │ ├── templated_test.robot │ │ │ │ │ └── test.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── templated_test.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_long_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_ignore_docs.txt │ │ │ │ ├── expected_output_severity_threshold.txt │ │ │ │ ├── ignore_docs.robot │ │ │ │ ├── severity_threshold.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_long_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_ignore_docs.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── severity.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_many_arguments │ │ │ │ ├── __init__.py │ │ │ │ ├── disablers.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_disablers.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── severity.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_many_calls_in_keyword │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_groups.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── groups.robot │ │ │ │ ├── severity.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_many_calls_in_test_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── ignore_templated │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ ├── templated_suite.robot │ │ │ │ │ ├── templated_test.robot │ │ │ │ │ └── test.robot │ │ │ │ ├── severity │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── templated_test.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── too_many_test_cases │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── severity │ │ │ │ ├── expected_output.txt │ │ │ │ ├── four.robot │ │ │ │ ├── templated_test_3.robot │ │ │ │ ├── templated_test_4.robot │ │ │ │ └── three.robot │ │ │ │ ├── templated_test.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── misc │ │ │ ├── can_be_resource_file │ │ │ │ ├── __init__.py │ │ │ │ ├── __init__.robot │ │ │ │ ├── empty.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_test.resource │ │ │ │ ├── no_test.robot │ │ │ │ ├── no_test_with_disabler.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_return │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── expression_can_be_simplified │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── if_can_be_merged │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── inline_if.robot │ │ │ │ ├── invalid.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── inconsistent_assignment │ │ │ │ ├── __init__.py │ │ │ │ ├── autodetect │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── const │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── golden │ │ │ │ │ └── golden.robot │ │ │ │ ├── item_assignment.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ │ ├── inconsistent_assignment_in_variables │ │ │ │ ├── __init__.py │ │ │ │ ├── autodetect │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── const │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── golden │ │ │ │ │ └── golden.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ │ ├── inline_if_can_be_used │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── severity.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── keyword_after_return │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── keyword_after_return_from.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── misplaced_negative_condition │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── multiline_inline_if │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── nested_for_loop │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── statement_outside_loop │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── unnecessary_string_conversion │ │ │ │ ├── __init__.py │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── unreachable_code │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_error.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── naming │ │ │ ├── bdd_without_keyword_call │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── keyword_with_bdd.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── duplicated_library_alias │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_pre_rf6_0.txt │ │ │ │ ├── expected_output_rf6_0.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── else_not_upper_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_library_alias │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre_rf6.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── invalid_section │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_lang.resource │ │ │ │ ├── test_lang_no_header.resource │ │ │ │ └── test_rule.py │ │ │ ├── keyword_name_is_empty │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── keyword_name_is_reserved_word │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── expected_output_rf5.txt │ │ │ │ ├── if_blocks.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── mixed_task_test_settings │ │ │ │ ├── __init__.py │ │ │ │ ├── __init__.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_pre_rf6.txt │ │ │ │ ├── expected_output_rf6.txt │ │ │ │ ├── golden_task.robot │ │ │ │ ├── golden_test.robot │ │ │ │ ├── mixed_tasks.robot │ │ │ │ ├── mixed_tests.robot │ │ │ │ ├── tasks_with_test_settings.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── tests_with_task_settings.robot │ │ │ ├── not_allowed_char_in_filename │ │ │ │ ├── __init__.py │ │ │ │ ├── allowed_suite_foo.bar.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_configured.txt │ │ │ │ ├── not_allowed_suite_foo.bar.robot │ │ │ │ ├── suite.withdot │ │ │ │ │ └── __init__.robot │ │ │ │ └── test_rule.py │ │ │ ├── not_allowed_char_in_name │ │ │ │ ├── __init__.py │ │ │ │ ├── configure1 │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── configure2 │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── configure3 │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── configure4 │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── not_capitalized_test_case_title │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── section_name_invalid │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── section_variable_not_uppercase │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ │ ├── setting_name_not_in_title_case │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── test_case_name_is_empty │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── templated.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── underscore_in_keyword_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── wrong_case_in_keyword_name │ │ │ │ ├── __init__.py │ │ │ │ ├── configure_pattern │ │ │ │ ├── expected_output.txt │ │ │ │ └── test.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pabot.txt │ │ │ │ ├── first_word │ │ │ │ ├── expected_output.txt │ │ │ │ └── test.robot │ │ │ │ ├── pabot_run_keywords.robot │ │ │ │ ├── run_keywords.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── order │ │ │ ├── keyword_section_out_of_order │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf7.txt │ │ │ │ ├── expected_output_teardown_keyword.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test_kw_setup_added_in_rf7.robot │ │ │ │ └── test_rule.py │ │ │ ├── section_out_of_order │ │ │ │ ├── __init__.py │ │ │ │ ├── custom_order.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_custom_order.txt │ │ │ │ ├── expected_output_default_order.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── test_case_section_out_of_order │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_teardown_keyword.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── spacing │ │ │ ├── bad_block_indent │ │ │ │ ├── __init__.py │ │ │ │ ├── comments.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_groups.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── groups.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── bad_indent │ │ │ │ ├── __init__.py │ │ │ │ ├── bug375.robot │ │ │ │ ├── bug758 │ │ │ │ │ └── templated_suite.robot │ │ │ │ ├── comments.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── expected_output_rf4.txt │ │ │ │ ├── groups │ │ │ │ │ ├── expected_groups.txt │ │ │ │ │ └── groups.robot │ │ │ │ ├── indent_3spaces │ │ │ │ │ ├── expected_output.txt │ │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ │ └── expected_output_rf4.txt │ │ │ │ ├── template_suite_with_settings.robot │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── consecutive_empty_lines │ │ │ │ ├── __init__.py │ │ │ │ ├── blocks.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── golden_test.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── with_comments.robot │ │ │ ├── empty_line_after_section │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_severity.txt │ │ │ │ ├── missing_header.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_lines_between_keywords │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_lines_between_sections │ │ │ │ ├── __init__.py │ │ │ │ ├── bug861.robot │ │ │ │ ├── empty_section.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── golden.robot │ │ │ │ ├── one_section.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_lines_between_test_cases │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── templated_suite.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_lines_in_statement │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── first_argument_in_new_line │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── misaligned_continuation │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test_rule.py │ │ │ │ └── tests.robot │ │ │ ├── misaligned_continuation_row │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_ignore_docs.txt │ │ │ │ ├── expected_output_run_kw.txt │ │ │ │ ├── expected_output_run_kw_off.txt │ │ │ │ ├── run_keyword.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── variables.robot │ │ │ ├── missing_trailing_blank_line │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test2.robot │ │ │ │ ├── test3.robot │ │ │ │ ├── test4.robot │ │ │ │ └── test_rule.py │ │ │ ├── mixed_tabs_and_spaces │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── suite_setting_not_left_aligned │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── four_spaces.robot │ │ │ │ ├── golden.robot │ │ │ │ ├── one_space.robot │ │ │ │ └── test_rule.py │ │ │ ├── too_many_trailing_blank_lines │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ ├── test2.robot │ │ │ │ └── test_rule.py │ │ │ ├── trailing_whitespace │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── variable_not_left_aligned │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── tags │ │ │ ├── could_be_keyword_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── builtin_tags.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── keyword_tags_present.robot │ │ │ │ ├── keywords_with_tests.robot │ │ │ │ ├── no_tags.robot │ │ │ │ ├── only_keywords.robot │ │ │ │ ├── only_tests.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── two_tags.robot │ │ │ ├── could_be_test_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── builtin_tags.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── no_tags.robot │ │ │ │ ├── one_test.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── test_tags.robot │ │ │ │ ├── tests_with_keywords.robot │ │ │ │ └── two_tags.robot │ │ │ ├── duplicated_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── default_and_empty_tags.robot │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ └── test_rule.py │ │ │ ├── tag_already_set_in_keyword_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── keyword_tags.robot │ │ │ │ ├── no_tags_in_keywords.robot │ │ │ │ └── test_rule.py │ │ │ ├── tag_already_set_in_test_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_test_tags.txt │ │ │ │ ├── keyword_tag.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── test_tags.robot │ │ │ ├── tag_with_or_and │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_keyword_tags.txt │ │ │ │ ├── keyword_tags.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── tag_with_reserved_word │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_keyword_doc.txt │ │ │ │ ├── keyword_doc.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── tag_with_space │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ └── unnecessary_default_tags │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ ├── variables │ │ │ ├── duplicated_assigned_var_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── empty_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre_var.txt │ │ │ │ ├── expected_output_var.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── hyphen_in_variable_name │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_var.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── inconsistent_variable_name │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre_7.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── no_global_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_builtin_syntax.txt │ │ │ │ ├── expected_output_var_syntax.txt │ │ │ │ ├── test_builtin_syntax.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── test_var_syntax.robot │ │ │ ├── no_suite_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_builtin_syntax.txt │ │ │ │ ├── expected_output_var_syntax.txt │ │ │ │ ├── test_builtin_syntax.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── test_var_syntax.robot │ │ │ ├── no_test_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_builtin_syntax.txt │ │ │ │ ├── expected_output_var_syntax.txt │ │ │ │ ├── test_builtin_syntax.robot │ │ │ │ ├── test_rule.py │ │ │ │ └── test_var_syntax.robot │ │ │ ├── non_local_variables_should_be_uppercase │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_var.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── overwriting_reserved_variable │ │ │ │ ├── VAR_syntax.robot │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_var.txt │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── possible_variable_overwriting │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_groups.txt │ │ │ │ ├── expected_output.txt │ │ │ │ ├── expected_output_pre6.1.txt │ │ │ │ ├── expected_output_pre7.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── groups.robot │ │ │ │ ├── test.robot │ │ │ │ └── test_rule.py │ │ │ ├── unused_variable │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_after_var.txt │ │ │ │ ├── expected_output_groups.txt │ │ │ │ ├── expected_output_loops.txt │ │ │ │ ├── expected_output_pre_var.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── extended_variable_syntax.robot │ │ │ │ ├── groups.robot │ │ │ │ ├── loops.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── unused_section_vars.robot │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ │ └── variable_overwritten_before_usage │ │ │ │ ├── __init__.py │ │ │ │ ├── expected_extended.txt │ │ │ │ ├── expected_output_after_var.txt │ │ │ │ ├── expected_output_loops.txt │ │ │ │ ├── expected_output_pre_var.txt │ │ │ │ ├── expected_output_rf3.txt │ │ │ │ ├── inline_if.robot │ │ │ │ ├── loops.robot │ │ │ │ ├── test.robot │ │ │ │ ├── test_rule.py │ │ │ │ ├── variable_type_conversion.robot │ │ │ │ └── variable_type_conversion_expected.txt │ │ └── whitespace │ │ │ ├── not_enough_whitespace_after_newline_marker │ │ │ ├── __init__.py │ │ │ ├── expected_extended.txt │ │ │ ├── expected_output.txt │ │ │ ├── settings_errors.robot │ │ │ ├── test.robot │ │ │ ├── test_rule.py │ │ │ └── variable_errors.robot │ │ │ ├── not_enough_whitespace_after_setting │ │ │ ├── __init__.py │ │ │ ├── expected_extended.txt │ │ │ ├── expected_output.txt │ │ │ ├── test.robot │ │ │ └── test_rule.py │ │ │ ├── not_enough_whitespace_after_suite_setting │ │ │ ├── __init__.py │ │ │ ├── expected_extended.txt │ │ │ ├── expected_output.txt │ │ │ ├── test.robot │ │ │ └── test_rule.py │ │ │ └── not_enough_whitespace_after_variable │ │ │ ├── __init__.py │ │ │ ├── expected_extended.txt │ │ │ ├── expected_output.txt │ │ │ ├── test.robot │ │ │ └── test_rule.py │ ├── test_custom_rules.py │ ├── test_data │ │ ├── custom_rules │ │ │ ├── config_pyproject │ │ │ │ └── pyproject.toml │ │ │ ├── custom_rule │ │ │ │ ├── external_rule.py │ │ │ │ ├── external_rule2.py │ │ │ │ └── other_file.template │ │ │ ├── custom_rule_duplicate │ │ │ │ └── external_rule_dup.py │ │ │ ├── custom_rule_invalid_file │ │ │ │ └── invalid_file.py │ │ │ ├── custom_rule_invalid_reports │ │ │ │ └── external_rule.py │ │ │ ├── custom_rule_missing_register │ │ │ │ └── external_rule_missing_register.py │ │ │ ├── custom_rule_module │ │ │ │ └── RobocopRules │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── some_rules.py │ │ │ │ │ └── submodule │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── some_rules.py │ │ │ ├── custom_rule_module_import_robocop │ │ │ │ └── RobocopCustomRules │ │ │ │ │ └── __init__.py │ │ │ ├── custom_rule_module_simple_import │ │ │ │ └── RobocopRules │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── single_rule.py │ │ │ │ │ └── submodule │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── some_rules.py │ │ │ ├── custom_rule_module_with_relative_import │ │ │ │ ├── bar.py │ │ │ │ ├── foo.py │ │ │ │ ├── single_rule.py │ │ │ │ └── sub_dir │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── baz.py │ │ │ ├── deprecated │ │ │ │ └── deprecated_rules.py │ │ │ ├── disabled_by_default │ │ │ │ ├── external_rule.py │ │ │ │ └── external_rule2.py │ │ │ └── version_matching │ │ │ │ └── rules_with_version_limits.py │ │ ├── disablers │ │ │ ├── disabled.robot │ │ │ ├── disabled_whole.robot │ │ │ ├── enabled.robot │ │ │ ├── extended_lines1.robot │ │ │ ├── extended_lines2.robot │ │ │ ├── extended_lines3.robot │ │ │ ├── extended_lines4.robot │ │ │ └── scopes.robot │ │ └── example_test │ │ │ ├── pyproject.toml │ │ │ └── test.robot │ ├── test_disablers.py │ ├── test_empty_selects.py │ ├── test_rule_matcher.py │ └── utils │ │ ├── __init__.py │ │ └── test_version_matching.py ├── migrate_config │ ├── test_data │ │ ├── common.toml │ │ ├── common_hyphens.toml │ │ ├── common_migrated.toml │ │ ├── skip.toml │ │ ├── skip_false.toml │ │ └── skip_migrated.toml │ └── test_migrate_config.py └── test_cli.py └── uv.lock /.mega-linter.yml: -------------------------------------------------------------------------------- 1 | ENABLE_LINTERS: 2 | - MARKDOWN_MARKDOWNLINT 3 | - YAML_YAMLLINT 4 | DISABLE_ERRORS_LINTERS: 5 | - RST_RSTCHECK 6 | EXCLUDED_DIRECTORIES: 7 | - build 8 | PRE_COMMANDS: 9 | - command: pip install robotframework-robocop[dev] 10 | venv: rstcheck 11 | -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- 1 | repos: 2 | - repo: https://github.com/astral-sh/ruff-pre-commit 3 | rev: v0.9.7 4 | hooks: 5 | - id: ruff 6 | - id: ruff-format 7 | -------------------------------------------------------------------------------- /docs/source/_static/css/custom.css: -------------------------------------------------------------------------------- 1 | .toc-drawer { 2 | width: 20em; 3 | } 4 | -------------------------------------------------------------------------------- /docs/source/images/github_code_scanning1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/github_code_scanning1.png -------------------------------------------------------------------------------- /docs/source/images/github_code_scanning2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/github_code_scanning2.png -------------------------------------------------------------------------------- /docs/source/images/robocop.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/robocop.ico -------------------------------------------------------------------------------- /docs/source/images/robocop_external_tool.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/robocop_external_tool.jpg -------------------------------------------------------------------------------- /docs/source/images/robocop_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/robocop_logo.png -------------------------------------------------------------------------------- /docs/source/images/robocop_logo_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/docs/source/images/robocop_logo_small.png -------------------------------------------------------------------------------- /src/robocop/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "6.4.0" 2 | -------------------------------------------------------------------------------- /src/robocop/__main__.py: -------------------------------------------------------------------------------- 1 | from robocop.run import main 2 | 3 | if __name__ == "__main__": 4 | main() 5 | -------------------------------------------------------------------------------- /src/robocop/formatter/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/src/robocop/formatter/__init__.py -------------------------------------------------------------------------------- /src/robocop/linter/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/src/robocop/linter/__init__.py -------------------------------------------------------------------------------- /src/robocop/linter/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/src/robocop/linter/utils/__init__.py -------------------------------------------------------------------------------- /tests/config/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/__init__.py -------------------------------------------------------------------------------- /tests/config/test_data/cli_config/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop.lint] 2 | reports = ["all"] -------------------------------------------------------------------------------- /tests/config/test_data/config_with_all_options/other_config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/config_with_all_options/other_config.toml -------------------------------------------------------------------------------- /tests/config/test_data/config_with_all_options/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/config_with_all_options/test.robot -------------------------------------------------------------------------------- /tests/config/test_data/config_with_all_options_hyphens/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/config_with_all_options_hyphens/test.robot -------------------------------------------------------------------------------- /tests/config/test_data/filter_paths/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/filter_paths/file.py -------------------------------------------------------------------------------- /tests/config/test_data/filter_paths/file.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/filter_paths/file.robot -------------------------------------------------------------------------------- /tests/config/test_data/gitignore/.gitignore: -------------------------------------------------------------------------------- 1 | ignored/ 2 | # invalid file 3 | file_ignored.robot 4 | -------------------------------------------------------------------------------- /tests/config/test_data/gitignore/file.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/gitignore/file.robot -------------------------------------------------------------------------------- /tests/config/test_data/gitignore/file_ignored.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/gitignore/file_ignored.robot -------------------------------------------------------------------------------- /tests/config/test_data/gitignore/ignored/file.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/gitignore/ignored/file.robot -------------------------------------------------------------------------------- /tests/config/test_data/invalid_config/invalid.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | exclude = ["deprecated.robot"] 3 | default_exclude = ["archived/"] 4 | include = ["custom.txt"] 5 | default_include = ["*.robot"] 6 | language = ["en", "pl"] 7 | unknown = true 8 | -------------------------------------------------------------------------------- /tests/config/test_data/invalid_option_values/invalid_target_version.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | target_version = 100 3 | -------------------------------------------------------------------------------- /tests/config/test_data/multiple_files_one_config/resources/test.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/multiple_files_one_config/resources/test.resource -------------------------------------------------------------------------------- /tests/config/test_data/multiple_files_one_config/test_suites/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/multiple_files_one_config/test_suites/test.robot -------------------------------------------------------------------------------- /tests/config/test_data/no_config/file1.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/no_config/file1.robot -------------------------------------------------------------------------------- /tests/config/test_data/no_config/subdir/dontparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/no_config/subdir/dontparse.py -------------------------------------------------------------------------------- /tests/config/test_data/no_config/subdir/file2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/no_config/subdir/file2.robot -------------------------------------------------------------------------------- /tests/config/test_data/no_config/subdir/file3.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/no_config/subdir/file3.resource -------------------------------------------------------------------------------- /tests/config/test_data/non_robot_files/log.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/non_robot_files/log.html -------------------------------------------------------------------------------- /tests/config/test_data/one_config_root/file1.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_root/file1.robot -------------------------------------------------------------------------------- /tests/config/test_data/one_config_root/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | lint.configure = [ 3 | "line-too-long.line_length=110" 4 | ] 5 | -------------------------------------------------------------------------------- /tests/config/test_data/one_config_root/subdir/dontparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_root/subdir/dontparse.py -------------------------------------------------------------------------------- /tests/config/test_data/one_config_root/subdir/file2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_root/subdir/file2.robot -------------------------------------------------------------------------------- /tests/config/test_data/one_config_root/subdir/file3.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_root/subdir/file3.resource -------------------------------------------------------------------------------- /tests/config/test_data/one_config_subdir/file1.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_subdir/file1.robot -------------------------------------------------------------------------------- /tests/config/test_data/one_config_subdir/subdir/dontparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_subdir/subdir/dontparse.py -------------------------------------------------------------------------------- /tests/config/test_data/one_config_subdir/subdir/file2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_subdir/subdir/file2.robot -------------------------------------------------------------------------------- /tests/config/test_data/one_config_subdir/subdir/file3.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/one_config_subdir/subdir/file3.resource -------------------------------------------------------------------------------- /tests/config/test_data/one_config_subdir/subdir/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | default_exclude = ["file3.resource"] 3 | 4 | [tool.robocop.lint] 5 | configure = [ 6 | "line-too-long.line_length=110" 7 | ] 8 | -------------------------------------------------------------------------------- /tests/config/test_data/relative_paths/custom_formatters/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/relative_paths/custom_formatters/__init__.py -------------------------------------------------------------------------------- /tests/config/test_data/relative_paths/custom_rules/CustomRules.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/relative_paths/custom_rules/CustomRules.py -------------------------------------------------------------------------------- /tests/config/test_data/relative_paths/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop.lint] 2 | custom_rules = ["custom_rules/CustomRules.py"] 3 | 4 | [tool.robocop.format] 5 | custom_formatters = ["custom_formatters/"] 6 | -------------------------------------------------------------------------------- /tests/config/test_data/robot_toml_with_reports/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/robot_toml_with_reports/test.robot -------------------------------------------------------------------------------- /tests/config/test_data/simple/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/simple/test.robot -------------------------------------------------------------------------------- /tests/config/test_data/simple/test2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/simple/test2.robot -------------------------------------------------------------------------------- /tests/config/test_data/two_config/excluded_dir/file2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/excluded_dir/file2.robot -------------------------------------------------------------------------------- /tests/config/test_data/two_config/excluded_dir/file3.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/excluded_dir/file3.resource -------------------------------------------------------------------------------- /tests/config/test_data/two_config/excluded_dir/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | config = [ 3 | "line-too-long.line_length=160" 4 | ] 5 | -------------------------------------------------------------------------------- /tests/config/test_data/two_config/file1.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/file1.robot -------------------------------------------------------------------------------- /tests/config/test_data/two_config/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | default_exclude = ["excluded_dir/"] 3 | 4 | [tool.robocop.lint] 5 | configure = [ 6 | "line-too-long.line_length=110" 7 | ] 8 | -------------------------------------------------------------------------------- /tests/config/test_data/two_config/subdir/dontparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/subdir/dontparse.py -------------------------------------------------------------------------------- /tests/config/test_data/two_config/subdir/file2.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/subdir/file2.robot -------------------------------------------------------------------------------- /tests/config/test_data/two_config/subdir/file3.resource: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/config/test_data/two_config/subdir/file3.resource -------------------------------------------------------------------------------- /tests/config/test_data/two_config/subdir/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop] 2 | default_exclude = ["file1.robot"] # ignored, as file1.robot is in parent directory 3 | 4 | [tool.robocop.lint] 5 | configure = [ 6 | "line-too-long.line_length=140" 7 | ] 8 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- 1 | # We are appending tests directory to sys path so we can use tests utils inside tests 2 | 3 | import sys 4 | from pathlib import Path 5 | 6 | sys.path.append(str(Path(__file__).parent.parent)) 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AddMissingEnd/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AddMissingEnd/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AlignKeywordsSection/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/align_settings_separately.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Arguments] ${argument_name} 4 | [Tags] tag tag 5 | Log ${argument_name} 6 | Perform Action And Wait ${argument_name} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/compact_overflow_last_0.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Longer Than Limit ${arg} 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/too_long_token_counter_compact_overflow.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/too_long_token_counter_ignore_line.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/too_long_token_counter_ignore_rest.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/expected/too_long_token_counter_overflow.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/source/align_settings_separately.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Arguments] ${argument_name} 4 | [Tags] tag tag 5 | Log ${argument_name} 6 | Perform Action And Wait ${argument_name} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/source/compact_overflow_last_0.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Longer Than Limit ${arg} 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/source/error_node.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Missing keyword call 3 | WHILE $condition 4 | ${var} 5 | END 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignKeywordsSection/source/too_long_token_counter.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AlignSettingsSection/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/expected/blank_line_and_whitespace.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Documentation with extra 3 | ... 4 | ... spaces 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/expected/empty_lines.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation This is 3 | ... multiline line 4 | ... docs 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/source/blank_line_and_whitespace.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Documentation with extra 3 | ... 4 | ... spaces 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/source/blank_line_doc.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Description of what the file does 3 | ... 4 | ... Copyright 2021 by company I am paid by 5 | Test Template test 6 | Force Tags tag 7 | ... 8 | ... tag2 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignSettingsSection/source/empty_lines.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation This is 3 | ... multiline line 4 | 5 | ... docs 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTemplatedTestCases/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AlignTemplatedTestCases/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AlignTestCasesSection/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/expected/compact_overflow_last_0.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Keyword 3 | Longer Than Limit ${arg} 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/expected/too_long_token_counter_compact_overflow.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/expected/too_long_token_counter_ignore_line.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/expected/too_long_token_counter_ignore_rest.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/expected/too_long_token_counter_overflow.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/source/compact_overflow_last_0.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Keyword 3 | Longer Than Limit ${arg} 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignTestCasesSection/source/too_long_token_counter.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Second Column Should Not Be Counted 3 | I am too long to be counted Do not count me 4 | Short Short Short 5 | Longer 6 | ... ${arg} ${arg} 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/AlignVariablesSection/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/expected/multiline_with_blank.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${VARIABLE} 1 3 | ... 2 4 | ... 5 | ... 3 6 | ${OTHER_AND_LONGER} a 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/expected/single_var.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Test 3 | 4 | *** Variables *** 5 | ${VAR_NAME_25_CHARACTERS} Test 6 | 7 | *** Test Cases *** 8 | Test1 9 | ${test_col_21_chars}= Set Variable Test 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/source/multiline_skip.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${VARIABLE 1} 10 # comment 3 | @{LIST} a 4 | ... b 5 | ... c 6 | ... d 7 | ${LONGER_NAME_THAT_GOES_AND_GOES} longer value that goes and goes 8 | &{SOME_DICT} key=value key2=value 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/source/multiline_with_blank.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${VARIABLE} 1 3 | ... 2 4 | ... 5 | ... 3 6 | ${OTHER_AND_LONGER} a 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/AlignVariablesSection/source/single_var.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Test 3 | 4 | *** Variables *** 5 | ${VAR_NAME_25_CHARACTERS} Test 6 | 7 | *** Test Cases *** 8 | Test1 9 | ${test_col_21_chars}= Set Variable Test 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/DiscardEmptySections/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/DiscardEmptySections/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/DiscardEmptySections/expected/removes_empty_sections.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | [Tags] sometag 5 | Pass 6 | Keyword 7 | One More 8 | 9 | 10 | *** Comments *** 11 | # robocop: off=all 12 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/ExternalTransformers/__init__.py: -------------------------------------------------------------------------------- 1 | from .custom_class import CustomClass1, CustomClass2, Formatter # noqa: F401 2 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ExternalTransformer/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | 6 | 7 | *** Test Cases 8 | Test 9 | Pass 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_lowercase.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** test cases 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_module_load.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases *** 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_module_load_configure.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases *** 6 | test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_module_transform.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_module_transform_configure.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases 6 | test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_only_defaults.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases *** 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_with_defaults.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | 6 | 7 | *** Test Cases *** 8 | Test 9 | Pass 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/expected/tests_with_defaults_lowercase.robot: -------------------------------------------------------------------------------- 1 | *** settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** test cases *** 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ExternalTransformer/source/tests.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library KeywordLibrary 3 | 4 | 5 | *** Test Cases 6 | Test 7 | Pass 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/GenerateDocumentation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/GenerateDocumentation/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/GenerateDocumentation/source/invalid_template.jinja: -------------------------------------------------------------------------------- 1 | {{ not_exist }} 2 | {%- for arg in keyword.arguments %} -------------------------------------------------------------------------------- /tests/formatter/formatters/IndentNestedKeywords/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/IndentNestedKeywords/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/InlineIf/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/InlineIf/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/InlineIf/expected/one_if_2spaces.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Simple IF 3 | # indent is preserved, separator changes 4 | IF $condition1 Keyword argument 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/InlineIf/expected/one_if_4spaces.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Simple IF 3 | # indent is preserved, separator changes 4 | IF $condition1 Keyword argument 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/InlineIf/source/one_if.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Simple IF 3 | # indent is preserved, separator changes 4 | IF $condition1 5 | Keyword argument 6 | END 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/MergeAndOrderSections/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/both_test_and_task.robot: -------------------------------------------------------------------------------- 1 | *** Comments *** 2 | i am comment 3 | *** Test Case *** 4 | Test 1 5 | IF ${condition} 6 | Log stuff 7 | END 8 | 9 | Task 1 10 | IF ${condition} 11 | Log stuff 12 | END 13 | 14 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/comments_section.robot: -------------------------------------------------------------------------------- 1 | *** Comments *** 2 | 3 | comment 4 | 5 | I am a comment 6 | *** Keywords *** 7 | Keyword 8 | Keyword Call 9 | 10 | 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/empty_section.robot: -------------------------------------------------------------------------------- 1 | *** Comments *** 2 | *** Variables *** 3 | ${variable} some variable 4 | 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/multiple_header_comments.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** header comment 2 | 3 | 4 | *** Variables header comment 5 | 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/nested_block_for.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | FOR ${var} IN 1 2 4 | No Operation 5 | END 6 | 7 | Test 8 | FOR ${var} IN 1 2 9 | No Operation 10 | END 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/expected/nested_blocks.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | IF ${condition} 4 | Keyword 5 | END 6 | 7 | Keyword 8 | IF ${condition} 9 | Keyword 10 | END 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/comments_section.robot: -------------------------------------------------------------------------------- 1 | 2 | comment 3 | 4 | *** Keywords *** 5 | Keyword 6 | Keyword Call 7 | 8 | 9 | *** Comments *** 10 | I am a comment 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/empty_section.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${variable} some variable 3 | 4 | *** Comments *** -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/inline_if.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | foo 3 | No Operation 4 | 5 | *** Keywords *** 6 | Bar 7 | IF ${True} No Operation 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/invalid.robot: -------------------------------------------------------------------------------- 1 | *** Ustawienia *** 2 | 3 | *** Testy *** 4 | Test 5 | No Operation 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/multiple_header_comments.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** header comment 2 | 3 | *** Variables header comment 4 | 5 | *** Settings *** 6 | 7 | *** Variables also header comment 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/nested_block_for.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | FOR ${var} IN 1 2 4 | No Operation 5 | END 6 | 7 | *** Test Cases *** 8 | Test 9 | FOR ${var} IN 1 2 10 | No Operation 11 | END -------------------------------------------------------------------------------- /tests/formatter/formatters/MergeAndOrderSections/source/nested_blocks.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | IF ${condition} 4 | Keyword 5 | END 6 | 7 | *** Keywords *** 8 | Keyword 9 | IF ${condition} 10 | Keyword 11 | END -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeAssignments/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeAssignments/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeAssignments/expected/common_remove.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${var} ${1} 3 | @{list} a 4 | ... b 5 | ... c 6 | 7 | ${variable} 10 8 | 9 | 10 | *** Keywords *** 11 | Keyword 12 | ${var} Keyword1 13 | ${var} Keyword2 14 | ${var} Keyword 15 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeAssignments/source/common_remove.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${var} ${1} 3 | @{list}= a 4 | ... b 5 | ... c 6 | 7 | ${variable} 10 8 | 9 | 10 | *** Keywords *** 11 | Keyword 12 | ${var}= Keyword1 13 | ${var} Keyword2 14 | ${var} Keyword 15 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeComments/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeComments/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeNewLines/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/expected/inline_if.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | foo 3 | No Operation 4 | 5 | 6 | *** Keywords *** 7 | Bar 8 | IF ${True} No Operation 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/expected/language_header_0empty.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | *** Ustawienia *** 3 | 4 | 5 | *** Zmienne *** 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/expected/language_header_2empty.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | 4 | *** Ustawienia *** 5 | 6 | 7 | *** Zmienne *** 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/expected/language_header_and_comments.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | I am free comment 3 | 4 | 5 | *** Ustawienia *** 6 | 7 | 8 | *** Zmienne *** 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/expected/test_case_last.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Values Are Equal Fails 3 | Log 1111 4 | 5 | Values Are Equal Fails 6 | Log 1111 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/inline_if_0_lines.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | foo 3 | No Operation 4 | 5 | *** Keywords *** 6 | Bar 7 | IF ${True} No Operation -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/inline_if_1_lines.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | foo 3 | No Operation 4 | 5 | *** Keywords *** 6 | Bar 7 | IF ${True} No Operation 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/inline_if_2_lines.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | foo 3 | No Operation 4 | 5 | *** Keywords *** 6 | Bar 7 | IF ${True} No Operation 8 | 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/language_header_0empty.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | *** Ustawienia *** 3 | *** Zmienne *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/language_header_2empty.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | 4 | *** Ustawienia *** 5 | *** Zmienne *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/language_header_5empty.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | 4 | 5 | 6 | 7 | *** Ustawienia *** 8 | *** Zmienne *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/language_header_and_comments.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | I am free comment 3 | *** Ustawienia *** 4 | *** Zmienne *** 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/test_case_last_0_lines.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Values Are Equal Fails 3 | Log 1111 4 | 5 | Values Are Equal Fails 6 | Log 1111 -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeNewLines/source/test_case_last_1_lines.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Values Are Equal Fails 3 | Log 1111 4 | 5 | Values Are Equal Fails 6 | Log 1111 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeSectionHeaderName/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/selected.robot: -------------------------------------------------------------------------------- 1 | ** settings *** 2 | 3 | *** test cASE *** 4 | 5 | *** Keywords *** data driven columns for col names 6 | 7 | *** coMment *** 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/task.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | *** Tasks *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/task2.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | *** Tasks *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/tests.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | *** Test Cases *** 4 | 5 | *** Keywords *** data driven columns for col names 6 | 7 | *** Comments *** 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/translated.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | I am free comment 3 | *** Ustawienia *** 4 | *** Zmienne *** 5 | *** Słowa Kluczowe *** 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/expected/uppercase.robot: -------------------------------------------------------------------------------- 1 | *** SETTINGS *** 2 | 3 | *** TEST CASES *** 4 | 5 | *** KEYWORDS *** data driven columns for col names 6 | 7 | *** COMMENTS *** 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/source/disablers.robot: -------------------------------------------------------------------------------- 1 | ** settings *** # robocop: fmt: off 2 | 3 | *** test cASE *** # robocop: fmt: off 4 | 5 | *KEYWORDs data driven columns for col names # robocop: fmt: off 6 | 7 | *** coMment *** # robocop: fmt: off 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/source/task.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | *** task *** -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/source/task2.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | * Task * -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/source/tests.robot: -------------------------------------------------------------------------------- 1 | ** settings *** 2 | 3 | *** test cASE *** 4 | 5 | *KEYWORDs data driven columns for col names 6 | 7 | *** coMment *** 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSectionHeaderName/source/translated.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | I am free comment 3 | *** UstawieniA *** 4 | *** zmienne *** 5 | *** Słowa kluczowe *** 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSeparators/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeSeparators/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSeparators/source/disablers4.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Disablers with NormalizeTags acceptance tests 3 | 4 | Test Tags UPPERCASE_TAG tag2 tag3 tag4 tag5 tag6 tag7 tag8 tag9 tag10 tag11 tag12 tag13 # robocop: fmt: off 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSettingName/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeSettingName/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSettingName/expected/rf6.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Tags tag 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeSettingName/source/rf6.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test tags tag 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/NormalizeTags/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/expected/spacing_2indent_2spaces.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Tags] a b c 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/expected/spacing_2indent_4spaces.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Tags] a b c 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/expected/spacing_4indent_2spaces.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Tags] a b c 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/expected/spacing_4indent_4spaces.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Tags] a b c 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/source/disablers4.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Disablers with NormalizeTags acceptance tests 3 | 4 | Test Tags UPPERCASE_TAG tag2 tag3 tag4 tag5 tag6 tag7 tag8 tag9 tag10 tag11 tag12 tag13 # robocop: fmt: off 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/source/rf6.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test tags tag 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/NormalizeTags/source/spacing.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Tags] A B C 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/OrderSettings/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettings/expected/stick_comments.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Comment between settings 3 | # comment 3 4 | [Documentation] doc 5 | # comment 1 6 | [Arguments] ${arg} 7 | # comment 2 8 | Step 9 | # comment 4 10 | [Return] ${arg} 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettings/source/stick_comments.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Comment between settings 3 | # comment 1 4 | [Arguments] ${arg} 5 | # comment 2 6 | Step 7 | # comment 4 8 | [Return] ${arg} 9 | # comment 3 10 | [Documentation] doc 11 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/OrderSettingsSection/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/expected/last_section.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource resource.robot 3 | Library library.py 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/expected/parsing_error.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library library.py 3 | 4 | Resources resource.robot 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/expected/test_empty_group_order.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | 3 | *** Keywords *** -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/expected/test_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Tags tag 3 | ... tag2 4 | Default Tags tag 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/source/just_comment.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | # comment 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/source/last_section.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource resource.robot 3 | Library library.py -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/source/parsing_error.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resources resource.robot 3 | Library library.py -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderSettingsSection/source/test_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Default Tags tag 3 | Test Tags tag 4 | ... tag2 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderTags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/OrderTags/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderTags/expected/test_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Tags one two 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/OrderTags/source/test_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Tags two one 3 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RemoveEmptySettings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/RemoveEmptySettings/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/RenameKeywords/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/expected/capitalize_first.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Lower case stays 3 | No operation 4 | 5 | Upper Case stays 6 | No Operation 7 | 8 | Underscores will be removed 9 | No operation 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/expected/library_embedded_var_pattern.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Library And Embedded Variable And Pattern 3 | LibraryName.With.Dots.New Name ${keyword} And ${var} 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/expected/no_title_case.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | lower case stays 3 | no operation 4 | 5 | Upper Case stays 6 | No Operation 7 | 8 | Underscores will be removed 9 | No operation 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/expected/with_library_name.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Library Name 3 | Process.Only Keyword Name 4 | RPA.Browser.playwright.Take Screenshot 5 | SeleniumLibrary.Open Browser 6 | SSHLibrary.Open Connection Host 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/expected/with_library_name_transform.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Library Name 3 | Process.Only Keyword Name 4 | RPA.Browser.Playwright.Take Screenshot 5 | SeleniumLibrary.Open Browser 6 | SSHLibrary.Open Connection Host 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/source/library_embedded_var_pattern.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Library And Embedded Variable And Pattern 3 | LibraryName.With.Dots.Rename with ${keyword} Variable 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/source/no_title_case.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | lower case stays 3 | no operation 4 | 5 | Upper Case stays 6 | No Operation 7 | 8 | Underscores_will_be_removed 9 | No operation 10 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameKeywords/source/with_library_name.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Library Name 3 | Process.only keyword name 4 | RPA.Browser.playwright.Take Screenshot 5 | SeleniumLibrary.Open Browser 6 | SSHLibrary.Open Connection host 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameTestCases/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/RenameTestCases/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameTestCases/source/empty_test_name.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | 3 | # no test case name!!! 4 | Log To Console hello 5 | 6 | Proper test 7 | [documentation] doc 8 | [tags] sometag 9 | Pass 10 | Keyword 11 | One More 12 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameVariables/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/RenameVariables/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameVariables/expected/equal_sign_in_section.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${RANDOM_SEED} = ${None} 3 | 4 | 5 | *** Keywords *** 6 | Keyword With Sign 7 | ${value} = Keyword Call ${RANDOM_SEED} 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameVariables/expected/inline_if.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword With Inline IF 3 | Log ${GLOBAL} 4 | ${global} IF $condition Keyword 5 | Log ${global} 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameVariables/source/equal_sign_in_section.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${random_seed} = ${None} 3 | 4 | 5 | *** Keywords *** 6 | Keyword With Sign 7 | ${value} = Keyword Call ${random_seed} 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/RenameVariables/source/inline_if.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword With Inline IF 3 | Log ${global} 4 | ${GLOBAL} IF $condition Keyword 5 | Log ${global} 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceBreakContinue/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ReplaceBreakContinue/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceEmptyValues/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ReplaceEmptyValues/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceReturns/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ReplaceReturns/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceRunKeywordIf/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ReplaceRunKeywordIf/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceRunKeywordIf/expected/configure_whitespace.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | IF ${b} - ${e} <= ${c} and ${b} > 10 4 | ${a} Evaluate ${d} + 2 + (10 - ${c}) 5 | ELSE 6 | ${a} Evaluate ${d} + 2 7 | END 8 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceRunKeywordIf/source/configure_whitespace.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | ${a} Run Keyword If ${b} - ${e} <= ${c} and ${b} > 10 Evaluate ${d} + 2 + (10 - ${c}) ELSE Evaluate ${d} + 2 4 | -------------------------------------------------------------------------------- /tests/formatter/formatters/ReplaceWithVAR/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/ReplaceWithVAR/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/SmartSortKeywords/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/SmartSortKeywords/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/SmartSortKeywords/source/empty_before_fist_keyword.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | 3 | # My Comment 4 | my_kw -------------------------------------------------------------------------------- /tests/formatter/formatters/SplitTooLongLine/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/SplitTooLongLine/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/Translate/__init__.py -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/expected/add_lang_header/comment_section.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Komentarze *** 4 | language: pl 5 | 6 | *** Przypadki Testowe *** 7 | Pierwszy test 8 | Krok 1 9 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/expected/add_lang_header/diff_lang_header.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Przypadki Testowe *** 4 | Pierwszy test 5 | Krok 1 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/expected/add_lang_header/en_header.robot: -------------------------------------------------------------------------------- 1 | 2 | *** Test Cases *** 3 | Pierwszy test 4 | Krok 1 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/expected/add_lang_header/no_lang_header.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Przypadki Testowe *** 4 | Pierwszy test 5 | Krok 1 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/source/add_lang_header/comment_section.robot: -------------------------------------------------------------------------------- 1 | *** Comments *** 2 | language: pl 3 | 4 | *** Test Cases *** 5 | Pierwszy test 6 | Krok 1 7 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/source/add_lang_header/diff_lang_header.robot: -------------------------------------------------------------------------------- 1 | language: uk 2 | 3 | *** Test Cases *** 4 | Pierwszy test 5 | Krok 1 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/source/add_lang_header/empty.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/Translate/source/add_lang_header/empty.robot -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/source/add_lang_header/en_header.robot: -------------------------------------------------------------------------------- 1 | language: en 2 | 3 | *** Test Cases *** 4 | Pierwszy test 5 | Krok 1 6 | -------------------------------------------------------------------------------- /tests/formatter/formatters/Translate/source/add_lang_header/no_lang_header.robot: -------------------------------------------------------------------------------- 1 | 2 | *** Test Cases *** 3 | Pierwszy test 4 | Krok 1 5 | -------------------------------------------------------------------------------- /tests/formatter/formatters/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/formatters/__init__.py -------------------------------------------------------------------------------- /tests/formatter/test_data/disablers/empty.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/formatter/test_data/disablers/empty.robot -------------------------------------------------------------------------------- /tests/formatter/test_data/good_bad_files/good.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Documentation 3 | -------------------------------------------------------------------------------- /tests/linter/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/__init__.py -------------------------------------------------------------------------------- /tests/linter/cli/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/cli/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/argument_overwritten_before_usage/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/argument_overwritten_before_usage/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/arguments_per_line/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/arguments_per_line/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/arguments_per_line/expected_output_max_2.txt: -------------------------------------------------------------------------------- 1 | test.robot:26:5 [I] ARG07 There is too many arguments per continuation line (3 / 2) -------------------------------------------------------------------------------- /tests/linter/rules/arguments/duplicated_argument_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/duplicated_argument_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/invalid_argument/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/invalid_argument/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/invalid_argument/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:20:8:25 [E] ARG05 Invalid argument syntax '{var}' 2 | test.robot:13:12:13:17 [E] ARG05 Invalid argument syntax 'value' 3 | test.robot:17:30:17:37 [E] ARG05 Invalid argument syntax 'value' -------------------------------------------------------------------------------- /tests/linter/rules/arguments/invalid_argument/test_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/invalid_argument/test_api.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/undefined_argument_default/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/undefined_argument_default/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/undefined_argument_value/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/undefined_argument_value/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/unused_argument/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/arguments/unused_argument/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/arguments/unused_argument/variable_type_conversion.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Move 3 | [Arguments] ${distance: int} ${direction: Literal["UP", "DOWN"]} ${slow: bool}=True 4 | No Operation 5 | 6 | Move ${distance: int | float} meters 7 | No Operation 8 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/bom_encoding_in_file/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/comments/bom_encoding_in_file/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/comments/bom_encoding_in_file/bom_in_file.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | No Operation 4 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/bom_encoding_in_file/expected_extended.txt: -------------------------------------------------------------------------------- 1 | bom_in_file.robot:1:1 COM05 BOM (Byte Order Mark) found in the file -------------------------------------------------------------------------------- /tests/linter/rules/comments/bom_encoding_in_file/expected_output.txt: -------------------------------------------------------------------------------- 1 | bom_in_file.robot:1:1 [W] COM05 BOM (Byte Order Mark) found in the file -------------------------------------------------------------------------------- /tests/linter/rules/comments/bom_encoding_in_file/no_bom.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | No Operation 4 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/comments/ignored_data/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/bom_example.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation This file is created with VSCode by choosing `UTF-8 with BOM` encoding. 3 | ... It can create problems when running these kind of files with Robot Framework. 4 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/just_ignored_rule.robot: -------------------------------------------------------------------------------- 1 | # robocop: off=0701 2 | 3 | *** Test Cases *** 4 | First Test Case 5 | [Documentation] Doc 6 | No Operation 7 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/just_language_header.robot: -------------------------------------------------------------------------------- 1 | language: fi 2 | 3 | *** Asetukset *** 4 | Dokumentaatio Example using Finnish. 5 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/language_header_and_other.robot: -------------------------------------------------------------------------------- 1 | Language: fi 2 | 3 | I am comment that should be in the *** Comments *** section 4 | 5 | *** Asetukset *** 6 | Dokumentaatio Example using Finnish. 7 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/language_header_in_second_line.robot: -------------------------------------------------------------------------------- 1 | 2 | language: pl 3 | 4 | *** Zmienne *** 5 | ${ZMIENNA} 1 6 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/robotidy_disabler.robot: -------------------------------------------------------------------------------- 1 | # robocop: fmt: off 2 | 3 | *** Settings *** 4 | Suite Documentation This is doc. 5 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/test.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Doc 3 | 4 | 5 | *** Test Cases *** 6 | First Test Case 7 | [Documentation] Doc 8 | No Operation 9 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/ignored_data/with_ignored_data.robot: -------------------------------------------------------------------------------- 1 | ${var} 10 # This should throw a warning. 2 | *** Settings *** 3 | Documentation Doc 4 | 5 | 6 | *** Test Cases *** 7 | First Test Case 8 | [Documentation] Doc 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/invalid_comment/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/comments/invalid_comment/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/comments/invalid_comment/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:12:2 [E] COM03 Comment starts from the second character in the line -------------------------------------------------------------------------------- /tests/linter/rules/comments/invalid_comment/test_rule.py: -------------------------------------------------------------------------------- 1 | from tests.linter.utils import RuleAcceptance 2 | 3 | 4 | class TestRuleAcceptance(RuleAcceptance): 5 | def test_rule(self): 6 | self.check_rule(src_files=["test.robot"], expected_file="expected_output.txt", test_on_version="<4") 7 | -------------------------------------------------------------------------------- /tests/linter/rules/comments/missing_space_after_comment/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/comments/missing_space_after_comment/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/comments/todo_in_comment/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/comments/todo_in_comment/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/custom_tests/project_checker/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/custom_tests/project_checker/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/custom_tests/project_checker/expected_output.txt: -------------------------------------------------------------------------------- 1 | file1.robot:1:1 [I] 9901 This check will be called after visiting all files 2 | file2.robot:1:1 [I] 9901 This check will be called after visiting all files 3 | Project-name:1:1 [I] 9902 There is total of 3 tests in the project. -------------------------------------------------------------------------------- /tests/linter/rules/custom_tests/project_checker/file1.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | Pass 4 | 5 | Test 6 | Pass 7 | -------------------------------------------------------------------------------- /tests/linter/rules/custom_tests/project_checker/file2.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | Pass 4 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_singular_header/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/deprecated_singular_header/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_singular_header/language.robot: -------------------------------------------------------------------------------- 1 | *** Komentarze *** 2 | *** Ustawienia *** 3 | *** Zmienne *** 4 | *** Przypadki testowe *** 5 | *** Słowa kluczowe *** 6 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_statement/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/deprecated_statement/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_statement/expected_output_force_tags.txt: -------------------------------------------------------------------------------- 1 | force_tags.robot:2:1 [W] DEPR02 'Force Tags' is deprecated since Robot Framework version 6.0, use 'Test Tags' instead -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_statement/force_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Force Tags tag 3 | Test Tags other tag 4 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_statement/templated_suite.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Run Keyword Unless 3 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_with_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/deprecated_with_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_with_name/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:22 [W] DEPR03 Deprecated 'WITH NAME' alias marker used instead of 'AS' -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/deprecated_with_name/test.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library Library 3 | Library Library WITH NAME Library2 4 | Library Library AS Library2 5 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/if_can_be_used/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/if_can_be_used/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/if_can_be_used/test_rule.py: -------------------------------------------------------------------------------- 1 | from tests.linter.utils import RuleAcceptance 2 | 3 | 4 | class TestRuleAcceptance(RuleAcceptance): 5 | def test_rule(self): 6 | self.check_rule(src_files=["test.robot"], expected_file="expected_output.txt", test_on_version="==4") 7 | -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/replace_create_with_var/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/replace_create_with_var/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/deprecated/replace_set_variable_with_var/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/deprecated/replace_set_variable_with_var/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/documentation/missing_doc_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_keyword/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:15:1 DOC01 Missing documentation in 'Keyword' keyword 2 | | 3 | 13 | 4 | 14 | *** Keywords *** 5 | 15 | Keyword 6 | | ^^^^^^^ DOC01 7 | 16 | No Operation 8 | 17 | Pass 9 | | 10 | 11 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_keyword/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:15:1 [W] DOC01 Missing documentation in 'Keyword' keyword -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/documentation/missing_doc_resource_file/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/documentation.resource: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Resource file documentation 3 | 4 | 5 | *** Keywords *** 6 | Keyword 7 | [Documentation] this is doc 8 | No Operation 9 | Pass 10 | No Operation 11 | Fail 12 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.resource:1:1 DOC04 Missing documentation in resource file 2 | with_settings.resource:1:1 DOC04 Missing documentation in resource file -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.resource:1:1 [W] DOC04 Missing documentation in resource file 2 | with_settings.resource:1:1 [W] DOC04 Missing documentation in resource file -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/test.resource: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Documentation] this is doc 4 | No Operation 5 | Pass 6 | No Operation 7 | Fail 8 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_resource_file/with_settings.resource: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource ./some-valid-file.resource 3 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_suite/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/documentation/missing_doc_suite/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_suite/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 DOC03 Missing documentation in suite -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_suite/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 [W] DOC03 Missing documentation in suite -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_suite/test.resource: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | [Documentation] this is doc 4 | No Operation 5 | Pass 6 | No Operation 7 | Fail 8 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/documentation/missing_doc_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_test_case/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:6:1 DOC02 Missing documentation in 'Test' test case 2 | | 3 | 4 | 4 | 5 | *** Test Cases *** 5 | 6 | Test 6 | | ^^^^ DOC02 7 | 7 | [Tags] sometag 8 | 8 | Pass 9 | | 10 | 11 | -------------------------------------------------------------------------------- /tests/linter/rules/documentation/missing_doc_test_case/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:6:1 [W] DOC02 Missing documentation in 'Test' test case 2 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/both_tests_and_tasks/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/both_tests_and_tasks/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/both_tests_and_tasks/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:14:1 [E] DUP09 Both Task(s) and Test Case(s) section headers defined in file 2 | test2.robot:3:1 [E] DUP09 Both Task(s) and Test Case(s) section headers defined in file -------------------------------------------------------------------------------- /tests/linter/rules/duplications/both_tests_and_tasks/test2.robot: -------------------------------------------------------------------------------- 1 | *** Tasks *** 2 | Documentation abc 3 | *** Test Cases *** 4 | Documentation some 5 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_keyword/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:25:1 DUP02 Multiple keywords with name 'Duplicated Keyword' (first occurrence in line 15) 2 | | 3 | 25 | Duplicated Keyword 4 | | ^^^^^^^^^^^^^^^^^^ DUP02 5 | 26 | No Operation 6 | | 7 | 8 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_keyword/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:25:1 [E] DUP02 Multiple keywords with name 'Duplicated Keyword' (first occurrence in line 15) -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_library/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_library/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_metadata/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_metadata/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_metadata/__init__.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Metadata some text 3 | Metadata some text2 4 | Metadata some text 5 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_metadata/expected_extended.txt: -------------------------------------------------------------------------------- 1 | __init__.robot:4:1 DUP06 Duplicated metadata 'some text' (first occurrence in line 2) 2 | | 3 | 2 | Metadata some text 4 | 3 | Metadata some text2 5 | 4 | Metadata some text 6 | | ^^^^^^^^^^^^^^^^^^^ DUP06 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_metadata/expected_output.txt: -------------------------------------------------------------------------------- 1 | __init__.robot:4:1 [W] DUP06 Duplicated metadata 'some text' (first occurrence in line 2) -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_resource/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_resource/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_resource/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:5:1 [W] DUP04 Multiple resource imports with path 'resource.robot' (first occurrence in line 3) -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_setting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_setting/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_setting/unrecognized_header.robot: -------------------------------------------------------------------------------- 1 | *** Kommentit *** 2 | Some general comments 3 | 4 | 5 | *** Settings *** 6 | Documentation Suite doc. 7 | 8 | 9 | *** Test Cases *** 10 | Test 11 | [Documentation] doc. 12 | No Operation 13 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_variable/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:1 [E] DUP03 Multiple variables with name '${V AR}' in Variables section (first occurrence in line 6) 2 | test.robot:9:1 [E] DUP03 Multiple variables with name '${other_var}' in Variables section (first occurrence in line 7) 3 | -------------------------------------------------------------------------------- /tests/linter/rules/duplications/duplicated_variables_import/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/duplicated_variables_import/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/duplications/section_already_defined/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/duplications/section_already_defined/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_continuation_mark/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/invalid_continuation_mark/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_continuation_mark/settings_errors.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Default Tags tag 3 | ... tag2 4 | 5 | Force Tags tag 6 | .. tag2 -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_for_loop/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/invalid_for_loop/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_if/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/invalid_if/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_section_in_resource/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/invalid_section_in_resource/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_section_in_resource/task.resource: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | No Operation 4 | 5 | 6 | *** Tasks *** 7 | Task 8 | Keyword 9 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_section_in_resource/test.resource: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test case 3 | Step 4 | 5 | *** tasks *** -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_section_in_resource/test_lang.resource: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Przypadki Testowe *** 4 | Test case 5 | Step 6 | 7 | *** Ustawienia *** -------------------------------------------------------------------------------- /tests/linter/rules/errors/invalid_setting_in_resource/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/invalid_setting_in_resource/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/missing_keyword_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/missing_keyword_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/non_existing_setting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/non_existing_setting/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/parsing_error/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/parsing_error/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/parsing_error/resource_with_test.resource: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test case 3 | Step 4 | 5 | *** task *** -------------------------------------------------------------------------------- /tests/linter/rules/errors/parsing_error/resource_with_test_lang.resource: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Przypadki Testowe *** 4 | Test case 5 | Step 6 | 7 | *** Ustawienia *** -------------------------------------------------------------------------------- /tests/linter/rules/errors/return_in_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/return_in_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/setting_not_supported/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/setting_not_supported/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/unsupported_setting_in_init_file/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/__init__.resource: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Template 3 | Default Tags tag 4 | Documentation some documentation 5 | 6 | 7 | *** Variables *** 8 | ${VAR} a 9 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/__init__.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template template 3 | Default Tags tag 4 | Documentation some documentation 5 | 6 | 7 | *** Variables *** 8 | ${VAR} a 9 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/pl_language/__init__.resource: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Ustawienia *** 4 | Szablon testu template 5 | Znaczniki domyślne tag 6 | Dokumentacja some documentation 7 | 8 | 9 | *** Zmienne *** 10 | ${VAR} a 11 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/pl_language/__init__.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Ustawienia *** 4 | Szablon testu template 5 | Znaczniki domyślne tag 6 | Dokumentacja some documentation 7 | 8 | 9 | *** Zmienne *** 10 | ${VAR} a 11 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/pl_language/test.robot: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Ustawienia *** 4 | Szablon testu template 5 | Znaczniki domyślne tag 6 | Dokumentacja some documentation 7 | 8 | 9 | *** Zmienne *** 10 | ${VAR} a 11 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/unsupported_setting_in_init_file/test.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Template 3 | Default Tags tag 4 | Documentation some documentation 5 | 6 | 7 | *** Variables *** 8 | ${VAR} a 9 | -------------------------------------------------------------------------------- /tests/linter/rules/errors/variables_import_with_args/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/errors/variables_import_with_args/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/errors/variables_import_with_args/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:11:1 [E] ERR04 YAML variable files do not take arguments 2 | test.robot:12:1 [E] ERR04 YAML variable files do not take arguments -------------------------------------------------------------------------------- /tests/linter/rules/imports/builtin_imports_not_sorted/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/imports/builtin_imports_not_sorted/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/imports/builtin_imports_not_sorted/no_imports.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource ..${/}Libs${/}MyResource.robot 3 | Variables variables.py 4 | Test Template Keyword 5 | 6 | 7 | *** Keywords *** 8 | Keyword 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/imports/non_builtin_imports_not_sorted/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/imports/non_builtin_imports_not_sorted/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/imports/non_builtin_imports_not_sorted/expected_output.txt: -------------------------------------------------------------------------------- 1 | no_builtins.robot:4:12 [W] IMP03 Non builtin library import 'OwnLib.py' should be placed before 'RequestsLibrary' 2 | test.robot:9:12 [W] IMP03 Non builtin library import 'AnotherLibrary' should be placed before 'RequestsLibrary' -------------------------------------------------------------------------------- /tests/linter/rules/imports/non_builtin_imports_not_sorted/no_imports.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource ..${/}Libs${/}MyResource.robot 3 | Variables variables.py 4 | Test Template Keyword 5 | 6 | 7 | *** Keywords *** 8 | Keyword 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/imports/resources_imports_not_sorted/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/imports/resources_imports_not_sorted/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/imports/resources_imports_not_sorted/no_resources.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Library RequestsLibrary 3 | Variables variables.py 4 | Test Template Keyword 5 | 6 | 7 | *** Keywords *** 8 | Keyword 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/imports/wrong_import_order/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/imports/wrong_import_order/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/imports/wrong_import_order/no_imports.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Resource ..${/}Libs${/}MyResource.robot 3 | Variables variables.py 4 | Test Template Keyword 5 | 6 | 7 | *** Keywords *** 8 | Keyword 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/keywords/no_embedded_keyword_arguments/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/keywords/no_embedded_keyword_arguments/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/keywords/not_allowed_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/keywords/not_allowed_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/keywords/sleep_keyword_used/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/keywords/sleep_keyword_used/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/keywords/sleep_keyword_used/expected_output_1min.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/keywords/sleep_keyword_used/expected_output_1min.txt -------------------------------------------------------------------------------- /tests/linter/rules/keywords/sleep_keyword_used/expected_output_1s.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:5 [W] KW01 Sleep keyword with '10s' sleep time found 2 | test.robot:14:9 [W] KW01 Sleep keyword with '1 min' sleep time found -------------------------------------------------------------------------------- /tests/linter/rules/keywords/unused_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/keywords/unused_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_arguments/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_arguments/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_arguments/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:17:5 [E] LEN26 Arguments of 'Keyword Without Arguments' Keyword are empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_default_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_default_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_default_tags/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN14 Default Tags are empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Default Tags 6 | | ^^^^^^^^^^^^ LEN14 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_default_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [W] LEN14 Default Tags are empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_documentation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_documentation/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_documentation/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:2:1 [W] LEN12 Documentation of Test Suite is empty 2 | test.robot:7:5 [W] LEN12 Documentation of 'Test' Test Case is empty 3 | test.robot:16:5 [W] LEN12 Documentation of 'Keyword' Keyword is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_force_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_force_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_force_tags/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN13 Force Tags are empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Force Tags 6 | | ^^^^^^^^^^ LEN13 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_force_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [W] LEN13 Force Tags are empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_keyword_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_keyword_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_keyword_tags/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN31 Keyword Tags are empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Keyword Tags 6 | | ^^^^^^^^^^^^ LEN31 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_keyword_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [W] LEN31 Keyword Tags are empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_library_import/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_library_import/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_library_import/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN17 Import library path is empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Library 6 | | ^^^^^^^ LEN17 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_library_import/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN17 Import library path is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_metadata/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_metadata/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_metadata/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN11 Metadata settings does not have any value set 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Metadata 6 | | ^ LEN11 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_metadata/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [W] LEN11 Metadata settings does not have any value set -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_resource_import/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_resource_import/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_resource_import/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN16 Import resource path is empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Resource 6 | | ^^^^^^^^ LEN16 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_resource_import/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN16 Import resource path is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_section/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_section/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_section/expected_output.txt: -------------------------------------------------------------------------------- 1 | with_empty_sections.robot:1:1 [W] LEN09 Section '*** Settings ***' is empty 2 | with_empty_sections.robot:13:1 [W] LEN09 Section '*** Keywords ***' is empty 3 | with_empty_sections.robot:17:1 [W] LEN09 Section '*** Variables ***' is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_section/missing_header_in_rf5.robot: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | *Test Case* Whatever 23 | Suite1 Test No Operation 24 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_setup/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_setup/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_setup/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:9:5 [E] LEN18 Setup of 'Test' Test Case does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_setup/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_suite_setup/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_setup/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN19 Suite Setup does not have any keywords 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Suite Setup 6 | | ^^^^^^^^^^^ LEN19 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_setup/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN19 Suite Setup does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_teardown/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_suite_teardown/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_teardown/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN22 Suite Teardown does not have any keywords 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Suite Teardown 6 | | ^^^^^^^^^^^^^^ LEN22 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_suite_teardown/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN22 Suite Teardown does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_teardown/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_teardown/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_teardown/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:21:5 LEN21 Teardown of 'Keyword' Keyword does not have any keywords 2 | | 3 | 19 | No Operation 4 | 20 | Fail 5 | 21 | [Teardown] 6 | | ^^^^^^^^^^ LEN21 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_teardown/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:21:5 [E] LEN21 Teardown of 'Keyword' Keyword does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_template/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_template/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_template/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:14:5 [W] LEN30 Template of 'Test with empty template' Test Case is empty. To overwrite suite Test Template use more explicit [Template] NONE -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_setup/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_test_setup/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_setup/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN20 Test Setup does not have any keywords 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Test Setup 6 | | ^^^^^^^^^^ LEN20 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_setup/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN20 Test Setup does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_teardown/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_test_teardown/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_teardown/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN23 Test Teardown does not have any keywords 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Test Teardown 6 | | ^^^^^^^^^^^^^ LEN23 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_teardown/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN23 Test Teardown does not have any keywords -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_template/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_test_template/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_template/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:2:1 LEN29 Test Template is empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Test Template 5 | | ^^^^^^^^^^^^^ LEN29 6 | | 7 | 8 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_template/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:2:1 [E] LEN29 Test Template is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_timeout/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_test_timeout/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_timeout/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN25 Test Timeout is empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Test Timeout 6 | | ^^^^^^^^^^^^ LEN25 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_test_timeout/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [W] LEN25 Test Timeout is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_timeout/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_timeout/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_timeout/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:5 [W] LEN24 Timeout of 'Test' Test Case is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_variables_import/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/empty_variables_import/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_variables_import/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 LEN15 Import variables path is empty 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Variables 6 | | ^^^^^^^^^ LEN15 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/empty_variables_import/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [E] LEN15 Import variables path is empty -------------------------------------------------------------------------------- /tests/linter/rules/lengths/file_too_long/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/file_too_long/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/file_too_long/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:434:1 LEN28 File has too many lines (434/400) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/file_too_long/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:434:1 [W] LEN28 File has too many lines (434/400) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/file_too_long/expected_output_severity_threshold.txt: -------------------------------------------------------------------------------- 1 | longer.robot:434:1 [E] LEN28 File has too many lines (434/400) 2 | shorter.robot:302:1 [W] LEN28 File has too many lines (302/300) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/file_too_long/expected_output_severity_threshold_only_error.txt: -------------------------------------------------------------------------------- 1 | longer.robot:434:1 [E] LEN28 File has too many lines (434/400) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/line_too_long/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/line_too_long/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/line_too_long/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:17:120 [W] LEN08 Line is too long (139/120) 2 | test.robot:27:120 [W] LEN08 Line is too long (159/120) 3 | test.robot:30:120 [W] LEN08 Line is too long (139/120) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/line_too_long/expected_output_severity_threshold.txt: -------------------------------------------------------------------------------- 1 | severity_threshold.robot:17:120 [W] LEN08 Line is too long (139/100) 2 | severity_threshold.robot:27:120 [E] LEN08 Line is too long (159/150) 3 | severity_threshold.robot:30:120 [W] LEN08 Line is too long (139/100) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/number_of_returned_values/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/number_of_returned_values/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/number_of_returned_values/expected_output_pre_rf5.txt: -------------------------------------------------------------------------------- 1 | test.robot:27:5 [W] LEN10 Too many return values (5/4) 2 | test.robot:31:9 [W] LEN10 Too many return values (5/4) 3 | test.robot:47:5 [W] LEN10 Too many return values (5/4) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/number_of_returned_values/expected_output_severity_threshold.txt: -------------------------------------------------------------------------------- 1 | severity.robot:31:9 [E] LEN10 Too many return values (6/6) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/number_of_returned_values/expected_output_severity_threshold_rf5.txt: -------------------------------------------------------------------------------- 1 | severity.robot:31:9 [E] LEN10 Too many return values (6/6) 2 | severity.robot:41:13 [E] LEN10 Too many return values (6/6) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_few_calls_in_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_keyword/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:30:1 [W] LEN02 Keyword 'Empty Keyword' has too few keywords inside (0/1) 2 | test.robot:32:1 [W] LEN02 Keyword 'Keyword' has too few keywords inside (0/1) 3 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_keyword/expected_output_bug629.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_few_calls_in_keyword/expected_output_bug629.txt -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_keyword/expected_output_bug629_rf3.txt: -------------------------------------------------------------------------------- 1 | bug629.robot:35:1 [W] LEN02 Keyword 'Inline IF' has too few keywords inside (1/1) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_keyword/expected_output_bug629_rf4.txt: -------------------------------------------------------------------------------- 1 | bug629.robot:35:1 [E] LEN02 Keyword 'Inline IF' has too few keywords inside (0/0) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_few_calls_in_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_few_calls_in_test_case/bug629/expected_output.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_few_calls_in_test_case/bug629/expected_output.txt -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_long_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_keyword/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:15:1 [W] LEN01 Keyword 'Some Keyword' is too long (46/40) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_keyword/expected_output_ignore_docs.txt: -------------------------------------------------------------------------------- 1 | ignore_docs.robot:15:1 [W] LEN01 Keyword 'Keyword' is too long (44/40) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_keyword/expected_output_severity_threshold.txt: -------------------------------------------------------------------------------- 1 | severity_threshold.robot:15:1 [W] LEN01 Keyword 'Keyword' is too long (44/40) 2 | severity_threshold.robot:61:1 [E] LEN01 Keyword 'Keyword2' is too long (51/50) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_long_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_test_case/expected_output_ignore_docs.txt: -------------------------------------------------------------------------------- 1 | test.robot:29:1 [W] LEN04 Test case 'Test with comments at the end' is too long (23/20) 2 | test.robot:54:1 [W] LEN04 Test case 'Test with comments that are not part of the test' is too long (23/20) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_long_test_case/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | severity.robot:6:1 [E] LEN04 Test case 'Test' is too long (22/20) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_arguments/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_many_arguments/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_arguments/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:17:5 [W] LEN07 Keyword 'Keyword With Too Many Arguments' has too many arguments (6/5) 2 | test.robot:25:5 [W] LEN07 Keyword 'Keyword With Too Many Arguments In Multi Lines' has too many arguments (6/5) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_arguments/expected_output_disablers.txt: -------------------------------------------------------------------------------- 1 | disablers.robot:21:5 [W] LEN07 Keyword 'Should Be Reported' has too many arguments (2/1) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_arguments/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | severity.robot:17:5 [W] LEN07 Keyword 'Keyword With Too Many Arguments' has too many arguments (6/5) 2 | severity.robot:25:5 [E] LEN07 Keyword 'Keyword With Too Many Arguments In Multi Lines' has too many arguments (7/7) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_keyword/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_many_calls_in_keyword/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_keyword/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:15:1 [W] LEN03 Keyword 'Some Keyword' has too many keywords inside (11/10) 2 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_keyword/expected_output_groups.txt: -------------------------------------------------------------------------------- 1 | groups.robot:15:1 [W] LEN03 Keyword 'Some Keyword' has too many keywords inside (11/10) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_keyword/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | severity.robot:15:1 [E] LEN03 Keyword 'Keyword' has too many keywords inside (11/10) 2 | severity.robot:31:1 [W] LEN03 Keyword 'Keyword 2' has too many keywords inside (6/5) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_test_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_many_calls_in_test_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_test_case/ignore_templated/expected_output.txt: -------------------------------------------------------------------------------- 1 | ignore_templated${/}test.robot:6:1 [W] LEN06 Test case 'Test' has too many keywords inside (13/10) 2 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_calls_in_test_case/severity/expected_output.txt: -------------------------------------------------------------------------------- 1 | severity${/}test.robot:6:1 [E] LEN06 Test case 'Test' has too many keywords inside (13/10) 2 | severity${/}test.robot:23:1 [W] LEN06 Test case 'Test 2' has too many keywords inside (7/5) -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/lengths/too_many_test_cases/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 [W] LEN27 Too many test cases (51/50) 2 | templated_test.robot:5:1 [W] LEN27 Too many test cases (101/100) 3 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/severity/expected_output.txt: -------------------------------------------------------------------------------- 1 | severity${/}four.robot:1:1 [E] LEN27 Too many test cases (4/4) 2 | severity${/}templated_test_4.robot:5:1 [E] LEN27 Too many test cases (4/4) 3 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/severity/four.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test Case 1 3 | No Operation 4 | 5 | Test Case 2 6 | No Operation 7 | 8 | Test Case 3 9 | No Operation 10 | 11 | Test Case 4 12 | No Operation 13 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/severity/templated_test_3.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Keyword 3 | 4 | 5 | *** Test Cases *** 6 | TestCase1 ${arg} ${arg} 7 | TestCase2 ${arg} ${arg} 8 | TestCase3 ${arg} ${arg} 9 | -------------------------------------------------------------------------------- /tests/linter/rules/lengths/too_many_test_cases/severity/three.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test Case 1 3 | No Operation 4 | 5 | Test Case 2 6 | No Operation 7 | 8 | Test Case 3 9 | No Operation 10 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/can_be_resource_file/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/__init__.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Some Keyword 4 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/empty.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/can_be_resource_file/empty.robot -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/expected_extended.txt: -------------------------------------------------------------------------------- 1 | no_test.robot:1:1 MISC06 No tests in 'no_test.robot' file, consider renaming to 'no_test.resource' -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/expected_output.txt: -------------------------------------------------------------------------------- 1 | no_test.robot:1:1 [I] MISC06 No tests in 'no_test.robot' file, consider renaming to 'no_test.resource' -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/no_test.resource: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Some Keyword 4 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/no_test.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Some Keyword 4 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/no_test_with_disabler.robot: -------------------------------------------------------------------------------- 1 | # robocop: off=MISC06 2 | *** Keywords *** 3 | Keyword 4 | Some Keyword 5 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/can_be_resource_file/test.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | My Test 3 | No Operation 4 | 5 | 6 | *** Keywords *** 7 | Keyword 8 | Some Keyword 9 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/empty_return/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/empty_return/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/empty_return/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:21:5 MISC02 [Return] is empty 2 | | 3 | 19 | No Operation 4 | 20 | Fail 5 | 21 | [Return] 6 | | ^^^^^^^ MISC02 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/empty_return/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:21:5 [W] MISC02 [Return] is empty -------------------------------------------------------------------------------- /tests/linter/rules/misc/expression_can_be_simplified/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/expression_can_be_simplified/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/if_can_be_merged/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/if_can_be_merged/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/inconsistent_assignment/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment/autodetect/expected_output.txt: -------------------------------------------------------------------------------- 1 | autodetect${/}test.robot:30:15 [W] MISC04 The assignment sign is not consistent within the file. Expected '' but got '=' instead 2 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:25:5 [W] MISC04 The assignment sign is not consistent within the file. Expected '' but got ' =' instead 2 | test.robot:31:15 [W] MISC04 The assignment sign is not consistent within the file. Expected '' but got '=' instead 3 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment/variable_type_conversion_expected.txt: -------------------------------------------------------------------------------- 1 | variable_type_conversion.robot:17:17 [W] MISC04 The assignment sign is not consistent within the file. Expected '' but got ' =' instead -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment_in_variables/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/inconsistent_assignment_in_variables/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment_in_variables/autodetect/expected_output.txt: -------------------------------------------------------------------------------- 1 | autodetect${/}test.robot:7:1 [W] MISC05 The assignment sign is not consistent inside the variables section. Expected ' =' but got '=' instead -------------------------------------------------------------------------------- /tests/linter/rules/misc/inconsistent_assignment_in_variables/variable_type_conversion_expected.txt: -------------------------------------------------------------------------------- 1 | variable_type_conversion.robot:7:1 [W] MISC05 The assignment sign is not consistent inside the variables section. Expected '' but got ' =' instead -------------------------------------------------------------------------------- /tests/linter/rules/misc/inline_if_can_be_used/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/inline_if_can_be_used/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/inline_if_can_be_used/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:5 [I] MISC09 IF can be replaced with inline IF -------------------------------------------------------------------------------- /tests/linter/rules/misc/inline_if_can_be_used/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | severity.robot:3:5 [I] MISC09 IF can be replaced with inline IF 2 | severity.robot:25:5 [W] MISC09 IF can be replaced with inline IF -------------------------------------------------------------------------------- /tests/linter/rules/misc/keyword_after_return/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/keyword_after_return/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/misplaced_negative_condition/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/misplaced_negative_condition/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/multiline_inline_if/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/multiline_inline_if/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/nested_for_loop/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/nested_for_loop/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/nested_for_loop/expected_extended.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/nested_for_loop/expected_extended.txt -------------------------------------------------------------------------------- /tests/linter/rules/misc/nested_for_loop/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:20:9 [E] MISC03 Nested for loops are not supported. You can use keyword with for loop instead -------------------------------------------------------------------------------- /tests/linter/rules/misc/nested_for_loop/test_rule.py: -------------------------------------------------------------------------------- 1 | from tests.linter.utils import RuleAcceptance 2 | 3 | 4 | class TestRuleAcceptance(RuleAcceptance): 5 | def test_rule(self): 6 | self.check_rule(src_files=["test.robot"], expected_file="expected_output.txt", test_on_version="<4.0") 7 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/statement_outside_loop/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/statement_outside_loop/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/unnecessary_string_conversion/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/unnecessary_string_conversion/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/misc/unnecessary_string_conversion/test_rule.py: -------------------------------------------------------------------------------- 1 | from tests.linter.utils import RuleAcceptance 2 | 3 | 4 | class TestRuleAcceptance(RuleAcceptance): 5 | def test_rule(self): 6 | self.check_rule(src_files=["test.robot"], deprecated=True) 7 | -------------------------------------------------------------------------------- /tests/linter/rules/misc/unreachable_code/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/misc/unreachable_code/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/bdd_without_keyword_call/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/bdd_without_keyword_call/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/bdd_without_keyword_call/keyword_with_bdd.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | GIVEN 3 | Log To Console hi 4 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/duplicated_library_alias/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/duplicated_library_alias/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/duplicated_library_alias/expected_output_pre_rf6_0.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:40 [W] NAME13 Library alias is the same as original name 2 | test.robot:7:42 [W] NAME13 Library alias is the same as original name -------------------------------------------------------------------------------- /tests/linter/rules/naming/else_not_upper_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/else_not_upper_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/else_not_upper_case/expected_output_rf3.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/else_not_upper_case/expected_output_rf3.txt -------------------------------------------------------------------------------- /tests/linter/rules/naming/else_not_upper_case/expected_output_rf5.txt: -------------------------------------------------------------------------------- 1 | test.robot:11:5 [E] NAME09 ELSE and ELSE IF is not uppercase 2 | test.robot:18:5 [E] NAME09 ELSE and ELSE IF is not uppercase -------------------------------------------------------------------------------- /tests/linter/rules/naming/empty_library_alias/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/empty_library_alias/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/empty_library_alias/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:29 [E] NAME12 Library alias is empty 2 | test.robot:4:34 [E] NAME12 Library alias is empty 3 | test.robot:6:34 [E] NAME12 Library alias is empty 4 | test.robot:10:44 [E] NAME12 Library alias is empty -------------------------------------------------------------------------------- /tests/linter/rules/naming/empty_library_alias/expected_output_pre_rf6.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:29 [E] NAME12 Library alias is empty 2 | test.robot:4:34 [E] NAME12 Library alias is empty -------------------------------------------------------------------------------- /tests/linter/rules/naming/invalid_section/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/invalid_section/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/invalid_section/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 [E] NAME16 Invalid section '*** Kommentit ***' 2 | test.robot:9:1 [E] NAME16 Invalid section '*** Testit ***' 3 | test.robot:14:1 [E] NAME16 Invalid section '*** Bad ***' -------------------------------------------------------------------------------- /tests/linter/rules/naming/invalid_section/test.robot: -------------------------------------------------------------------------------- 1 | *** Kommentit *** 2 | Some general comments 3 | 4 | 5 | *** Settings *** 6 | Documentation Suite doc. 7 | 8 | 9 | *** Testit *** 10 | Test 11 | [Documentation] doc. 12 | No Operation 13 | 14 | *** Bad *** 15 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/invalid_section/test_lang.resource: -------------------------------------------------------------------------------- 1 | language: pl 2 | 3 | *** Przypadki Testowe *** 4 | Test case 5 | Step 6 | 7 | *** Ustawienia *** -------------------------------------------------------------------------------- /tests/linter/rules/naming/invalid_section/test_lang_no_header.resource: -------------------------------------------------------------------------------- 1 | *** Przypadki Testowe *** 2 | Test case 3 | Step 4 | 5 | *** Ustawienia *** -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_empty/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/keyword_name_is_empty/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_empty/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:1 NAME10 Keyword name is empty 2 | | 3 | 6 | *** Keywords *** 4 | 7 | # no keyword name here!!! 5 | 8 | Log To Console hi 6 | | ^ NAME10 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_empty/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:8:1 [E] NAME10 Keyword name is empty -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_empty/test.robot: -------------------------------------------------------------------------------- 1 | *** Test Case *** 2 | first 3 | first kw 4 | 5 | 6 | *** Keywords *** 7 | # no keyword name here!!! 8 | Log To Console hi 9 | 10 | First kw 11 | Log To Console hello 12 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_reserved_word/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/keyword_name_is_reserved_word/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/keyword_name_is_reserved_word/templated_suite.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template End 3 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/mixed_task_test_settings/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/mixed_task_test_settings/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/mixed_task_test_settings/__init__.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation Initialization file for suite of tasks 3 | Task Tags task 4 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_filename/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/allowed_suite_foo.bar.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_filename/allowed_suite_foo.bar.robot -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/expected_extended.txt: -------------------------------------------------------------------------------- 1 | not_allowed_suite_foo.bar.robot:1:21 NAME15 Not allowed character '.' found in suite name 2 | suite.withdot${/}__init__.robot:1:5 NAME15 Not allowed character '.' found in suite name -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/expected_output.txt: -------------------------------------------------------------------------------- 1 | not_allowed_suite_foo.bar.robot:1:21 [W] NAME15 Not allowed character '.' found in suite name 2 | suite.withdot${/}__init__.robot:1:5 [W] NAME15 Not allowed character '.' found in suite name -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/expected_output_configured.txt: -------------------------------------------------------------------------------- 1 | suite.withdot${/}__init__.robot:1:5 [W] NAME15 Not allowed character '.' found in suite name -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/not_allowed_suite_foo.bar.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_filename/not_allowed_suite_foo.bar.robot -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_filename/suite.withdot/__init__.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_filename/suite.withdot/__init__.robot -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_allowed_char_in_name/configure2/expected_output.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_allowed_char_in_name/configure2/expected_output.txt -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_capitalized_test_case_title/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/not_capitalized_test_case_title/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_capitalized_test_case_title/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:5:1 NAME07 Test case 'test not capitalized' title does not start with capital letter 2 | | 3 | 5 | test not capitalized 4 | | ^^^^^^^^^^^^^^^^^^^^ NAME07 5 | 6 | Pass Execution 6 | | 7 | 8 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/not_capitalized_test_case_title/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:5:1 [W] NAME07 Test case 'test not capitalized' title does not start with capital letter -------------------------------------------------------------------------------- /tests/linter/rules/naming/section_name_invalid/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/section_name_invalid/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/section_variable_not_uppercase/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/section_variable_not_uppercase/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/setting_name_not_in_title_case/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/setting_name_not_in_title_case/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/test_case_name_is_empty/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/test_case_name_is_empty/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/test_case_name_is_empty/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:4:1 NAME11 Test case name is empty 2 | | 3 | 2 | 4 | 3 | # no test case name!!! 5 | 4 | Log To Console hello 6 | | ^ NAME11 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/test_case_name_is_empty/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:4:1 [E] NAME11 Test case name is empty -------------------------------------------------------------------------------- /tests/linter/rules/naming/test_case_name_is_empty/templated.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Keyword 3 | 4 | 5 | *** Test Cases *** 6 | TestCase ${arg} ${arg} 7 | TestCase1 ${arg} ${arg} 8 | TestCase2 ${arg} ${arg} 9 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/test_case_name_is_empty/test.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | 3 | # no test case name!!! 4 | Log To Console hello 5 | 6 | Proper test 7 | [documentation] doc 8 | [tags] sometag 9 | Pass 10 | Keyword 11 | One More 12 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/underscore_in_keyword_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/underscore_in_keyword_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/underscore_in_keyword_name/templated_suite.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template With_Underscore 3 | -------------------------------------------------------------------------------- /tests/linter/rules/naming/wrong_case_in_keyword_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/naming/wrong_case_in_keyword_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/naming/wrong_case_in_keyword_name/templated_suite.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template lowercase 3 | -------------------------------------------------------------------------------- /tests/linter/rules/order/keyword_section_out_of_order/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/order/keyword_section_out_of_order/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/order/section_out_of_order/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/order/section_out_of_order/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/order/test_case_section_out_of_order/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/order/test_case_section_out_of_order/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/order/test_case_section_out_of_order/expected_output_teardown_keyword.txt: -------------------------------------------------------------------------------- 1 | test.robot:9:5 [W] ORD01 'TEARDOWN' is in wrong place of Test Case. Recommended order of elements in Test Cases: TEARDOWN, KEYWORD 2 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/bad_block_indent/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/bad_block_indent/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/bad_block_indent/expected_groups.txt: -------------------------------------------------------------------------------- 1 | groups.robot:4:1 [E] SPC17 Not enough indentation inside block 2 | groups.robot:10:1 [E] SPC17 Not enough indentation inside block 3 | groups.robot:12:1 [E] SPC17 Not enough indentation inside block -------------------------------------------------------------------------------- /tests/linter/rules/spacing/bad_block_indent/groups.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test with groups 3 | GROUP 4 | Log Not enough indent 5 | END 6 | GROUP 7 | Log Enough indent 8 | END 9 | GROUP Nested 10 | GROUP 11 | Single 12 | END 13 | END 14 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/bad_indent/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/bad_indent/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/bad_indent/templated_suite.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Test Template Keyword 3 | 4 | 5 | *** Test Cases *** 6 | Testname1 arg1 1 7 | Testname2 arg1 2 8 | Testname3 arg1 3 9 | Testname4 arg1 4 10 | Testname5 arg1 5 11 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/consecutive_empty_lines/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/consecutive_empty_lines/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/consecutive_empty_lines/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | test.robot:46:1 [E] SPC12 Too many consecutive empty lines (3/3) -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_line_after_section/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/empty_line_after_section/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_line_after_section/expected_output_severity.txt: -------------------------------------------------------------------------------- 1 | test.robot:20:1 [E] SPC09 Too many empty lines after '*** Keywords ***' section header (2/2) -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_line_after_section/missing_header.robot: -------------------------------------------------------------------------------- 1 | 2 | # comment 3 | *** Settings *** 4 | Resource Dummy.robot 5 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_between_keywords/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/empty_lines_between_keywords/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_between_sections/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/empty_lines_between_sections/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_between_sections/empty_section.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | *** Keywords *** 3 | Keyword 4 | Log Last section is ignored. 5 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_between_sections/one_section.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Keyword 3 | Keyword Call 4 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_between_test_cases/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/empty_lines_between_test_cases/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/empty_lines_in_statement/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/empty_lines_in_statement/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/first_argument_in_new_line/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/first_argument_in_new_line/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/misaligned_continuation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/misaligned_continuation/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/misaligned_continuation_row/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/misaligned_continuation_row/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/misaligned_continuation_row/expected_output_run_kw.txt: -------------------------------------------------------------------------------- 1 | run_keyword.robot:5:8 [W] SPC15 Continuation line is not aligned with the previous one -------------------------------------------------------------------------------- /tests/linter/rules/spacing/misaligned_continuation_row/expected_output_run_kw_off.txt: -------------------------------------------------------------------------------- 1 | run_keyword.robot:5:8 [W] SPC15 Continuation line is not aligned with the previous one 2 | run_keyword.robot:11:8 [W] SPC15 Continuation line is not aligned with the previous one -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/missing_trailing_blank_line/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:7:1 SPC02 Missing trailing blank line at the end of file 2 | | 3 | 5 | Pass 4 | 6 | Keyword 5 | 7 | No Operation 6 | | ^^^^^^^^^^^^^^^^ SPC02 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:7:1 [W] SPC02 Missing trailing blank line at the end of file -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/test.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | [Tags] sometag 5 | Pass 6 | Keyword 7 | No Operation -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/test2.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | [Tags] sometag 5 | Pass 6 | Keyword 7 | One More 8 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/test3.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | [Tags] sometag 5 | Pass 6 | Keyword 7 | One More 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/missing_trailing_blank_line/test4.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | [Tags] sometag 5 | Pass 6 | Keyword 7 | One More 8 | -------------------------------------------------------------------------------- /tests/linter/rules/spacing/mixed_tabs_and_spaces/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/mixed_tabs_and_spaces/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/mixed_tabs_and_spaces/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 SPC06 Inconsistent use of tabs and spaces in file -------------------------------------------------------------------------------- /tests/linter/rules/spacing/mixed_tabs_and_spaces/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 [W] SPC06 Inconsistent use of tabs and spaces in file -------------------------------------------------------------------------------- /tests/linter/rules/spacing/suite_setting_not_left_aligned/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/suite_setting_not_left_aligned/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/too_many_trailing_blank_lines/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/too_many_trailing_blank_lines/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/too_many_trailing_blank_lines/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:23:1 SPC10 Too many blank lines at the end of file 2 | test2.robot:22:1 SPC10 Too many blank lines at the end of file -------------------------------------------------------------------------------- /tests/linter/rules/spacing/too_many_trailing_blank_lines/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:23:1 [W] SPC10 Too many blank lines at the end of file 2 | test2.robot:22:1 [W] SPC10 Too many blank lines at the end of file -------------------------------------------------------------------------------- /tests/linter/rules/spacing/trailing_whitespace/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/trailing_whitespace/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/spacing/trailing_whitespace/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:5:19 [W] SPC01 Trailing whitespace at the end of line 2 | test.robot:16:33 [W] SPC01 Trailing whitespace at the end of line 3 | test.robot:24:33 [W] SPC01 Trailing whitespace at the end of line -------------------------------------------------------------------------------- /tests/linter/rules/spacing/variable_not_left_aligned/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/spacing/variable_not_left_aligned/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_keyword_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/could_be_keyword_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_keyword_tags/keyword_tags_present.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation docs 3 | Keyword Tags tag 4 | 5 | 6 | *** Keywords *** 7 | Keyword 8 | [Tags] tag 9 | No Operation 10 | 11 | Keyword 2 12 | [Tags] tag tag2 13 | No Operation 14 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_keyword_tags/no_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation docs 3 | 4 | 5 | *** Keywords *** 6 | Keyword 7 | No Operation 8 | 9 | Keyword 2 10 | No Operation 11 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_keyword_tags/only_keywords.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation docs 3 | 4 | 5 | *** Keywords *** 6 | Keyword 7 | [Tags] tag 8 | No Operation 9 | 10 | Keyword 2 11 | [Tags] tag tag2 12 | No Operation 13 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_keyword_tags/two_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Keyword Tags tag3 3 | 4 | 5 | *** Keywords *** 6 | Keyword 7 | [Tags] tag tag2 tag3 8 | No Operation 9 | 10 | Keyword 2 11 | [Tags] tag tag2 tag3 12 | No Operation 13 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_test_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/could_be_test_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_test_tags/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:1:1 TAG05 All tests in suite share these tags: 'sometag' 2 | tests_with_keywords.robot:1:1 TAG05 All tests in suite share these tags: 'sometag' 3 | two_tags.robot:1:1 TAG05 All tests in suite share these tags: 'first, second' -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_test_tags/no_tags.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Documentation] doc 4 | Pass 5 | Keyword 6 | One More -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_test_tags/one_test.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Tags] single 4 | No Operation 5 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/could_be_test_tags/two_tags.robot: -------------------------------------------------------------------------------- 1 | *** Test Cases *** 2 | Test 3 | [Tags] first second 4 | No Operation 5 | 6 | Test 2 7 | [Tags] first second 8 | No Operation 9 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/duplicated_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/duplicated_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/empty_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/empty_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/empty_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | default_and_empty_tags.robot:8:5 [W] TAG08 [Tags] setting without values. Consider using NONE if you want to overwrite the Default Tags 2 | default_and_empty_tags.robot:31:5 [W] TAG08 [Tags] setting without values -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_keyword_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/tag_already_set_in_keyword_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_keyword_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | keyword_tags.robot:8:13 [I] TAG11 Tag 'tag' is already set by Keyword Tags in suite settings 2 | keyword_tags.robot:12:13 [I] TAG11 Tag 'tag' is already set by Keyword Tags in suite settings -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_keyword_tags/keyword_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Documentation docs 3 | Keyword Tags tag 4 | 5 | 6 | *** Keywords *** 7 | Keyword 8 | [Tags] tag 9 | No Operation 10 | 11 | Keyword 2 12 | [Tags] tag tag2 13 | No Operation 14 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_test_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/tag_already_set_in_test_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_test_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:9:13 [I] TAG06 Tag 'sometag' is already set by Force Tags in suite settings -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_already_set_in_test_tags/expected_output_test_tags.txt: -------------------------------------------------------------------------------- 1 | test_tags.robot:9:13 [I] TAG06 Tag 'sometag' is already set by Test Tags in suite settings -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_or_and/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/tag_with_or_and/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_or_and/expected_output_keyword_tags.txt: -------------------------------------------------------------------------------- 1 | keyword_tags.robot:2:17 [I] TAG02 Tag 'tagORtag2' with reserved word OR/AND 2 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_or_and/keyword_tags.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Keyword Tags tagORtag2 tagor tag${OR} 3 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_reserved_word/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/tag_with_reserved_word/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_reserved_word/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:17 [W] TAG03 Tag 'roBot:TEST' prefixed with reserved word `robot:` 2 | test.robot:24:84 [W] TAG03 Tag 'robot:my_tag' prefixed with reserved word `robot:` -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_reserved_word/expected_output_keyword_doc.txt: -------------------------------------------------------------------------------- 1 | keyword_doc.robot:23:105 [W] TAG03 Tag 'robot:my_tag' prefixed with reserved word `robot:` -------------------------------------------------------------------------------- /tests/linter/rules/tags/tag_with_space/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/tag_with_space/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/unnecessary_default_tags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/tags/unnecessary_default_tags/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/tags/unnecessary_default_tags/expected_extended.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 TAG07 Tags defined in Default Tags are always overwritten 2 | | 3 | 1 | *** Settings *** 4 | 2 | Documentation doc 5 | 3 | Default Tags tag othertag 6 | | ^^^^^^^^^^^^ TAG07 7 | | 8 | 9 | -------------------------------------------------------------------------------- /tests/linter/rules/tags/unnecessary_default_tags/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:3:1 [I] TAG07 Tags defined in Default Tags are always overwritten -------------------------------------------------------------------------------- /tests/linter/rules/variables/duplicated_assigned_var_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/duplicated_assigned_var_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/empty_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/empty_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/empty_variable/expected_output_var.txt: -------------------------------------------------------------------------------- 1 | test.robot:51:5 [I] VAR01 Empty variable value 2 | test.robot:53:9 [I] VAR01 Empty variable value 3 | test.robot:54:9 [I] VAR01 Empty variable value 4 | test.robot:62:8 [I] VAR01 Empty variable value -------------------------------------------------------------------------------- /tests/linter/rules/variables/hyphen_in_variable_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/hyphen_in_variable_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/inconsistent_variable_name/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/inconsistent_variable_name/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/no_global_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/no_global_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/no_suite_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/no_suite_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/no_test_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/no_test_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/non_local_variables_should_be_uppercase/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/non_local_variables_should_be_uppercase/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/overwriting_reserved_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/overwriting_reserved_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/possible_variable_overwriting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/possible_variable_overwriting/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/unused_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/unused_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/unused_variable/expected_output_groups.txt: -------------------------------------------------------------------------------- 1 | groups.robot:16:9 [I] VAR02 Variable '${variable}' is assigned but not used -------------------------------------------------------------------------------- /tests/linter/rules/variables/unused_variable/expected_output_loops.txt: -------------------------------------------------------------------------------- 1 | loops.robot:9:5:9:15 [I] VAR02 Variable '${counter}' is assigned but not used 2 | loops.robot:14:9:14:20 [I] VAR02 Variable '${not_used}' is assigned but not used -------------------------------------------------------------------------------- /tests/linter/rules/variables/unused_variable/variable_type_conversion_expected.txt: -------------------------------------------------------------------------------- 1 | variable_type_conversion.robot:8:1 [I] VAR02 Variable '@{HIGH low: int}' is assigned but not used 2 | variable_type_conversion.robot:78:12 [I] VAR02 Variable '${var: int}' is assigned but not used -------------------------------------------------------------------------------- /tests/linter/rules/variables/variable_overwritten_before_usage/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/variables/variable_overwritten_before_usage/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/variables/variable_overwritten_before_usage/expected_output_loops.txt: -------------------------------------------------------------------------------- 1 | loops.robot:43:9:43:20 [W] VAR03 Local variable '${variablE}' is overwritten before usage -------------------------------------------------------------------------------- /tests/linter/rules/variables/variable_overwritten_before_usage/expected_output_pre_var.txt: -------------------------------------------------------------------------------- 1 | test.robot:7:5 [W] VAR03 Local variable '${value}' is overwritten before usage 2 | test.robot:15:5 [W] VAR03 Local variable '${value}' is overwritten before usage -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_newline_marker/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/whitespace/not_enough_whitespace_after_newline_marker/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_newline_marker/settings_errors.robot: -------------------------------------------------------------------------------- 1 | *** Settings *** 2 | Default Tags tag 3 | ... tag2 4 | 5 | Force Tags tag 6 | .. tag2 -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_setting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/whitespace/not_enough_whitespace_after_setting/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_setting/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:7:5 [E] SPC19 Not enough whitespace after '[Documentation]' setting 2 | test.robot:20:5 [E] SPC19 Not enough whitespace after '[Arguments]' setting -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_suite_setting/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/whitespace/not_enough_whitespace_after_suite_setting/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_variable/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/rules/whitespace/not_enough_whitespace_after_variable/__init__.py -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_variable/expected_output.txt: -------------------------------------------------------------------------------- 1 | test.robot:2:1 [E] SPC21 Not enough whitespace after '${VAR} 1' variable name 2 | test.robot:7:1 [E] SPC21 Not enough whitespace after '@{LIST} value' variable name -------------------------------------------------------------------------------- /tests/linter/rules/whitespace/not_enough_whitespace_after_variable/test.robot: -------------------------------------------------------------------------------- 1 | *** Variables *** 2 | ${VAR} 1 3 | ${VAR} 1 4 | ${VAR} 1 5 | VALUE 1 6 | 7 | @{LIST} value 8 | ... value2 -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/config_pyproject/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop.lint] 2 | custom_rules = ["RobocopRules"] -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module/RobocopRules/__init__.py: -------------------------------------------------------------------------------- 1 | from .some_rules import CustomRuleChecker 2 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module/RobocopRules/submodule/__init__.py: -------------------------------------------------------------------------------- 1 | from .some_rules import CustomRuleChecker2 2 | 3 | __all__ = ["CustomRuleChecker2"] 4 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_import_robocop/RobocopCustomRules/__init__.py: -------------------------------------------------------------------------------- 1 | import robocop.linter.rules.naming 2 | from robocop.linter.rules import documentation 3 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_simple_import/RobocopRules/__init__.py: -------------------------------------------------------------------------------- 1 | import RobocopRules.single_rule 2 | from RobocopRules import submodule 3 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_simple_import/RobocopRules/submodule/__init__.py: -------------------------------------------------------------------------------- 1 | from .some_rules import CustomRuleChecker2 2 | 3 | __all__ = ["CustomRuleChecker2"] 4 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_with_relative_import/bar.py: -------------------------------------------------------------------------------- 1 | # Import sibling file 2 | from foo import EXPECTED_KEYWORD 3 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_with_relative_import/foo.py: -------------------------------------------------------------------------------- 1 | # Import inside rules folder 2 | from sub_dir.baz import EXPECTED_KEYWORD 3 | -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_with_relative_import/sub_dir/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/test_data/custom_rules/custom_rule_module_with_relative_import/sub_dir/__init__.py -------------------------------------------------------------------------------- /tests/linter/test_data/custom_rules/custom_rule_module_with_relative_import/sub_dir/baz.py: -------------------------------------------------------------------------------- 1 | EXPECTED_KEYWORD = 'Example' -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/disabled_whole.robot: -------------------------------------------------------------------------------- 1 | # robocop: off 2 | *** Settings *** 3 | Library SomeLib 4 | 5 | *** Test Cases *** 6 | Test 1 7 | Keyword1 8 | 9 | *** Keywords *** 10 | Keyword1 # robocop: off=somerule 11 | Log 1 12 | -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/enabled.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/test_data/disablers/enabled.robot -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/extended_lines1.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Too Long # robocop: off=too-long-keyword 3 | Log 1 4 | Log 2 5 | 6 | Dummy 7 | Log 1 8 | -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/extended_lines2.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Too Long 3 | Log 1 4 | Log 2 5 | # robocop: off=too-long-keyword 6 | 7 | Dummy 8 | Log 1 9 | -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/extended_lines3.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | # robocop: off=too-long-keyword 3 | Too Long 4 | Log 1 5 | Log 2 6 | # robocop: on 7 | 8 | Dummy 9 | Log 1 10 | -------------------------------------------------------------------------------- /tests/linter/test_data/disablers/extended_lines4.robot: -------------------------------------------------------------------------------- 1 | *** Keywords *** 2 | Too Long 3 | Log 1 4 | Log 2 5 | # robocop: off=too-long-keyword 6 | # robocop: on 7 | Dummy 8 | Log 1 9 | -------------------------------------------------------------------------------- /tests/linter/test_data/example_test/pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.robocop.lint] 2 | select = ["X"] 3 | -------------------------------------------------------------------------------- /tests/linter/test_data/example_test/test.robot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MarketSquare/robotframework-robocop/18cf802e65b1728e7f2940b4f1fb020842052b03/tests/linter/test_data/example_test/test.robot --------------------------------------------------------------------------------