Repository navigation
Agent SYMBOLS_p45
grisun0 edited this page Oct 26, 2026
·
4 revisions
Previous: SYMBOLS_p44.md
| Symbol | Kind | File:Line | Signature |
|---|---|---|---|
test_validate_request_unsupported_command |
method | tests/test_socks_proxy.py:201 |
def test_validate_request_unsupported_command(self) |
test_validate_request_valid_connect |
method | tests/test_socks_proxy.py:190 |
def test_validate_request_valid_connect(self) |
_write_operators |
function | tests/test_status_bar_operators.py:28 |
def _write_operators(tmp_path, records) |
test_build_default_manager_skips_operators_by_default |
function | tests/test_status_bar_operators.py:86 |
def test_build_default_manager_skips_operators_by_default(tmp_path) |
test_build_default_manager_wires_operators_when_enabled |
function | tests/test_status_bar_operators.py:92 |
def test_build_default_manager_wires_operators_when_enabled(tmp_path) |
test_collab_presence_counts_active_operators |
function | tests/test_status_bar_operators.py:41 |
def test_collab_presence_counts_active_operators(tmp_path) |
test_collab_presence_zero_when_file_missing |
function | tests/test_status_bar_operators.py:33 |
def test_collab_presence_zero_when_file_missing(tmp_path) |
test_render_prompt_switches_colour_with_tui_theme |
function | tests/test_status_bar_operators.py:107 |
def test_render_prompt_switches_colour_with_tui_theme(tmp_path) |
test_render_prompt_uses_default_theme_when_unspecified |
function | tests/test_status_bar_operators.py:99 |
def test_render_prompt_uses_default_theme_when_unspecified(tmp_path) |
test_renderer_switches_to_ops_format_when_present |
function | tests/test_status_bar_operators.py:70 |
def test_renderer_switches_to_ops_format_when_present() |
test_renderer_uses_default_format_when_operators_empty |
function | tests/test_status_bar_operators.py:59 |
def test_renderer_uses_default_format_when_operators_empty() |
TestGetLogger |
class | tests/test_structured_logging.py:144 |
class TestGetLogger |
TestInstallJsonHandler |
class | tests/test_structured_logging.py:220 |
class TestInstallJsonHandler |
TestJsonLineFormatter |
class | tests/test_structured_logging.py:47 |
class TestJsonLineFormatter |
TestReconfigure |
class | tests/test_structured_logging.py:193 |
class TestReconfigure |
TestStructuredLogConfig |
class | tests/test_structured_logging.py:13 |
class TestStructuredLogConfig |
TestStructuredLogger |
class | tests/test_structured_logging.py:122 |
class TestStructuredLogger |
test_cold_logger_gets_console_and_file_wiring |
method | tests/test_structured_logging.py:223 |
def test_cold_logger_gets_console_and_file_wiring(self, tmp_path) |
test_custom_override_preserves_other_defaults |
method | tests/test_structured_logging.py:29 |
def test_custom_override_preserves_other_defaults(self) |
test_defaults_are_production_ready |
method | tests/test_structured_logging.py:16 |
def test_defaults_are_production_ready(self) |
test_first_call_creates_and_configures_logger |
method | tests/test_structured_logging.py:147 |
def test_first_call_creates_and_configures_logger(self) |
test_formats_record_as_valid_json_line |
method | tests/test_structured_logging.py:50 |
def test_formats_record_as_valid_json_line(self) |
test_includes_exception_traceback_when_present |
method | tests/test_structured_logging.py:98 |
def test_includes_exception_traceback_when_present(self) |
test_make_records_promote_extra_fields_onto_record |
method | tests/test_structured_logging.py:125 |
def test_make_records_promote_extra_fields_onto_record(self) |
test_reconfigure_resets_cache_and_applies_new_config |
method | tests/test_structured_logging.py:196 |
def test_reconfigure_resets_cache_and_applies_new_config(self, tmp_path) |
test_redacts_sensitive_extra_fields |
method | tests/test_structured_logging.py:74 |
def test_redacts_sensitive_extra_fields(self) |
test_same_name_returns_cached_instance |
method | tests/test_structured_logging.py:156 |
def test_same_name_returns_cached_instance(self) |
test_second_install_is_idempotent |
method | tests/test_structured_logging.py:260 |
def test_second_install_is_idempotent(self, tmp_path) |
test_warm_logger_keeps_custom_handler_and_appends_json_file |
method | tests/test_structured_logging.py:241 |
def test_warm_logger_keeps_custom_handler_and_appends_json_file(self, tmp_path) |
test_writes_json_lines_to_file |
method | tests/test_structured_logging.py:166 |
def test_writes_json_lines_to_file(self, tmp_path) |
_build |
function | tests/test_surface_graph.py:74 |
def _build(tmp_path, sessions) |
_write_implant_log |
function | tests/test_surface_graph.py:53 |
def _write_implant_log(path) |
_write_payload |
function | tests/test_surface_graph.py:62 |
def _write_payload(tmp_path) |
sessions_dir |
function | tests/test_surface_graph.py:80 |
def sessions_dir(tmp_path) |
test_build_surface_graph_factory_works_without_payload_file |
function | tests/test_surface_graph.py:210 |
def test_build_surface_graph_factory_works_without_payload_file(tmp_path, sessions_dir) |
test_empty_sessions_still_produce_c2_root |
function | tests/test_surface_graph.py:86 |
def test_empty_sessions_still_produce_c2_root(tmp_path, sessions_dir) |
test_hostsdiscovery_populates_host_nodes |
function | tests/test_surface_graph.py:95 |
def test_hostsdiscovery_populates_host_nodes(tmp_path, sessions_dir) |
test_implant_log_creates_client_and_links_hosts |
function | tests/test_surface_graph.py:137 |
def test_implant_log_creates_client_and_links_hosts(tmp_path, sessions_dir) |
test_invalid_portscan_blob_does_not_crash |
function | tests/test_surface_graph.py:218 |
def test_invalid_portscan_blob_does_not_crash(tmp_path, sessions_dir) |
test_iter_descendants_walks_only_outgoing_edges |
function | tests/test_surface_graph.py:200 |
def test_iter_descendants_walks_only_outgoing_edges(tmp_path, sessions_dir) |
test_non_implant_logs_are_ignored |
function | tests/test_surface_graph.py:180 |
def test_non_implant_logs_are_ignored(tmp_path, sessions_dir) |
test_scan_discovery_csv_adds_ports_and_services |
function | tests/test_surface_graph.py:112 |
def test_scan_discovery_csv_adds_ports_and_services(tmp_path, sessions_dir) |
test_to_dict_round_trips_through_json |
function | tests/test_surface_graph.py:189 |
def test_to_dict_round_trips_through_json(tmp_path, sessions_dir) |
_load_module |
function | tests/test_sync_doc_stats.py:20 |
def _load_module() |
mod |
function | tests/test_sync_doc_stats.py:28 |
def mod() |
test_canonical_command_count_reads_index |
function | tests/test_sync_doc_stats.py:32 |
def test_canonical_command_count_reads_index(mod, tmp_path) |
test_measure_stats_command_count_matches_index |
function | tests/test_sync_doc_stats.py:39 |
def test_measure_stats_command_count_matches_index(mod, tmp_path) |
test_render_formats_template |
function | tests/test_sync_doc_stats.py:92 |
def test_render_formats_template(mod) |
test_sync_apply_rewrites_when_stale |
function | tests/test_sync_doc_stats.py:80 |
def test_sync_apply_rewrites_when_stale(mod, tmp_path) |
test_sync_check_does_not_write |
function | tests/test_sync_doc_stats.py:67 |
def test_sync_check_does_not_write(mod, tmp_path) |
test_get_theme_is_case_insensitive |
function | tests/test_themes.py:35 |
def test_get_theme_is_case_insensitive() |
test_get_theme_returns_default_for_unknown_name |
function | tests/test_themes.py:30 |
def test_get_theme_returns_default_for_unknown_name() |
test_theme_dataclass_is_immutable |
function | tests/test_themes.py:51 |
def test_theme_dataclass_is_immutable() |
test_theme_from_payload_none_yields_default |
function | tests/test_themes.py:40 |
def test_theme_from_payload_none_yields_default() |
test_theme_from_payload_picks_named_theme |
function | tests/test_themes.py:45 |
def test_theme_from_payload_picks_named_theme() |
test_themes_registry_contains_required_entries |
function | tests/test_themes.py:24 |
def test_themes_registry_contains_required_entries() |
_write_report |
function | tests/test_timeline_browser.py:24 |
def _write_report(path, rows) |
test_column_value_falls_back_through_source_keys |
function | tests/test_timeline_browser.py:92 |
def test_column_value_falls_back_through_source_keys(tmp_path) |
test_reader_parses_rows |
function | tests/test_timeline_browser.py:40 |
def test_reader_parses_rows(tmp_path) |
test_reader_returns_empty_when_csv_missing |
function | tests/test_timeline_browser.py:34 |
def test_reader_returns_empty_when_csv_missing(tmp_path) |
test_reader_truncates_long_field_values |
function | tests/test_timeline_browser.py:113 |
def test_reader_truncates_long_field_values(tmp_path) |
test_state_filter_empty_returns_all |
function | tests/test_timeline_browser.py:84 |
def test_state_filter_empty_returns_all(tmp_path) |
test_state_filters_across_columns |
function | tests/test_timeline_browser.py:67 |
def test_state_filters_across_columns(tmp_path) |
test_state_reload_drops_cache |
function | tests/test_timeline_browser.py:102 |
def test_state_reload_drops_cache(tmp_path) |
TestBuildDefaultConfig |
class | tests/test_tips_engine.py:396 |
class TestBuildDefaultConfig |
TestChainActiveSuppression |
class | tests/test_tips_engine.py:152 |
class TestChainActiveSuppression |
TestCommandNameRegex |
class | tests/test_tips_engine.py:357 |
class TestCommandNameRegex |
TestCommandsSeenSanitisation |
class | tests/test_tips_engine.py:318 |
class TestCommandsSeenSanitisation |
TestELOScoring |
class | tests/test_tips_engine.py:280 |
class TestELOScoring |
TestEngagementState |
class | tests/test_tips_engine.py:104 |
class TestEngagementState |
TestHintsLevelGating |
class | tests/test_tips_engine.py:200 |
class TestHintsLevelGating |
TestKarmaNames |
class | tests/test_tips_engine.py:385 |
class TestKarmaNames |
TestKillChainHints |
class | tests/test_tips_engine.py:138 |
class TestKillChainHints |
TestSkipCommands |
class | tests/test_tips_engine.py:342 |
class TestSkipCommands |
TestTipsConfig |
class | tests/test_tips_engine.py:77 |
class TestTipsConfig |
TestTipsEngineConstruction |
class | tests/test_tips_engine.py:119 |
class TestTipsEngineConstruction |
TestTruncate |
class | tests/test_tips_engine.py:373 |
class TestTruncate |
TestVRIThresholds |
class | tests/test_tips_engine.py:305 |
class TestVRIThresholds |
_render_with_surfaces_stubbed |
method | tests/test_tips_engine.py:153 |
def _render_with_surfaces_stubbed(self, engine) |
_stub_surfaces |
method | tests/test_tips_engine.py:201 |
def _stub_surfaces(self, engine) |
config |
function | tests/test_tips_engine.py:48 |
def config() |
engine |
function | tests/test_tips_engine.py:70 |
def engine(config, tmp_sessions) |
record |
function | tests/test_tips_engine.py:165 |
def record() |
record |
function | tests/test_tips_engine.py:212 |
def record() |
stub |
function | tests/test_tips_engine.py:164 |
def stub(name) |
stub |
function | tests/test_tips_engine.py:211 |
def stub(name) |
test_auto_pwn_not_skipped |
method | tests/test_tips_engine.py:353 |
def test_auto_pwn_not_skipped(self) |
test_auto_pwn_suggests_hunt |
method | tests/test_tips_engine.py:147 |
def test_auto_pwn_suggests_hunt(self, engine) |
test_badges_field_defaults_to_list |
method | tests/test_tips_engine.py:113 |
def test_badges_field_defaults_to_list(self) |
test_base_elo_awarded |
method | tests/test_tips_engine.py:281 |
def test_base_elo_awarded(self, engine) |
test_build_default_tips_config_populates_tables |
method | tests/test_tips_engine.py:86 |
def test_build_default_tips_config_populates_tables(self) |
test_chain_active_suppresses_competing_suggestion_surfaces |
method | tests/test_tips_engine.py:179 |
def test_chain_active_suppresses_competing_suggestion_surfaces(self, engine) |
test_chain_inactive_keeps_all_surfaces |
method | tests/test_tips_engine.py:190 |
def test_chain_inactive_keeps_all_surfaces(self, engine) |
test_config_has_high_value_for_new_commands |
method | tests/test_tips_engine.py:410 |
def test_config_has_high_value_for_new_commands(self) |
test_config_has_session_tips |
method | tests/test_tips_engine.py:417 |
def test_config_has_session_tips(self) |
test_config_includes_automation_commands |
method | tests/test_tips_engine.py:397 |
def test_config_includes_automation_commands(self) |
test_default_config_has_sensible_values |
method | tests/test_tips_engine.py:78 |
def test_default_config_has_sensible_values(self) |
test_default_config_is_on |
method | tests/test_tips_engine.py:232 |
def test_default_config_is_on(self) |
test_default_state |
method | tests/test_tips_engine.py:105 |
def test_default_state(self) |
test_empty_value |
method | tests/test_tips_engine.py:381 |
def test_empty_value(self) |
test_engine_can_disable |
method | tests/test_tips_engine.py:125 |
def test_engine_can_disable(self, config) |
test_engine_initialises_with_config |
method | tests/test_tips_engine.py:120 |
def test_engine_initialises_with_config(self, config) |
test_first_time_bonus |
method | tests/test_tips_engine.py:289 |
def test_first_time_bonus(self, config) |
test_get_hints_level_defaults_for_invalid |
method | tests/test_tips_engine.py:275 |
def test_get_hints_level_defaults_for_invalid(self, engine) |
test_get_hints_level_reads_config |
method | tests/test_tips_engine.py:271 |
def test_get_hints_level_reads_config(self, engine) |
test_godlike_above_6000 |
method | tests/test_tips_engine.py:392 |
def test_godlike_above_6000(self) |
test_high_value_command_bonus |
method | tests/test_tips_engine.py:285 |
def test_high_value_command_bonus(self, engine) |
test_hints_level_constants |
method | tests/test_tips_engine.py:225 |
def test_hints_level_constants(self) |
test_invalid_command_names |
method | tests/test_tips_engine.py:365 |
def test_invalid_command_names(self) |
test_invalid_entries_dropped |
method | tests/test_tips_engine.py:325 |
def test_invalid_entries_dropped(self) |
test_invalid_level_falls_back_to_on |
method | tests/test_tips_engine.py:264 |
def test_invalid_level_falls_back_to_on(self, engine) |
test_known_filter_drops_unknown |
method | tests/test_tips_engine.py:332 |
def test_known_filter_drops_unknown(self) |
test_lazynmap_suggests_auto_pwn |
method | tests/test_tips_engine.py:143 |
def test_lazynmap_suggests_auto_pwn(self, engine) |
test_long_value_truncated |
method | tests/test_tips_engine.py:377 |
def test_long_value_truncated(self) |
test_minimal_runs_autosuggest_only |
method | tests/test_tips_engine.py:245 |
def test_minimal_runs_autosuggest_only(self, engine) |
test_new_phase_bonus |
method | tests/test_tips_engine.py:294 |
def test_new_phase_bonus(self, config) |
test_next_threshold_increases |
method | tests/test_tips_engine.py:306 |
def test_next_threshold_increases(self, engine) |
test_next_threshold_never_less_than_two |
method | tests/test_tips_engine.py:312 |
def test_next_threshold_never_less_than_two(self, engine) |
test_no_double_count_first_time_plus_new_phase |
method | tests/test_tips_engine.py:299 |
def test_no_double_count_first_time_plus_new_phase(self, config) |
test_noob_at_zero |
method | tests/test_tips_engine.py:386 |
def test_noob_at_zero(self) |
test_off_suppresses_all_surfaces |
method | tests/test_tips_engine.py:235 |
def test_off_suppresses_all_surfaces(self, engine) |
test_on_runs_every_surface |
method | tests/test_tips_engine.py:255 |
def test_on_runs_every_surface(self, engine) |
test_ping_not_skipped |
method | tests/test_tips_engine.py:350 |
def test_ping_not_skipped(self) |
test_ping_suggests_lazynmap |
method | tests/test_tips_engine.py:139 |
def test_ping_suggests_lazynmap(self, engine) |
test_render_skips_disabled_engine |
method | tests/test_tips_engine.py:130 |
def test_render_skips_disabled_engine(self, config, capsys) |
test_rookie_at_thousand |
method | tests/test_tips_engine.py:389 |
def test_rookie_at_thousand(self) |
test_short_value_untouched |
method | tests/test_tips_engine.py:374 |
def test_short_value_untouched(self) |
test_skip_set_contains_common_noise |
method | tests/test_tips_engine.py:343 |
def test_skip_set_contains_common_noise(self) |
test_valid_command_names |
method | tests/test_tips_engine.py:358 |
def test_valid_command_names(self) |
test_valid_commands_kept |
method | tests/test_tips_engine.py:319 |
def test_valid_commands_kept(self) |
tmp_sessions |
function | tests/test_tips_engine.py:39 |
def tmp_sessions() |
_append_jsonl |
function | tests/test_toast_bus.py:42 |
def _append_jsonl(path, records) |
_cli_record |
function | tests/test_toast_bus.py:255 |
def _cli_record(event_type, payload, target) |
_toast_event |
function | tests/test_toast_bus.py:199 |
def _toast_event(kind, severity, summary) |
_write_jsonl |
function | tests/test_toast_bus.py:34 |
def _write_jsonl(path, records) |
test_activity_trigger_sources_expand_and_render |
function | tests/test_toast_bus.py:306 |
def test_activity_trigger_sources_expand_and_render() |
test_build_default_bus_honours_budget |
function | tests/test_toast_bus.py:175 |
def test_build_default_bus_honours_budget(tmp_path) |
test_bus_mark_all_seen_consumes_pending |
function | tests/test_toast_bus.py:140 |
def test_bus_mark_all_seen_consumes_pending(tmp_path) |
test_bus_render_disabled_returns_zero |
function | tests/test_toast_bus.py:127 |
def test_bus_render_disabled_returns_zero(tmp_path) |
test_bus_render_respects_per_tick_budget |
function | tests/test_toast_bus.py:109 |
def test_bus_render_respects_per_tick_budget(tmp_path) |
test_collect_includes_activity_sources |
function | tests/test_toast_bus.py:328 |
def test_collect_includes_activity_sources() |
test_formatter_uses_theme_role_for_severity |
function | tests/test_toast_bus.py:91 |
def test_formatter_uses_theme_role_for_severity() |
test_over_budget_events_collapse_into_digest |
function | tests/test_toast_bus.py:242 |
def test_over_budget_events_collapse_into_digest() |
test_prominent_completion_renders_full_text |
function | tests/test_toast_bus.py:211 |
def test_prominent_completion_renders_full_text() |
test_prominent_severity_renders_panel |
function | tests/test_toast_bus.py:229 |
def test_prominent_severity_renders_panel() |
test_reader_handles_malformed_lines |
function | tests/test_toast_bus.py:80 |
def test_reader_handles_malformed_lines(tmp_path) |
test_reader_picks_up_new_events_after_offset |
function | tests/test_toast_bus.py:187 |
def test_reader_picks_up_new_events_after_offset(tmp_path) |
test_reader_returns_unseen_events_only |
function | tests/test_toast_bus.py:67 |
def test_reader_returns_unseen_events_only(tmp_path) |
test_render_toasts_returns_count |
function | tests/test_toast_bus.py:165 |
def test_render_toasts_returns_count(tmp_path) |
test_state_clamps_negative_offsets |
function | tests/test_toast_bus.py:59 |
def test_state_clamps_negative_offsets(tmp_path) |
test_state_round_trip |
function | tests/test_toast_bus.py:49 |
def test_state_round_trip(tmp_path) |
test_summary_deduplicates_command_args_tail |
function | tests/test_toast_bus.py:296 |
def test_summary_deduplicates_command_args_tail() |
test_summary_falls_back_to_capture_metadata |
function | tests/test_toast_bus.py:279 |
def test_summary_falls_back_to_capture_metadata() |
test_summary_prefers_title_then_description |
function | tests/test_toast_bus.py:269 |
def test_summary_prefers_title_then_description() |
test_toasts_enabled_default_true |
function | tests/test_toast_bus.py:157 |
def test_toasts_enabled_default_true() |
_SpyConsole |
class | tests/test_toastr_unify.py:73 |
class _SpyConsole |
__init__ |
method | tests/test_toastr_unify.py:76 |
def __init__(self) |
print |
method | tests/test_toastr_unify.py:79 |
def print(self, message, style) |
test_empty_message_falls_back_like_legacy |
function | tests/test_toastr_unify.py:45 |
def test_empty_message_falls_back_like_legacy() |
test_markup_is_escaped_for_plain_text |
function | tests/test_toastr_unify.py:51 |
def test_markup_is_escaped_for_plain_text() |
test_plain_text_message_wraps_and_adapts |
function | tests/test_toastr_unify.py:35 |
def test_plain_text_message_wraps_and_adapts() |
test_sentinel_panel_keeps_field_layout |
function | tests/test_toastr_unify.py:57 |
def test_sentinel_panel_keeps_field_layout() |
test_sentinel_severity_selects_border |
function | tests/test_toastr_unify.py:67 |
def test_sentinel_severity_selects_border() |
test_severity_table_covers_every_surface_level |
function | tests/test_toastr_unify.py:22 |
def test_severity_table_covers_every_surface_level() |
test_shell_hint_bypass_keeps_empty_fallback |
function | tests/test_toastr_unify.py:91 |
def test_shell_hint_bypass_keeps_empty_fallback() |
test_shell_hint_bypass_prints_flat_line |
function | tests/test_toastr_unify.py:84 |
def test_shell_hint_bypass_prints_flat_line() |
test_unknown_severity_falls_back_to_info |
function | tests/test_toastr_unify.py:30 |
def test_unknown_severity_falls_back_to_info() |
test_orchestrator_yaml_declares_trigger_seeds |
function | tests/test_trigger_policy.py:82 |
def test_orchestrator_yaml_declares_trigger_seeds() |
test_seed_store_drops_unknown_kinds |
function | tests/test_trigger_policy.py:89 |
def test_seed_store_drops_unknown_kinds(tmp_path, monkeypatch) |
test_seed_store_is_idempotent |
function | tests/test_trigger_policy.py:48 |
def test_seed_store_is_idempotent(tmp_path, monkeypatch) |
test_seed_store_keeps_runtime_triggers |
function | tests/test_trigger_policy.py:66 |
def test_seed_store_keeps_runtime_triggers(tmp_path, monkeypatch) |
test_seeds_coerce_and_skip_unknown_kinds |
function | tests/test_trigger_policy.py:26 |
def test_seeds_coerce_and_skip_unknown_kinds() |
test_validate_policy_rejects_bad_documents |
function | tests/test_trigger_policy.py:18 |
def test_validate_policy_rejects_bad_documents() |
test_yaml_seeds_read_from_orchestrator_document |
function | tests/test_trigger_policy.py:40 |
def test_yaml_seeds_read_from_orchestrator_document() |
TestIsOperator |
class | tests/test_trusted_proxy.py:99 |
class TestIsOperator |
TestNoProxy |
class | tests/test_trusted_proxy.py:22 |
class TestNoProxy |
TestTrustedProxy |
class | tests/test_trusted_proxy.py:43 |
class TestTrustedProxy |
test_empty_header_falls_back |
method | tests/test_trusted_proxy.py:85 |
def test_empty_header_falls_back(self) |
test_insufficient_chain_falls_back |
method | tests/test_trusted_proxy.py:72 |
def test_insufficient_chain_falls_back(self) |
test_match |
method | tests/test_trusted_proxy.py:102 |
def test_match(self) |
test_no_header_falls_back_to_remote |
method | tests/test_trusted_proxy.py:38 |
def test_no_header_falls_back_to_remote(self) |
test_no_match |
method | tests/test_trusted_proxy.py:109 |
def test_no_match(self) |
test_remote_addr_returned |
method | tests/test_trusted_proxy.py:25 |
def test_remote_addr_returned(self) |
test_single_proxy_returns_leftmost |
method | tests/test_trusted_proxy.py:46 |
def test_single_proxy_returns_leftmost(self) |
test_two_proxies_returns_leftmost |
method | tests/test_trusted_proxy.py:59 |
def test_two_proxies_returns_leftmost(self) |
test_addon_schema_agent_friendly |
function | tests/test_ttpscope_bridge.py:95 |
def test_addon_schema_agent_friendly() |
test_chain_needs_no_binary |
function | tests/test_ttpscope_bridge.py:85 |
def test_chain_needs_no_binary(monkeypatch) |
test_matrix_fallback_groups |
function | tests/test_ttpscope_bridge.py:65 |
def test_matrix_fallback_groups(monkeypatch) |
test_notes_roundtrip_without_binary |
function | tests/test_ttpscope_bridge.py:73 |
def test_notes_roundtrip_without_binary(monkeypatch, tmp_path) |
test_object_id_validation |
function | tests/test_ttpscope_bridge.py:18 |
def test_object_id_validation() |
test_query_and_platform_validation |
function | tests/test_ttpscope_bridge.py:27 |
def test_query_and_platform_validation() |
test_search_fallback_needs_no_binary |
function | tests/test_ttpscope_bridge.py:48 |
def test_search_fallback_needs_no_binary(monkeypatch) |
test_show_fallback_technique |
function | tests/test_ttpscope_bridge.py:56 |
def test_show_fallback_technique(monkeypatch) |
test_unknown_action_rejected |
function | tests/test_ttpscope_bridge.py:40 |
def test_unknown_action_rejected() |
SplashDispatchTests |
class | tests/test_tui_splash.py:81 |
class SplashDispatchTests(TestCase) |
SplashEdgeCaseTests |
class | tests/test_tui_splash.py:145 |
class SplashEdgeCaseTests(TestCase) |
SplashInstantEffectTests |
class | tests/test_tui_splash.py:30 |
class SplashInstantEffectTests(TestCase) |
SplashTypewriterEffectTests |
class | tests/test_tui_splash.py:67 |
class SplashTypewriterEffectTests(TestCase) |
_console |
function | tests/test_tui_splash.py:19 |
def _console() |
test_empty_lines_is_noop |
method | tests/test_tui_splash.py:146 |
def test_empty_lines_is_noop(self) |
test_instant_does_not_block |
method | tests/test_tui_splash.py:44 |
def test_instant_does_not_block(self) |
test_instant_emits_ansi_for_known_tokens |
method | tests/test_tui_splash.py:56 |
def test_instant_emits_ansi_for_known_tokens(self) |
test_instant_renders_every_line |
method | tests/test_tui_splash.py:31 |
def test_instant_renders_every_line(self) |
test_lines_with_brackets_render_verbatim |
method | tests/test_tui_splash.py:156 |
def test_lines_with_brackets_render_verbatim(self) |
test_render_splash_clear_after_emits_clear_escape |
method | tests/test_tui_splash.py:124 |
def test_render_splash_clear_after_emits_clear_escape(self) |
test_render_splash_dispatches_instant_for_zero_seconds |
method | tests/test_tui_splash.py:82 |
def test_render_splash_dispatches_instant_for_zero_seconds(self) |
test_render_splash_dispatches_instant_when_explicit |
method | tests/test_tui_splash.py:92 |
def test_render_splash_dispatches_instant_when_explicit(self) |
test_render_splash_no_clear_when_disabled |
method | tests/test_tui_splash.py:134 |
def test_render_splash_no_clear_when_disabled(self) |
test_render_splash_unknown_effect_falls_back_to_instant |
method | tests/test_tui_splash.py:103 |
def test_render_splash_unknown_effect_falls_back_to_instant(self) |
test_render_splash_uses_payload_theme_when_provided |
method | tests/test_tui_splash.py:114 |
def test_render_splash_uses_payload_theme_when_provided(self) |
test_typewriter_renders_all_lines_when_total_seconds_high |
method | tests/test_tui_splash.py:68 |
def test_typewriter_renders_all_lines_when_total_seconds_high(self) |
StyleTokenTests |
class | tests/test_tui_style.py:14 |
class StyleTokenTests(TestCase) |
test_active_tokens_covers_every_key |
method | tests/test_tui_style.py:25 |
def test_active_tokens_covers_every_key(self) |
test_active_tokens_honours_payload |
method | tests/test_tui_style.py:32 |
def test_active_tokens_honours_payload(self) |
test_known_token_returns_theme_attribute |
method | tests/test_tui_style.py:15 |
def test_known_token_returns_theme_attribute(self) |
test_paint_returns_rich_text_with_style |
method | tests/test_tui_style.py:39 |
def test_paint_returns_rich_text_with_style(self) |
test_render_prompt_emits_segments_separated_by_bar |
method | tests/test_tui_style.py:44 |
def test_render_prompt_emits_segments_separated_by_bar(self) |
test_render_prompt_empty_is_noop |
method | tests/test_tui_style.py:59 |
def test_render_prompt_empty_is_noop(self) |
test_unknown_token_falls_back_to_white |
method | tests/test_tui_style.py:21 |
def test_unknown_token_falls_back_to_white(self) |
RecordingSave |
class | tests/test_tui_theme_command.py:11 |
class RecordingSave |
TuiThemeCycleTests |
class | tests/test_tui_theme_command.py:78 |
class TuiThemeCycleTests(TestCase) |
TuiThemeListingTests |
class | tests/test_tui_theme_command.py:28 |
class TuiThemeListingTests(TestCase) |
TuiThemeRegistrationConsistencyTests |
class | tests/test_tui_theme_command.py:105 |
class TuiThemeRegistrationConsistencyTests(TestCase) |
TuiThemeSwitchTests |
class | tests/test_tui_theme_command.py:46 |
class TuiThemeSwitchTests(TestCase) |
__call__ |
method | tests/test_tui_theme_command.py:17 |
def __call__(self, payload) |
__init__ |
method | tests/test_tui_theme_command.py:14 |
def __init__(self) |
_payload |
function | tests/test_tui_theme_command.py:21 |
def _payload() |
test_case_insensitive_lookup |
method | tests/test_tui_theme_command.py:63 |
def test_case_insensitive_lookup(self) |
test_cycle_advances_in_theme_order |
method | tests/test_tui_theme_command.py:79 |
def test_cycle_advances_in_theme_order(self) |
test_cycle_wraps_around |
method | tests/test_tui_theme_command.py:87 |
def test_cycle_wraps_around(self) |
test_empty_args_lists_every_registered_theme |
method | tests/test_tui_theme_command.py:29 |
def test_empty_args_lists_every_registered_theme(self) |
test_known_name_switches_and_persists |
method | tests/test_tui_theme_command.py:47 |
def test_known_name_switches_and_persists(self) |
test_listing_marks_current_theme |
method | tests/test_tui_theme_command.py:38 |
def test_listing_marks_current_theme(self) |
test_prev_walks_backwards_and_wraps |
method | tests/test_tui_theme_command.py:94 |
def test_prev_walks_backwards_and_wraps(self) |
test_reset_returns_to_default |
method | tests/test_tui_theme_command.py:70 |
def test_reset_returns_to_default(self) |
test_theme_order_covers_every_registered_theme |
method | tests/test_tui_theme_command.py:106 |
def test_theme_order_covers_every_registered_theme(self) |
test_theme_order_has_no_duplicates |
method | tests/test_tui_theme_command.py:109 |
def test_theme_order_has_no_duplicates(self) |
test_unknown_name_does_not_mutate |
method | tests/test_tui_theme_command.py:55 |
def test_unknown_name_does_not_mutate(self) |
NewThemeRegistrationTests |
class | tests/test_tui_themes.py:39 |
class NewThemeRegistrationTests(TestCase) |
NewThemeRenderTests |
class | tests/test_tui_themes.py:86 |
class NewThemeRenderTests(TestCase) |
ThemeOrderTests |
class | tests/test_tui_themes.py:130 |
class ThemeOrderTests(TestCase) |
test_every_new_theme_is_registered |
method | tests/test_tui_themes.py:40 |
def test_every_new_theme_is_registered(self) |
test_every_token_renders_with_ansi_escapes |
method | tests/test_tui_themes.py:95 |
def test_every_token_renders_with_ansi_escapes(self) |
test_every_token_renders_with_ansi_escapes_in_256color |
method | tests/test_tui_themes.py:112 |
def test_every_token_renders_with_ansi_escapes_in_256color(self) |
test_get_theme_resolves_every_new_name |
method | tests/test_tui_themes.py:50 |
def test_get_theme_resolves_every_new_name(self) |
test_get_theme_uses_case_insensitive_lookup |
method | tests/test_tui_themes.py:55 |
def test_get_theme_uses_case_insensitive_lookup(self) |
test_new_themes_have_non_empty_token_values |
method | tests/test_tui_themes.py:76 |
def test_new_themes_have_non_empty_token_values(self) |
test_new_themes_have_unique_color_palettes |
method | tests/test_tui_themes.py:72 |
def test_new_themes_have_unique_color_palettes(self) |
test_order_covers_every_registered_theme_exactly_once |
method | tests/test_tui_themes.py:131 |
def test_order_covers_every_registered_theme_exactly_once(self) |
test_order_is_reexported_by_tui_theme_command |
method | tests/test_tui_themes.py:135 |
def test_order_is_reexported_by_tui_theme_command(self) |
test_original_themes_remain_registered |
method | tests/test_tui_themes.py:45 |
def test_original_themes_remain_registered(self) |
test_theme_from_payload_picks_each_new_theme |
method | tests/test_tui_themes.py:64 |
def test_theme_from_payload_picks_each_new_theme(self) |
test_unknown_name_falls_back_to_default |
method | tests/test_tui_themes.py:59 |
def test_unknown_name_falls_back_to_default(self) |
_patch_bridge_api |
function | tests/test_unified_bridge_delegate.py:25 |
def _patch_bridge_api(monkeypatch, statuses, result) |
boom |
function | tests/test_unified_bridge_delegate.py:90 |
def boom() |
fake_start |
function | tests/test_unified_bridge_delegate.py:30 |
def fake_start(goal, backend, runner, max_iterations) |
test_delegate_polls_until_completion |
function | tests/test_unified_bridge_delegate.py:40 |
def test_delegate_polls_until_completion(monkeypatch, unified_bridge) |
test_delegate_reports_agent_failure |
function | tests/test_unified_bridge_delegate.py:66 |
def test_delegate_reports_agent_failure(monkeypatch, unified_bridge) |
test_delegate_surfaces_missing_agent |
function | tests/test_unified_bridge_delegate.py:77 |
def test_delegate_surfaces_missing_agent(monkeypatch, unified_bridge) |
test_delegate_times_out_when_agent_never_finishes |
function | tests/test_unified_bridge_delegate.py:55 |
def test_delegate_times_out_when_agent_never_finishes(monkeypatch, unified_bridge) |
test_delegate_wraps_start_errors |
function | tests/test_unified_bridge_delegate.py:87 |
def test_delegate_wraps_start_errors(monkeypatch, unified_bridge) |
unified_bridge |
function | tests/test_unified_bridge_delegate.py:16 |
def unified_bridge(monkeypatch) |
TestDaemonStatus |
class | tests/test_unified_dashboard.py:36 |
class TestDaemonStatus |
TestExportJson |
class | tests/test_unified_dashboard.py:95 |
class TestExportJson |
TestRenderUnified |
class | tests/test_unified_dashboard.py:74 |
class TestRenderUnified |
TestUnifiedDashboardInit |
class | tests/test_unified_dashboard.py:10 |
class TestUnifiedDashboardInit |
TestUnifiedSnapshot |
class | tests/test_unified_dashboard.py:51 |
class TestUnifiedSnapshot |
TestWorldModelCollection |
class | tests/test_unified_dashboard.py:21 |
class TestWorldModelCollection |
test_collect_daemon_status_exists |
method | tests/test_unified_dashboard.py:37 |
def test_collect_daemon_status_exists(self, tmp_path) |
test_collect_daemon_status_missing |
method | tests/test_unified_dashboard.py:45 |
def test_collect_daemon_status_missing(self, tmp_path) |
test_collect_world_model_exists |
method | tests/test_unified_dashboard.py:22 |
def test_collect_world_model_exists(self, tmp_path) |
test_collect_world_model_missing |
method | tests/test_unified_dashboard.py:30 |
def test_collect_world_model_missing(self, tmp_path) |
test_default_init |
method | tests/test_unified_dashboard.py:11 |
def test_default_init(self, tmp_path) |
test_export_json |
method | tests/test_unified_dashboard.py:96 |
def test_export_json(self, tmp_path) |
test_get_unified_dashboard_singleton |
method | tests/test_unified_dashboard.py:15 |
def test_get_unified_dashboard_singleton(self, tmp_path) |
test_render_contains_header |
method | tests/test_unified_dashboard.py:75 |
def test_render_contains_header(self, tmp_path) |
test_render_contains_sections |
method | tests/test_unified_dashboard.py:80 |
def test_render_contains_sections(self, tmp_path) |
test_render_contains_timestamp |
method | tests/test_unified_dashboard.py:89 |
def test_render_contains_timestamp(self, tmp_path) |
test_snapshot_keys |
method | tests/test_unified_dashboard.py:52 |
def test_snapshot_keys(self, tmp_path) |
test_snapshot_timestamp |
method | tests/test_unified_dashboard.py:67 |
def test_snapshot_timestamp(self, tmp_path) |
test_import_with_foreign_argv_is_silent |
function | tests/test_utils_import_silent.py:12 |
def test_import_with_foreign_argv_is_silent() |
test_lazy_import_chains_stay_silent |
function | tests/test_utils_import_silent.py:34 |
def test_lazy_import_chains_stay_silent() |
_addon_sandbox |
function | tests/test_verb_catalog.py:150 |
def _addon_sandbox(tmp_path, enabled) |
sandbox |
function | tests/test_verb_catalog.py:19 |
def sandbox(tmp_path) |
test_effective_verbs_include_catalog_entries |
function | tests/test_verb_catalog.py:97 |
def test_effective_verbs_include_catalog_entries(sandbox, monkeypatch) |
test_load_returns_empty_on_missing_invalid_or_oversize |
function | tests/test_verb_catalog.py:64 |
def test_load_returns_empty_on_missing_invalid_or_oversize(sandbox, tmp_path) |
test_loop_refuses_disabled_cli_verb_and_allows_enabled |
function | tests/test_verb_catalog.py:111 |
def test_loop_refuses_disabled_cli_verb_and_allows_enabled(sandbox, monkeypatch) |
test_operator_can_turn_addon_verb_on |
function | tests/test_verb_catalog.py:202 |
def test_operator_can_turn_addon_verb_on(tmp_path) |
test_search_filters_catalog |
function | tests/test_verb_catalog.py:141 |
def test_search_filters_catalog(sandbox) |
test_set_enabled_persists_atomically |
function | tests/test_verb_catalog.py:79 |
def test_set_enabled_persists_atomically(sandbox) |
test_set_enabled_unknown_command_raises |
function | tests/test_verb_catalog.py:73 |
def test_set_enabled_unknown_command_raises(sandbox) |
test_stats_reports_on_off_counts |
function | tests/test_verb_catalog.py:133 |
def test_stats_reports_on_off_counts(sandbox) |
test_steps_for_addon_verb_runs_lazy_addon |
function | tests/test_verb_catalog.py:215 |
def test_steps_for_addon_verb_runs_lazy_addon(tmp_path, monkeypatch) |
test_sync_generates_catalog_with_builtins_on_and_new_off |
function | tests/test_verb_catalog.py:32 |
def test_sync_generates_catalog_with_builtins_on_and_new_off(sandbox) |
test_sync_indexes_enabled_lazyaddons_disabled_by_default |
function | tests/test_verb_catalog.py:169 |
def test_sync_indexes_enabled_lazyaddons_disabled_by_default(tmp_path) |
test_sync_preserves_operator_choices |
function | tests/test_verb_catalog.py:41 |
def test_sync_preserves_operator_choices(sandbox) |
test_sync_prunes_renamed_or_disabled_addons |
function | tests/test_verb_catalog.py:187 |
def test_sync_prunes_renamed_or_disabled_addons(tmp_path) |
test_sync_prunes_stale_commands |
function | tests/test_verb_catalog.py:51 |
def test_sync_prunes_stale_commands(sandbox) |
test_validate_catalog_rejects_bad_documents |
function | tests/test_verb_catalog.py:88 |
def test_validate_catalog_rejects_bad_documents(sandbox) |
TestNoiseAndCost |
class | tests/test_verb_manifest.py:118 |
class TestNoiseAndCost |
TestPlanCheck |
class | tests/test_verb_manifest.py:81 |
class TestPlanCheck |
TestSchema |
class | tests/test_verb_manifest.py:50 |
class TestSchema |
manifest_path |
function | tests/test_verb_manifest.py:14 |
def manifest_path(tmp_path) |
test_cost_tolerates_junk |
method | tests/test_verb_manifest.py:129 |
def test_cost_tolerates_junk(self) |
test_effect_paid_forward |
method | tests/test_verb_manifest.py:91 |
def test_effect_paid_forward(self, manifest_path) |
test_fallback_when_store_empty |
method | tests/test_verb_manifest.py:112 |
def test_fallback_when_store_empty(self, tmp_path) |
test_noise_clamped |
method | tests/test_verb_manifest.py:121 |
def test_noise_clamped(self) |
test_parse_manifest_rejects_junk |
method | tests/test_verb_manifest.py:73 |
def test_parse_manifest_rejects_junk(self) |
test_unknown_fact_id_dropped |
method | tests/test_verb_manifest.py:65 |
def test_unknown_fact_id_dropped(self, manifest_path) |
test_unmet_precondition_reported |
method | tests/test_verb_manifest.py:84 |
def test_unmet_precondition_reported(self, manifest_path) |
test_valid_manifest_parses |
method | tests/test_verb_manifest.py:53 |
def test_valid_manifest_parses(self, manifest_path) |
test_world_model_facts_default |
method | tests/test_verb_manifest.py:104 |
def test_world_model_facts_default(self) |
test_demo_gif_commands_exist_in_source |
function | tests/test_viral_adoption.py:23 |
def test_demo_gif_commands_exist_in_source() |
test_demo_gifs_exist_and_nonempty |
function | tests/test_viral_adoption.py:8 |
def test_demo_gifs_exist_and_nonempty() |
test_docs_drift_workflow_exists |
function | tests/test_viral_adoption.py:89 |
def test_docs_drift_workflow_exists() |
test_launch_kit_exists |
function | tests/test_viral_adoption.py:101 |
def test_launch_kit_exists() |
test_marketplace_template_exists |
function | tests/test_viral_adoption.py:95 |
def test_marketplace_template_exists() |
test_readme_links_viral_assets |
function | tests/test_viral_adoption.py:75 |
def test_readme_links_viral_assets() |
test_smoke_script_covers_onboarding |
function | tests/test_viral_adoption.py:83 |
def test_smoke_script_covers_onboarding() |
MitigationSuiteConfig |
class | tests/test_vuln_mitigations.py:29 |
class MitigationSuiteConfig |
TestMitigationConfigInvariants |
class | tests/test_vuln_mitigations.py:224 |
class TestMitigationConfigInvariants |
TestSentinelRegexSafety |
class | tests/test_vuln_mitigations.py:166 |
class TestSentinelRegexSafety |
TestStackTraceSanitisation |
class | tests/test_vuln_mitigations.py:89 |
class TestStackTraceSanitisation |
_extract_sanitise_pattern |
method | tests/test_vuln_mitigations.py:181 |
def _extract_sanitise_pattern(self, src) |
_iter_function_bodies |
function | tests/test_vuln_mitigations.py:77 |
def _iter_function_bodies(src) |
_read_module |
function | tests/test_vuln_mitigations.py:69 |
def _read_module(config, relative_path) |
lazyc2_src |
method | tests/test_vuln_mitigations.py:93 |
def lazyc2_src(self, mitigation_config) |
mitigation_config |
function | tests/test_vuln_mitigations.py:64 |
def mitigation_config() |
phishingai_src |
method | tests/test_vuln_mitigations.py:98 |
def phishingai_src(self, mitigation_config) |
repo_root |
method | tests/test_vuln_mitigations.py:58 |
def repo_root(self) |
src |
method | tests/test_vuln_mitigations.py:177 |
def src(self, mitigation_config) |
test_dynamic_route_drops_raw_save_to_log_payload |
method | tests/test_vuln_mitigations.py:140 |
def test_dynamic_route_drops_raw_save_to_log_payload(self, lazyc2_src) |
test_handler_module_paths_exist |
method | tests/test_vuln_mitigations.py:227 |
def test_handler_module_paths_exist(self, mitigation_config) |
test_log_handler_keeps_server_side_logging |
method | tests/test_vuln_mitigations.py:112 |
def test_log_handler_keeps_server_side_logging(self, lazyc2_src) |
test_log_handler_returns_generic_message |
method | tests/test_vuln_mitigations.py:102 |
def test_log_handler_returns_generic_message(self, lazyc2_src) |
test_no_forbidden_response_substrings_remain |
method | tests/test_vuln_mitigations.py:154 |
def test_no_forbidden_response_substrings_remain(self, lazyc2_src, phishingai_src, mitigation_config) |
test_no_redundant_character_range_in_sanitise |
method | tests/test_vuln_mitigations.py:188 |
def test_no_redundant_character_range_in_sanitise(self, src) |
test_palette_api_keeps_server_side_logging |
method | tests/test_vuln_mitigations.py:131 |
def test_palette_api_keeps_server_side_logging(self, lazyc2_src) |
test_palette_api_returns_generic_message |
method | tests/test_vuln_mitigations.py:121 |
def test_palette_api_returns_generic_message(self, lazyc2_src) |
test_pattern_does_not_strip_brackets |
method | tests/test_vuln_mitigations.py:217 |
def test_pattern_does_not_strip_brackets(self, src) |
test_pattern_keeps_printable_ascii |
method | tests/test_vuln_mitigations.py:197 |
def test_pattern_keeps_printable_ascii(self, src) |
test_pattern_keeps_tab_and_newline |
method | tests/test_vuln_mitigations.py:203 |
def test_pattern_keeps_tab_and_newline(self, src) |
test_pattern_matches_simplified_form |
method | tests/test_vuln_mitigations.py:193 |
def test_pattern_matches_simplified_form(self, src) |
test_pattern_strips_control_bytes |
method | tests/test_vuln_mitigations.py:209 |
def test_pattern_strips_control_bytes(self, src) |
test_phishing_ai_returns_generic_message |
method | tests/test_vuln_mitigations.py:149 |
def test_phishing_ai_returns_generic_message(self, phishingai_src) |
test_sentinel_function_exposed |
method | tests/test_vuln_mitigations.py:236 |
def test_sentinel_function_exposed(self, mitigation_config) |
test_sentinel_module_exists |
method | tests/test_vuln_mitigations.py:232 |
def test_sentinel_module_exists(self, mitigation_config) |
TestBinaryNameRegex |
class | tests/test_wizard_binary_check.py:58 |
class TestBinaryNameRegex |
TestBinarySpecRegistry |
class | tests/test_wizard_binary_check.py:32 |
class TestBinarySpecRegistry |
TestCheckBinariesContract |
class | tests/test_wizard_binary_check.py:92 |
class TestCheckBinariesContract |
TestGroupByCategory |
class | tests/test_wizard_binary_check.py:143 |
class TestGroupByCategory |
TestPublicSurface |
class | tests/test_wizard_binary_check.py:199 |
class TestPublicSurface |
TestRunIntegratesBinaryCheck |
class | tests/test_wizard_binary_check.py:156 |
class TestRunIntegratesBinaryCheck |
_fail |
function | tests/test_wizard_binary_check.py:127 |
def _fail() |
fake_check |
function | tests/test_wizard_binary_check.py:160 |
def fake_check() |
fake_check |
function | tests/test_wizard_binary_check.py:179 |
def fake_check() |
test_accepts_known_safe_names |
method | tests/test_wizard_binary_check.py:72 |
def test_accepts_known_safe_names(self, name) |
test_check_binaries_in_dunder_all |
method | tests/test_wizard_binary_check.py:200 |
def test_check_binaries_in_dunder_all(self) |
test_check_does_not_invoke_subprocess |
method | tests/test_wizard_binary_check.py:122 |
def test_check_does_not_invoke_subprocess(self, monkeypatch) |
test_default_registry_is_not_empty |
method | tests/test_wizard_binary_check.py:33 |
def test_default_registry_is_not_empty(self) |
test_default_specs_used_when_omitted |
method | tests/test_wizard_binary_check.py:138 |
def test_default_specs_used_when_omitted(self) |
test_every_name_matches_safety_regex |
method | tests/test_wizard_binary_check.py:44 |
def test_every_name_matches_safety_regex(self) |
test_every_spec_has_required_fields |
method | tests/test_wizard_binary_check.py:36 |
def test_every_spec_has_required_fields(self) |
test_groups_preserve_order |
method | tests/test_wizard_binary_check.py:144 |
def test_groups_preserve_order(self) |
test_kill_chain_categories_covered |
method | tests/test_wizard_binary_check.py:52 |
def test_kill_chain_categories_covered(self) |
test_marks_missing_when_which_returns_none |
method | tests/test_wizard_binary_check.py:103 |
def test_marks_missing_when_which_returns_none(self) |
test_marks_present_when_which_returns_path |
method | tests/test_wizard_binary_check.py:109 |
def test_marks_present_when_which_returns_path(self) |
test_no_duplicate_binary_names |
method | tests/test_wizard_binary_check.py:48 |
def test_no_duplicate_binary_names(self) |
test_rejects_unsafe_names |
method | tests/test_wizard_binary_check.py:88 |
def test_rejects_unsafe_names(self, name) |
test_returns_one_status_per_spec |
method | tests/test_wizard_binary_check.py:93 |
def test_returns_one_status_per_spec(self) |
test_run_populates_binaries_after_updates |
method | tests/test_wizard_binary_check.py:176 |
def test_run_populates_binaries_after_updates(self, monkeypatch) |
test_run_populates_binaries_when_nothing_changes |
method | tests/test_wizard_binary_check.py:157 |
def test_run_populates_binaries_when_nothing_changes(self, monkeypatch) |
test_skips_specs_with_unsafe_names |
method | tests/test_wizard_binary_check.py:115 |
def test_skips_specs_with_unsafe_names(self) |
TestAskLlm |
class | tests/test_wizard_llm.py:59 |
class TestAskLlm |
TestMaskSecret |
class | tests/test_wizard_llm.py:45 |
class TestMaskSecret |
TestNormalizeProviderAnswer |
class | tests/test_wizard_llm.py:23 |
class TestNormalizeProviderAnswer |
TestReadinessLlm |
class | tests/test_wizard_llm.py:121 |
class TestReadinessLlm |
_fake |
function | tests/test_wizard_llm.py:17 |
def _fake(message) |
_fake |
function | tests/test_wizard_llm.py:92 |
def _fake(message) |
_fake |
function | tests/test_wizard_llm.py:109 |
def _fake(message) |
_row |
method | tests/test_wizard_llm.py:122 |
def _row(self, params, label) |
_scripted_prompt |
function | tests/test_wizard_llm.py:14 |
def _scripted_prompt(answers) |
test_blank_answers_keep_everything |
method | tests/test_wizard_llm.py:60 |
def test_blank_answers_keep_everything(self, monkeypatch) |
test_blank_returns_none |
method | tests/test_wizard_llm.py:24 |
def test_blank_returns_none(self) |
test_cloud_with_key_ok |
method | tests/test_wizard_llm.py:126 |
def test_cloud_with_key_ok(self) |
test_cloud_without_key_missing |
method | tests/test_wizard_llm.py:131 |
def test_cloud_without_key_missing(self) |
test_empty_returns_not_set |
method | tests/test_wizard_llm.py:46 |
def test_empty_returns_not_set(self) |
test_existing_key_prompt_shows_mask |
method | tests/test_wizard_llm.py:106 |
def test_existing_key_prompt_shows_mask(self, monkeypatch) |
test_invalid_backend_missing_with_fix_hint |
method | tests/test_wizard_llm.py:141 |
def test_invalid_backend_missing_with_fix_hint(self) |
test_invalid_provider_keeps_current |
method | tests/test_wizard_llm.py:76 |
def test_invalid_provider_keeps_current(self, monkeypatch) |
test_key_kept_when_blank |
method | tests/test_wizard_llm.py:102 |
def test_key_kept_when_blank(self, monkeypatch) |
test_long_value_masked_with_tail |
method | tests/test_wizard_llm.py:50 |
def test_long_value_masked_with_tail(self) |
test_model_override_stored_in_provider_slot |
method | tests/test_wizard_llm.py:80 |
def test_model_override_stored_in_provider_slot(self, monkeypatch) |
test_model_shown_in_value |
method | tests/test_wizard_llm.py:146 |
def test_model_shown_in_value(self) |
test_name_case_insensitive |
method | tests/test_wizard_llm.py:28 |
def test_name_case_insensitive(self) |
test_number_selects_backend |
method | tests/test_wizard_llm.py:32 |
def test_number_selects_backend(self) |
test_ollama_keyless_ok |
method | tests/test_wizard_llm.py:136 |
def test_ollama_keyless_ok(self) |
test_ollama_skips_key_prompt |
method | tests/test_wizard_llm.py:89 |
def test_ollama_skips_key_prompt(self, monkeypatch) |
test_out_of_range_number_returns_none |
method | tests/test_wizard_llm.py:37 |
def test_out_of_range_number_returns_none(self) |
test_provider_change_by_name |
method | tests/test_wizard_llm.py:65 |
def test_provider_change_by_name(self, monkeypatch) |
test_provider_change_by_number |
method | tests/test_wizard_llm.py:70 |
def test_provider_change_by_number(self, monkeypatch) |
test_sensitive_values_masked |
method | tests/test_wizard_llm.py:150 |
def test_sensitive_values_masked(self) |
test_short_value_never_shown_clear |
method | tests/test_wizard_llm.py:53 |
def test_short_value_never_shown_clear(self) |
test_unknown_name_returns_none |
method | tests/test_wizard_llm.py:41 |
def test_unknown_name_returns_none(self) |
TestAdvanceHostEdgeCases |
class | tests/test_world_model_extended.py:73 |
class TestAdvanceHostEdgeCases |
TestGetHost |
class | tests/test_world_model_extended.py:43 |
class TestGetHost |
TestGetHostsSummary |
class | tests/test_world_model_extended.py:61 |
class TestGetHostsSummary |
TestGetPhaseAfterStateChanges |
class | tests/test_world_model_extended.py:90 |
class TestGetPhaseAfterStateChanges |
TestSetOsHint |
class | tests/test_world_model_extended.py:22 |
class TestSetOsHint |
test_advance_host_skips_on_lower_state |
method | tests/test_world_model_extended.py:79 |
def test_advance_host_skips_on_lower_state(self, world_model) |
test_advance_host_skips_on_same_state |
method | tests/test_world_model_extended.py:74 |
def test_advance_host_skips_on_same_state(self, world_model) |
test_advance_host_to_owned_is_allowed_from_exploited |
method | tests/test_world_model_extended.py:84 |
def test_advance_host_to_owned_is_allowed_from_exploited(self, world_model) |
test_empty_summary |
method | tests/test_world_model_extended.py:62 |
def test_empty_summary(self, world_model) |
test_get_host_is_thread_safe |
method | tests/test_world_model_extended.py:53 |
def test_get_host_is_thread_safe(self, world_model) |
test_get_host_returns_entry_for_known |
method | tests/test_world_model_extended.py:47 |
def test_get_host_returns_entry_for_known(self, world_model) |
test_get_host_returns_none_for_unknown |
method | tests/test_world_model_extended.py:44 |
def test_get_host_returns_none_for_unknown(self, world_model) |
test_phase_complete_when_all_owned |
method | tests/test_world_model_extended.py:100 |
def test_phase_complete_when_all_owned(self, world_model) |
test_phase_derived_from_host_state |
method | tests/test_world_model_extended.py:91 |
def test_phase_derived_from_host_state(self, world_model) |
test_phase_post_exploitation_on_owned |
method | tests/test_world_model_extended.py:95 |
def test_phase_post_exploitation_on_owned(self, world_model) |
test_phase_recon_when_no_hosts |
method | tests/test_world_model_extended.py:105 |
def test_phase_recon_when_no_hosts(self, world_model) |
test_populated_summary |
method | tests/test_world_model_extended.py:65 |
def test_populated_summary(self, world_model) |
test_remove_host |
function | tests/test_world_model_extended.py:110 |
def test_remove_host(tmp_path, monkeypatch) |
test_set_os_hint_empty_string_is_stored |
method | tests/test_world_model_extended.py:36 |
def test_set_os_hint_empty_string_is_stored(self, world_model) |
test_set_os_hint_on_existing_host |
method | tests/test_world_model_extended.py:29 |
def test_set_os_hint_on_existing_host(self, world_model) |
test_set_os_hint_on_new_host |
method | tests/test_world_model_extended.py:23 |
def test_set_os_hint_on_new_host(self, world_model) |
world_model |
function | tests/test_world_model_extended.py:14 |
def world_model() |
TestXssSinks |
class | tests/test_xss_sanitization.py:22 |
class TestXssSinks |
_src |
function | tests/test_xss_sanitization.py:18 |
def _src(name) |
test_collab_events_escaped |
method | tests/test_xss_sanitization.py:23 |
def test_collab_events_escaped(self) |
test_index_lazyos_response_sanitized |
method | tests/test_xss_sanitization.py:47 |
def test_index_lazyos_response_sanitized(self) |
test_new_campaign_chunks_sanitized |
method | tests/test_xss_sanitization.py:37 |
def test_new_campaign_chunks_sanitized(self) |
test_surface_labels_escaped |
method | tests/test_xss_sanitization.py:42 |
def test_surface_labels_escaped(self) |
test_yaml_view_chatbot_sanitized |
method | tests/test_xss_sanitization.py:32 |
def test_yaml_view_chatbot_sanitized(self) |
test_yaml_view_loads_purify |
method | tests/test_xss_sanitization.py:28 |
def test_yaml_view_loads_purify(self) |
check_file |
function | tools/contract_check.py:19 |
def check_file(path) |
main |
function | tools/contract_check.py:46 |
def main(argv) |
build_module |
function | tools/extract_cluster.py:66 |
def build_module(target_class, phase, category, title, methods, extra_imports) |
collect_methods |
function | tools/extract_cluster.py:41 |
def collect_methods(source_text, wanted) |
fragment_name |
function | tools/extract_cluster.py:29 |
def fragment_name(fragment) |
main |
function | tools/extract_cluster.py:141 |
def main() |
font |
function | tools/gen_demo_gifs.py:14 |
def font(size) |
main |
function | tools/gen_demo_gifs.py:70 |
def main() |
render |
function | tools/gen_demo_gifs.py:22 |
def render(lines, path, hold) |
main |
function | tools/gen_demo_gifs_extra.py:49 |
def main() |
_normalize_dvwa |
function | tools/generate_metasploitable_gym.py:1061 |
def _normalize_dvwa() |
base_chain_document |
function | tools/generate_metasploitable_gym.py:961 |
def base_chain_document() |
chain_document |
function | tools/generate_metasploitable_gym.py:942 |
def chain_document(item) |
exploit_document |
function | tools/generate_metasploitable_gym.py:919 |
def exploit_document(item) |
index_document |
function | tools/generate_metasploitable_gym.py:1034 |
def index_document() |
write |
function | tools/generate_metasploitable_gym.py:1074 |
def write() |
main |
function | tools/set_lazyaddon_updates.py:55 |
def main() |
read_flag |
function | tools/set_lazyaddon_updates.py:45 |
def read_flag(path) |
set_flag |
function | tools/set_lazyaddon_updates.py:22 |
def set_flag(path, value) |
IP2ASN |
class | utils.py:3195 |
class IP2ASN |
MyServer |
class | utils.py:3157 |
class MyServer(HTTPServer) |
ProcessResults |
function | utils.py:2375 |
def ProcessResults(results, outfile) |
SimpleHTTPRequestHandler |
class | utils.py:3165 |
class SimpleHTTPRequestHandler(BaseHTTPRequestHandler) |
Spray |
function | utils.py:2328 |
def Spray(domain, users, password, target_url, wait, verbose, more_verbose) |
VulnerabilityScanner |
class | utils.py:3284 |
class VulnerabilityScanner |
__init__ |
method | utils.py:3196 |
def __init__(self) |
__init__ |
method | utils.py:3302 |
def __init__(self, user_agent, max_workers, sessions_dir, description_language) |
_build_startup_parser |
function | utils.py:3461 |
def _build_startup_parser() |
_cvss_sort_key |
function | utils.py:3448 |
def _cvss_sort_key(record) |
_enrich_cve |
method | utils.py:3377 |
def _enrich_cve(self, cve_info) |
_load_prompt_payload |
function | utils.py:769 |
def _load_prompt_payload() |
_parse_file |
method | utils.py:3216 |
def _parse_file(self, reader) |
_rec_index_has_ip |
method | utils.py:3252 |
def _rec_index_has_ip(self, idx, ip) |
_redact |
function | utils.py:1200 |
def _redact(text) |
_retry_sudo_gate |
function | utils.py:418 |
def _retry_sudo_gate() |
activate_server |
function | utils.py:2317 |
def activate_server(httpd, url, lhost) |
activate_virtualenv |
function | utils.py:598 |
def activate_virtualenv(venv_path) |
add |
function | utils.py:1806 |
def add(str_part, delimiter, i) |
aggressive_yaml_fix |
function | utils.py:3065 |
def aggressive_yaml_fix(yaml_content) |
anti_debug |
function | utils.py:3116 |
def anti_debug() |
as_country |
method | utils.py:3265 |
def as_country(self, asn) |
as_name |
method | utils.py:3261 |
def as_name(self, asn) |
as_of_ip |
method | utils.py:3246 |
def as_of_ip(self, ip) |
clean_html |
function | utils.py:1568 |
def clean_html(html_string) |
clean_output |
function | utils.py:821 |
def clean_output(output) |
clean_url |
function | utils.py:1433 |
def clean_url(host) |
copy2clip |
function | utils.py:801 |
def copy2clip(text) |
crack_password |
function | utils.py:1990 |
def crack_password(crypttext) |
create_arp_packet |
function | utils.py:476 |
def create_arp_packet(src_mac, src_ip, dst_ip, dst_mac) |
create_caldera_config |
function | utils.py:2461 |
def create_caldera_config(file_path) |
create_msfshellcoder_parser |
function | utils.py:3125 |
def create_msfshellcoder_parser() |
create_synthetic_yaml |
function | utils.py:2917 |
def create_synthetic_yaml(nmap_services) |
de_htmlify |
function | utils.py:2666 |
def de_htmlify(data) |
decode |
function | utils.py:2260 |
def decode(data) |
detect_delimiter |
function | utils.py:1823 |
def detect_delimiter(foo_bar) |
display_news |
function | utils.py:2641 |
def display_news(titles, links, scores) |
do_GET |
method | utils.py:3176 |
def do_GET(self) |
ensure_tmux_session |
function | utils.py:2094 |
def ensure_tmux_session(session_name) |
exploitalert |
function | utils.py:906 |
def exploitalert(content) |
Next: SYMBOLS_p46.md
Generated offline by readmenator from commit a2fa9e276b96. Edits here are overwritten by readmenator . --rebuild.
Start
Wiki
- community_0_modules_autonomous_daemon
- community_10_core
- community_11_modules_opsec_scorer
- community_12_modules_kerberos_core
- community_13_modules_saas_attacks
- community_14_modules_polymorphic_engine
- community_15_contrib_legacy
- community_16_tests
- community_17_scripts_journal
- community_18_modules_backdoor
- community_19_poc_tui
- community_1_cli_commands
- community_20_scripts_check_contract_manifest
- community_21_scripts_migrate_lazyown
- community_22_tools
- community_23_orphans
- community_2_cli
- community_3_modules_lazy_loop
- community_4_modules_lazyc2
- community_5_modules_world_model
- community_6_lazygui_panels
- community_7_modules_lazyown_facts
- community_8_static_js
- community_9_skills_claude_md_orchestrator
- concepts
- queries
- REPORT
Agent Docs
- API
- API_p10
- API_p11
- API_p12
- API_p13
- API_p14
- API_p15
- API_p16
- API_p17
- API_p18
- API_p19
- API_p2
- API_p20
- API_p21
- API_p22
- API_p23
- API_p24
- API_p3
- API_p4
- API_p5
- API_p6
- API_p7
- API_p8
- API_p9
- ARCHITECTURE
- ARCHITECTURE_p2
- ARCHITECTURE_p3
- ARCHITECTURE_p4
- ARCHITECTURE_p5
- ARCHITECTURE_p6
- ARCHITECTURE_p7
- ARCHITECTURE_p8
- ARCHITECTURE_p9
- CONCEPTS
- GOTCHAS
- INDEX
- INDEX_p2
- INDEX_p3
- KB_backdoor
- KB_blueprints
- KB_cgi-bin
- KB_claude_md_orchestrator
- KB_cli
- KB_cli_p2
- KB_cli_p3
- KB_cli_p4
- KB_cli_p5
- KB_commands
- KB_commands_p2
- KB_commands_p3
- KB_commands_p4
- KB_config
- KB_contract
- KB_core
- KB_core_p2
- KB_devtools
- KB_extensions
- KB_guardrails
- KB_hermes-lazyown
- KB_integrations
- KB_js
- KB_js_p2
- KB_js_p3
- KB_js_p4
- KB_lazyc2
- KB_lazygui
- KB_lazyown-docker
- KB_legacy
- KB_legacy_p2
- KB_mediation
- KB_misc
- KB_modules
- KB_modules_p10
- KB_modules_p11
- KB_modules_p12
- KB_modules_p13
- KB_modules_p14
- KB_modules_p15
- KB_modules_p16
- KB_modules_p2
- KB_modules_p3
- KB_modules_p4
- KB_modules_p5
- KB_modules_p6
- KB_modules_p7
- KB_modules_p8
- KB_modules_p9
- KB_modules_tools
- KB_palettes
- KB_panels
- KB_plugins
- KB_poc_tui
- KB_root
- KB_root_p2
- KB_rootkit
- KB_scripts
- KB_security
- KB_services
- KB_sinks
- KB_skills
- KB_skills_claude_md_orchestrator_tests
- KB_skills_p2
- KB_skills_p3
- KB_skills_p4
- KB_skills_p5
- KB_skills_tests
- KB_tests
- KB_tests_p10
- KB_tests_p11
- KB_tests_p12
- KB_tests_p13
- KB_tests_p14
- KB_tests_p15
- KB_tests_p16
- KB_tests_p17
- KB_tests_p18
- KB_tests_p19
- KB_tests_p2
- KB_tests_p20
- KB_tests_p3
- KB_tests_p4
- KB_tests_p5
- KB_tests_p6
- KB_tests_p7
- KB_tests_p8
- KB_tests_p9
- KB_theme
- KB_tools
- KB_widgets
- KB_win_rootkit
- KB_windows
- MEMORY
- SECURITY
- SYMBOLS
- SYMBOLS_p10
- SYMBOLS_p11
- SYMBOLS_p12
- SYMBOLS_p13
- SYMBOLS_p14
- SYMBOLS_p15
- SYMBOLS_p16
- SYMBOLS_p17
- SYMBOLS_p18
- SYMBOLS_p19
- SYMBOLS_p2
- SYMBOLS_p20
- SYMBOLS_p21
- SYMBOLS_p22
- SYMBOLS_p23
- SYMBOLS_p24
- SYMBOLS_p25
- SYMBOLS_p26
- SYMBOLS_p27
- SYMBOLS_p28
- SYMBOLS_p29
- SYMBOLS_p3
- SYMBOLS_p30
- SYMBOLS_p31
- SYMBOLS_p32
- SYMBOLS_p33
- SYMBOLS_p34
- SYMBOLS_p35
- SYMBOLS_p36
- SYMBOLS_p37
- SYMBOLS_p38
- SYMBOLS_p39
- SYMBOLS_p4
- SYMBOLS_p40
- SYMBOLS_p41
- SYMBOLS_p42
- SYMBOLS_p43
- SYMBOLS_p44
- SYMBOLS_p45
- SYMBOLS_p46
- SYMBOLS_p5
- SYMBOLS_p6
- SYMBOLS_p7
- SYMBOLS_p8
- SYMBOLS_p9
Recipes