Python Build #3025
GitHub Actions / Python Tests
succeeded
Oct 23, 2025 in 1s
493 passed, 0 failed and 2 skipped
✅ junit-test-summary.xml
495 tests were completed in 1521s with 493 passed, 0 failed and 2 skipped.
| Test suite | Passed | Failed | Skipped | Time |
|---|---|---|---|---|
| pytest | 493✅ | 2⚪ | 1521s |
✅ pytest
tests.application.test_copilot_chat.CopilotChatTest
✅ test_approve_manual_intervention_for_deployment
✅ test_approve_manual_intervention_with_guided_failure_interruption
✅ test_count_projects
✅ test_find_retries
✅ test_get_logs
✅ test_get_logs_raw
✅ test_reject_manual_intervention_for_deployment
✅ test_reject_manual_intervention_with_guided_failure_interruption
✅ test_runbook_run
✅ test_runbook_run_with_missing_required_variable
✅ test_runbook_run_with_variables
tests.application.test_copilot_chat_cancel.CopilotChatCancelTest
⚪ test_cancel_deployment
✅ test_cancel_runbook_run
✅ test_cancel_task_already_canceled
✅ test_cancel_task_by_id
✅ test_cancel_task_by_invalid_id
✅ test_cancel_tenanted_deployment
tests.application.test_copilot_chat_create_projects.CopilotChatTestCreateProjects
✅ test_create_account
✅ test_create_azure_function_project
✅ test_create_azure_web_app_project
✅ test_create_azure_web_app_project_with_new_step
✅ test_create_certificate
✅ test_create_environment
✅ test_create_feed
✅ test_create_git_credential
✅ test_create_github_connection
✅ test_create_k8s_project
✅ test_create_k8s_project_no_prompt
✅ test_create_lambda_project
✅ test_create_lambda_project_tenanted
✅ test_create_lambda_project_with_additional_runbook
✅ test_create_lifecycle
✅ test_create_machine_policy
✅ test_create_machine_proxy
✅ test_create_script_module
✅ test_create_step_template
✅ test_create_target
✅ test_create_tenant
✅ test_create_vm_blue_green_project
✅ test_create_worker
✅ test_create_worker_pool
tests.domain.test_kubernetes.TestKubernetesSanitizer
✅ test_fix_lifecycle
✅ test_fix_single_line_retention_policy
✅ test_multiple_name_attributes
✅ test_multiple_occurrences
✅ test_no_change_for_multiline_lifecycle
✅ test_no_change_for_multiline_policy
✅ test_no_change_for_other_content
✅ test_no_change_for_similar_but_different_lifecycle
✅ test_no_changes_needed
✅ test_no_yaml_configs
✅ test_preserves_allowed_characters
✅ test_quotes_preserved
✅ test_sanitize_account_type_fixes_capitalization
✅ test_sanitize_account_type_with_whitespace_variations
✅ test_sanitize_kuberenetes_yaml_step_config
✅ test_sanitize_kuberenetes_yaml_step_config_with_quotes
✅ test_sanitize_multiple_yaml_configs
✅ test_sanitize_name_attributes_allow_interpolation
✅ test_sanitize_name_attributes_replaces_backslashes
✅ test_sanitize_name_attributes_replaces_slashes
✅ test_with_whitespace_variations
✅ test_different_values
✅ test_fix_bad_logic_characters
✅ test_fix_bad_logic_characters2
✅ test_fix_bad_logic_characters3
✅ test_fix_exact_match_single_line_lifecycle
tests.domain.test_limit_array.LimitArrayTest
✅ test_array_or_empty_if_exception
✅ test_count_non_empty_items
✅ test_limit_array_to_max_char_2
✅ test_limit_array_to_max_char_length
✅ test_limit_array_to_max_char_length_none
✅ test_limit_array_to_max_items
✅ test_limit_text_in_array
✅ test_object_or_default_if_exception
✅ test_object_or_none_if_exception
tests.domain.test_list_empty_or_match.ListFilterTest
✅ test_list_empty_or_match
tests.domain.test_log_if_exception.TestLogIfException
✅ test_log_if_exception_with_exception
✅ test_log_if_exception_with_none_logging
✅ test_log_if_exception_without_exception
tests.domain.test_octopus_lookups.TestOctopusLookups
✅ test_lookup_runbooks
✅ test_lookup_space
✅ test_lookup_tenants
✅ test_lookup_environments
✅ test_lookup_projects
tests.domain.test_octopus_project_response.EnsureTests
✅ test_get_octopus_project_names_response
tests.domain.test_octopus_target.TestOctopusTarget
✅ test_has_unknown_steps
✅ test_project_includes_aws_steps
✅ test_project_includes_azure_steps
✅ test_project_includes_gcp_steps
✅ test_project_includes_windows_steps
tests.domain.test_octopus_validation.ApiKeyTest
✅ test_api_key_validation
✅ test_interruption_validation_another_user_taken_responsibility
✅ test_interruption_validation_guided_failure_is_invalid
✅ test_interruption_validation_no_interruptions
✅ test_interruption_validation_user_cant_take_responsibility
✅ test_is_hosted_octopus
tests.domain.test_octopus_version_later_or_equal.ApiKeyTest
✅ test_api_key_validation
tests.domain.test_parse_unknown_format_date.TestParseDates
✅ test_is_offset_aware_with_timezone
✅ test_is_offset_aware_without_timezone
✅ test_parse_unknown_format_date_invalid
✅ test_parse_unknown_format_date_with_timezone
✅ test_parse_unknown_format_date_without_timezone
tests.domain.test_prompt.PromptTest
✅ test_build_deployments_and_releases_prompt
✅ test_hcl_prompt
✅ test_plain_text_prompt
tests.domain.test_query_inspector.QueryInspectorTest
✅ test_exclude_all_accounts
✅ test_exclude_all_certificates
✅ test_exclude_all_environments
✅ test_exclude_all_feeds
✅ test_exclude_all_library_variable_sets
✅ test_exclude_all_lifecycles
✅ test_exclude_all_machine_policies
✅ test_exclude_all_project_groups
✅ test_exclude_all_projects
✅ test_exclude_all_runbooks
✅ test_exclude_all_steps
✅ test_exclude_all_tagsets
✅ test_exclude_all_targets
✅ test_exclude_all_tenants
✅ test_exclude_all_variables
✅ test_exclude_all_worker_pools
✅ test_release_is_latest
tests.domain.test_lookup_space_level_resources.TestLookupSpaceLevelResources
✅ test_lookup_space_level_resources
✅ test_lookup_space_level_resources_only_space
tests.domain.test_markdown.TestRemoveMarkdownCodeBlock
✅ test_remove_markdown_code_block_empty_string
✅ test_remove_markdown_code_block_only_backticks
✅ test_remove_markdown_code_block_partial_code_block
✅ test_remove_markdown_code_block_with_code_block
✅ test_remove_markdown_code_block_with_syntax
✅ test_remove_markdown_code_block_without_code_block
tests.domain.test_markdown_icons.TestMarkdownIcons
✅ test_get_activity_log_state_icon
✅ test_get_github_state_icon
✅ test_get_state_icon
tests.domain.test_markup_to_text.TestMarkdownToText
✅ test_html_to_text_basic
✅ test_html_to_text_empty
✅ test_html_to_text_none
✅ test_html_to_text_with_images
✅ test_html_to_text_with_links
✅ test_html_to_text_with_nested_tags
✅ test_markdown_to_text_basic
✅ test_markdown_to_text_code_snippets
✅ test_markdown_to_text_empty
✅ test_markdown_to_text_images
✅ test_markdown_to_text_links
✅ test_markdown_to_text_none
tests.domain.test_minify_hcl.MinifyTest
✅ test_minify
tests.domain.test_none_on_exception.TestNoneOnException
✅ test_default_on_exception
✅ test_none_on_exception
tests.domain.test_normalize_log_step_name.NormalizeStepName
✅ test_parsing
tests.domain.test_octopus.TestGetRequestHeaders
✅ test_get_cloud_request_headers
✅ test_get_local_request_headers
✅ test_get_onprem_request_headers
tests.domain.test_quote_safe.QuoteSafeTest
✅ test_quote_safe
tests.domain.test_release_is_latest.ReleaseIsLatestTest
✅ test_release_is_latest
tests.domain.test_remove_duplicate_definitions.DuplicateRemovalTest
✅ test_remove_duplicate_data_definitions
✅ test_remove_duplicate_definitions
✅ test_remove_duplicate_definitions_nested
✅ test_remove_duplicate_definitions_nested_inline
✅ test_remove_duplicate_definitions_nested_inline1
✅ test_remove_duplicate_definitions_nested_weird_indents
✅ test_remove_duplicate_definitions_none
✅ test_remove_duplicate_output_definitions
✅ test_remove_duplicate_variable_definitions
✅ test_remove_no_duplicate_definitions
✅ test_valid_definitions_nested_weird_indents
tests.domain.test_replace_with_empty_string.StringSanitizationTest
✅ test_add_spaces_before_capitals
✅ test_remove_double_whitespace
✅ test_remove_empty_lines
✅ test_replace_with_empty_string
✅ test_strip_leading_whitespace
✅ test_to_lower_case_or_none
tests.domain.test_sanitize.SanitizeTests
✅ test_access_key_removed
✅ test_api_key_removed
✅ test_get_item_or_none
✅ test_get_item_or_none_none_array
✅ test_is_re_match
✅ test_message_email_removed
✅ test_none_if_falesy
✅ test_sanitize_message_api_key
✅ test_sanitize_message_empty
✅ test_sanitize_message_github_pat
✅ test_sanitize_message_multiple_sensitive_data
✅ test_sanitize_message_no_sensitive_data
✅ test_sanitize_message_none
tests.domain.test_sanitize_bool.SanitizeBoolTest
✅ test_sanitize_bool
tests.domain.test_sanitize_keywords.TestSanitizeKeywords
✅ test_sanitize_keywords_all_invalid
✅ test_sanitize_keywords_basic
✅ test_sanitize_keywords_case_insensitive
✅ test_sanitize_keywords_empty_list
✅ test_sanitize_keywords_max_keywords
✅ test_sanitize_keywords_with_invalid_keywords
tests.domain.test_sanitize_log_lines.SanitizeLogLinesTest
✅ test_sanitize
tests.domain.test_sanitize_names_fuzzy.TestSanitizeNamesFuzzy
✅ test_sanitize_name_fuzzy_case_insensitive_match
✅ test_sanitize_name_fuzzy_exact_match
✅ test_sanitize_name_fuzzy_fuzzy_match
✅ test_sanitize_name_fuzzy_no_match
✅ test_sanitize_names_fuzzy_case_insensitive_match
✅ test_sanitize_names_fuzzy_exact_match
✅ test_sanitize_names_fuzzy_fuzzy_match
✅ test_sanitize_names_fuzzy_no_match
tests.domain.test_sanitize_prompt.TestSanitizePrompt
✅ test_empty_string
✅ test_no_prefix
✅ test_none_input
✅ test_prefix_in_middle
✅ test_remove_octopus_prefix
tests.domain.test_sanitize_space.TestSanitizeSpace
✅ test_sanitize_space_empty_input_list
✅ test_sanitize_space_empty_query
✅ test_sanitize_space_no_matching_space
✅ test_sanitize_space_with_default_in_query
✅ test_sanitize_space_without_default_in_query
tests.domain.test_sanitized_list.SanitizeList
✅ test_flatten_list_with_empty_lists
✅ test_flatten_list_with_mixed_empty_and_non_empty_lists
✅ test_flatten_list_with_nested_lists
✅ test_flatten_list_with_no_nested_lists
✅ test_flatten_list_with_single_list
✅ test_force_to_list_with_boolean
✅ test_force_to_list_with_integer
✅ test_force_to_list_with_list
✅ test_force_to_list_with_none
✅ test_force_to_list_with_string
✅ test_get_item_fuzzy_generator_with_case_insensitive_match
✅ test_get_item_fuzzy_generator_with_empty_generator
✅ test_get_item_fuzzy_generator_with_exact_match
✅ test_get_item_fuzzy_generator_with_fuzzy_match
✅ test_get_item_or_default_with_empty_array
✅ test_get_item_or_default_with_invalid_index
✅ test_get_item_or_default_with_none_array
✅ test_get_item_or_default_with_valid_index
✅ test_get_key_or_none_with_empty_source
✅ test_get_key_or_none_with_existing_key
✅ test_get_key_or_none_with_non_existing_key
✅ test_get_key_or_none_with_none_source
✅ test_none_if_falesy_or_all_with_all_string
✅ test_none_if_falesy_or_all_with_empty_list
✅ test_none_if_falesy_or_all_with_mixed_list
✅ test_none_if_falesy_or_all_with_non_empty_list
✅ test_none_if_falesy_or_all_with_none
✅ test_sanitize_accounts
✅ test_sanitize_certificates
✅ test_sanitize_channels
✅ test_sanitize_dates_with_empty_list
✅ test_sanitize_dates_with_invalid_dates
✅ test_sanitize_dates_with_non_string_entries
tests.application.test_copilot_chat_dashboard.CopilotChatDashboardTest
✅ test_dashboard
✅ test_dashboard_fuzzy_space
✅ test_deployment_summary_fuzzy_space
✅ test_get_runbook_dashboard
✅ test_github_logs
✅ test_github_task_summary
✅ test_github_task_summary_combined_repo_format
✅ test_github_task_summary_defaults
✅ test_health
✅ test_project_dashboard_default_space
✅ test_project_dashboard_fuzzy_space
✅ test_tenant_project_dashboard
tests.application.test_copilot_chat_no_defaults.CopilotChatNoDefaultsTest
✅ test_dashboard
✅ test_dashboard_default_space
✅ test_get_logs
✅ test_get_logs_fuzzy
✅ test_health
tests.application.test_copilot_chat_no_octopus.CopilotChatTest
✅ test_general_solution
✅ test_general_solution2
✅ test_general_solution3
✅ test_general_solution4
✅ test_general_solution5
✅ test_general_solution_encrypted_token
✅ test_profile
✅ test_sample_hcl
tests.application.test_copilot_chat_no_permissions.CopilotChatNoDefaultsTest
✅ test_help
tests.application.test_copilot_chat_octolint.CopilotChatOctolintTest
✅ test_find_octolint_direct_tenant_references
✅ test_find_octolint_duplicate_variables
✅ test_find_octolint_unrotated_accounts
✅ test_find_octolint_unused_tenants
✅ test_find_unused_projects
tests.application.test_copilot_chat_release_and_deploy.CopilotChatReleaseAndDeployTest
✅ test_create_release
✅ test_create_release_handles_existing_version
✅ test_create_release_with_deployment_and_missing_variables
✅ test_create_release_with_deployment_and_variables
✅ test_create_release_with_deployment_environment
✅ test_deploy_release
✅ test_deploy_release_default_project
✅ test_deploy_release_to_tenant
✅ test_deploy_release_with_missing_required_variable
✅ test_deploy_release_with_variables
tests.application.test_copilot_chat_second.CopilotChatTestTwo
✅ test_all_defaults
✅ test_default_environment
✅ test_default_owner
✅ test_default_project
✅ test_default_repository
✅ test_default_space
✅ test_default_workflow
✅ test_describe_account
✅ test_describe_all_projects
✅ test_describe_certificate
✅ test_describe_environment
✅ test_describe_feed
✅ test_describe_git_creds
✅ test_describe_lifecycle
✅ test_describe_machine_policies
✅ test_describe_machines
✅ test_describe_missing_step
✅ test_describe_project_groups
✅ test_describe_runbook
✅ test_describe_step
✅ test_describe_tagsets
✅ test_describe_tenants
✅ test_describe_variable_set
✅ test_describe_worker_pool
✅ test_docs
✅ test_environment_lookup
✅ test_general_question
✅ test_get_channels
✅ test_get_date_range_deployment
✅ test_get_hotfix_deployments
✅ test_get_latest_deployment
✅ test_get_latest_deployment_channel
✅ test_get_latest_deployment_channel_fuzzy
✅ test_get_latest_deployment_defaults
✅ test_get_latest_deployment_fuzzy
✅ test_get_runbook_dashboard
✅ test_get_runbook_logs
✅ test_get_variables
✅ test_get_variables_no_github_user
✅ test_get_variables_with_defaults
✅ test_health
✅ test_help
✅ test_list_tenants
✅ test_project_lookup
✅ test_runbook_lookup
✅ test_space_fuzzy_match
✅ test_space_lookup
✅ test_tenant_lookup
tests.domain.test_admin_user.AdminUser
✅ test_call_admin_function
✅ test_empty_is_not_admin_user
✅ test_empty_list_is_not_admin_user
✅ test_invalid_json
✅ test_is_admin_list_is_object
✅ test_is_admin_list_is_string
✅ test_is_admin_user
✅ test_is_admin_user_array_string
✅ test_is_admin_user_both_strings
✅ test_is_admin_user_not_found
✅ test_is_admin_user_string
✅ test_no_callabck
✅ test_no_list_is_not_admin_user
tests.domain.test_argument_validation.ArgumentValidationTest
✅ test_ensure_api_key
tests.domain.test_b64.AdminUser
✅ test_encoding
tests.domain.test_base_request_url.BaseRequestUrlTest
✅ test_base_request_url
✅ test_base_request_url_forwarded
tests.domain.test_build_unredirected_url.BuildUrl
✅ test_empty_url
✅ test_url
✅ test_url_no_path
✅ test_url_no_query
✅ test_url_partial_name
✅ test_url_slash
tests.domain.test_build_url.BuildUrl
✅ test_127_0_0_1_url
✅ test_empty_url
✅ test_localhost_url
✅ test_non_octopus_url
✅ test_octopus_cloud_url
✅ test_testoctopus_url
✅ test_url
✅ test_url_no_path
✅ test_url_no_query
✅ test_url_partial_name
✅ test_url_slash
tests.domain.test_clean_response.CleanResponse
✅ test_no_curly
✅ test_none
✅ test_remove_prefix
✅ test_remove_suffix
tests.domain.test_convert_to_sse_response.ConvertToSseResponse
✅ test_convert_to_and_from_sse_response
✅ test_convert_to_sse_empty_response_stop
✅ test_convert_to_sse_response
✅ test_convert_to_sse_response_stop
tests.domain.test_count_items_with_data.CountItemsWithDataTest
✅ test_count_items_with_data_all_empty
✅ test_count_items_with_data_all_exceptions
✅ test_count_items_with_data_empty_list
✅ test_count_items_with_data_no_exceptions_or_empty
✅ test_count_items_with_data_none
✅ test_count_items_with_data_with_empty_strings
✅ test_count_items_with_data_with_exceptions
✅ test_count_items_with_data_with_mixed
tests.domain.test_create_cookie.CreateCookieTest
✅ test_create_cookie
✅ test_get_cookie_expiration
tests.domain.test_datetime_to_str.TestDateTimeToStr
✅ test_datetime_to_str_empty_string
✅ test_datetime_to_str_invalid_type
✅ test_datetime_to_str_none
✅ test_datetime_to_str_valid
tests.domain.test_defaults.TestDefaults
✅ test_get_default_argument
✅ test_get_default_argument_list
tests.domain.test_delete_links.AdminUser
✅ test_delete_links_array
✅ test_delete_links_nested
✅ test_delete_links_none
✅ test_delete_links_string
✅ test_delete_links_top
tests.domain.test_dictionary_sanitizer.DictionarySanitizer
✅ test_dictionary_sanitizer
✅ test_empty_dictionary
✅ test_key_not_present
✅ test_value_is_dict
✅ test_value_is_empty_string
✅ test_value_is_list
✅ test_value_is_none
tests.domain.test_encryption.EncryptionTests
✅ test_bad_key
✅ test_encryption
tests.domain.test_ensure.EnsureTests
✅ test_ensure_not_falsy
✅ test_ensure_string
✅ test_ensure_string_not_empty
✅ test_ensure_string_starts_with_empty_string
✅ test_ensure_string_starts_with_invalid
✅ test_ensure_string_starts_with_non_string
✅ test_ensure_string_starts_with_none
✅ test_ensure_string_starts_with_valid
tests.domain.test_ensure_one_string_not_empty.TestEnsureOneStringNotEmpty
✅ test_error_message_passed_through
✅ test_with_first_argument_valid
✅ test_with_multiple_strings_one_valid
✅ test_with_no_arguments
✅ test_with_no_valid_strings
✅ test_with_one_valid_string
✅ test_with_whitespace_string
tests.domain.test_escape_message.TestEscapeMessage
✅ test_escape_message_empty_string
✅ test_escape_message_no_special_characters
✅ test_escape_message_only_curly_braces
✅ test_escape_message_with_curly_braces
✅ test_escape_message_with_multiple_curly_braces
tests.domain.test_extract_owner_repo_and_commit.EnsureTests
✅ test_extract_owner_repo_and_commit
✅ test_extract_owner_repo_and_commit_2
✅ test_extract_owner_repo_and_issue
✅ test_extract_owner_repo_and_issue_2
tests.domain.test_extract_query.TestExtractQuery
✅ test_extract_confirmation_invalid_json
✅ test_extract_confirmation_state_and_id
✅ test_extract_invalid_json_query
✅ test_extract_query
tests.domain.test_feature_flags.TestFeatureFlags
✅ test_is_feature_enabled_for_github_user
tests.domain.test_function_deinition.FunctionDefinitionTest
✅ test_functions
✅ test_init
tests.domain.test_get_auth.TestGetAuth
✅ test_get_auth_empty_string
✅ test_get_auth_with_access_token
✅ test_get_auth_with_api_key
✅ test_get_auth_with_api_key_upper
✅ test_get_auth_with_whitespace
tests.domain.test_get_context.TestGetContextFromTextArray
✅ test_get_context_from_string_empty_string
✅ test_get_context_from_string_none
✅ test_get_context_from_string_special_characters
✅ test_get_context_from_string_valid
✅ test_get_context_from_text_array_empty_list
✅ test_get_context_from_text_array_non_string_items
✅ test_get_context_from_text_array_none
✅ test_get_context_from_text_array_valid
tests.domain.test_get_date_difference_summary.DateDifferenceTest
✅ test_date_difference_day
✅ test_date_difference_days
✅ test_date_difference_hour
✅ test_date_difference_hours
✅ test_date_difference_minutes
✅ test_date_difference_second
✅ test_date_difference_seconds
tests.domain.test_get_item_fuzzy.FuzzyItemTest
✅ test_get_item_fuzzy
tests.domain.test_get_params_message.EnsureTests
✅ test_get_params_message
tests.domain.test_get_runbook_dashboard_response.RunbookDashboardTest
✅ test_get_runbook_dashboard_response
tests.domain.test_get_terraform_messages.GetTerraformExamplesTest
⚪ test_get_live_messages
tests.domain.test_github_docs.TestGitHubDocs
✅ test_get_docs_context
✅ test_get_raw_url_from_blob
tests.domain.test_github_oauth_login.TestOAuthCallback
✅ test_oauth_callback_failure
✅ test_oauth_callback_success
tests.domain.test_github_token.GitHubTokenTests
✅ test_extract_encrypted_token
✅ test_extract_regular_token
tests.domain.test_github_user.GitHubUserTest
✅ test_get_redirect_page
tests.domain.test_hostname.TestGetHostnameFromUrl
✅ test_empty_string
✅ test_none_input
✅ test_url_with_subdomains
✅ test_url_without_hostname
✅ test_valid_url
tests.domain.test_html_pages.AdminUser
✅ test_get_login_page
✅ test_get_query_page
✅ test_get_query_page_logged_in
✅ test_get_redirect_page
tests.domain.test_is_admin_server.TestIsAdminServer
✅ test_is_admin_server_with_invalid_server
✅ test_is_admin_server_with_none_inputs
✅ test_is_admin_server_with_valid_server
tests.domain.test_is_int.TestIsInt
✅ test_is_int_empty_string
✅ test_is_int_float_string
✅ test_is_int_invalid_string
✅ test_is_int_negative_integer
✅ test_is_int_none
✅ test_is_int_valid_integer
✅ test_is_int_zero
tests.domain.test_is_valid_token.TestIsValidToken
✅ test_is_valid_token_empty_string
✅ test_is_valid_token_invalid_format
✅ test_is_valid_token_non_string
✅ test_is_valid_token_none
✅ test_is_valid_token_valid
tests.domain.test_jwt.JwtTests
✅ test_decoding
✅ test_decoding_octopus_access
✅ test_expired
✅ test_not_expired
Loading