Agent KB_tests_p3 - grisuno/LazyOwn GitHub Wiki
Subsystem: tests (page 3 of 17)
Previous: KB_tests_p2.md
tests/test_blacksandbeacon_addon.py
- Doc: tests/test_blacksandbeacon_addon.py Validation suite for the blacksandbeacon and...
- Layer: testing
- Language: py
- Symbols:
_load(function, line 26)def _load(path)beacon(function, line 32)def beacon()bof(function, line 37)def bof()TestBeaconYamlExists(class, line 41)class TestBeaconYamlExistsTestBeaconRequiredFields(class, line 55)class TestBeaconRequiredFieldsTestBeaconToolSection(class, line 67)class TestBeaconToolSectionTestBeaconPathSafety(class, line 97)class TestBeaconPathSafetyTestBeaconCategory(class, line 111)class TestBeaconCategoryTestBeaconEnabled(class, line 119)class TestBeaconEnabledTestBeaconParams(class, line 127)class TestBeaconParamsTestBeaconCommandTemplates(class, line 157)class TestBeaconCommandTemplatesTestBeaconDescriptionQuality(class, line 192)class TestBeaconDescriptionQualityTestBeaconNoHardcodedSecrets(class, line 217)class TestBeaconNoHardcodedSecretstest_beacon_yaml_present(method, line 42)def test_beacon_yaml_present(self)test_bof_yaml_present(method, line 45)def test_bof_yaml_present(self)test_beacon_yaml_parses(method, line 48)def test_beacon_yaml_parses(self, beacon)test_bof_yaml_parses(method, line 51)def test_bof_yaml_parses(self, bof)test_beacon_has_field(method, line 59)def test_beacon_has_field(self, beacon, field)test_bof_has_field(method, line 63)def test_bof_has_field(self, bof, field)test_beacon_tool_has_key(method, line 71)def test_beacon_tool_has_key(self, beacon, key)test_bof_tool_has_key(method, line 75)def test_bof_tool_has_key(self, bof, key)test_beacon_repo_url(method, line 78)def test_beacon_repo_url(self, beacon)test_bof_repo_url(method, line 81)def test_bof_repo_url(self, bof)test_beacon_install_path(method, line 84)def test_beacon_install_path(self, beacon)test_bof_install_path(method, line 87)def test_bof_install_path(self, bof)test_beacon_install_command_is_make(method, line 90)def test_beacon_install_command_is_make(self, beacon)test_bof_install_command_is_make(method, line 93)def test_bof_install_command_is_make(self, bof)test_beacon_install_path_no_traversal(method, line 100)def test_beacon_install_path_no_traversal(self, beacon)test_bof_install_path_no_traversal(method, line 105)def test_bof_install_path_no_traversal(self, bof)test_beacon_category(method, line 112)def test_beacon_category(self, beacon)test_bof_category(method, line 115)def test_bof_category(self, bof)test_beacon_enabled(method, line 120)def test_beacon_enabled(self, beacon)test_bof_enabled(method, line 123)def test_bof_enabled(self, bof)_param_names(method, line 130)def _param_names(self, addon)test_beacon_has_lhost_param(method, line 133)def test_beacon_has_lhost_param(self, beacon)test_beacon_has_lport_param(method, line 136)def test_beacon_has_lport_param(self, beacon)test_beacon_has_c2_port_param(method, line 139)def test_beacon_has_c2_port_param(self, beacon)test_bof_has_lhost_param(method, line 142)def test_bof_has_lhost_param(self, bof)test_bof_has_lport_param(method, line 145)def test_bof_has_lport_param(self, bof)test_beacon_lhost_required(method, line 148)def test_beacon_lhost_required(self, beacon)test_bof_lhost_required(method, line 152)def test_bof_lhost_required(self, bof)test_beacon_lazycommand_has_lhost(method, line 160)def test_beacon_lazycommand_has_lhost(self, beacon)test_beacon_lazycommand_has_c2_port(method, line 164)def test_beacon_lazycommand_has_c2_port(self, beacon)test_bof_lazycommand_has_lhost(method, line 168)def test_bof_lazycommand_has_lhost(self, bof)test_bof_lazycommand_has_lport(method, line 172)def test_bof_lazycommand_has_lport(self, bof)test_beacon_execute_stages_to_sessions(method, line 176)def test_beacon_execute_stages_to_sessions(self, beacon)test_bof_execute_stages_to_sessions(method, line 180)def test_bof_execute_stages_to_sessions(self, bof)test_beacon_execute_resets_before_pull(method, line 183)def test_beacon_execute_resets_before_pull(self, beacon)test_bof_execute_resets_before_pull(method, line 187)def test_bof_execute_resets_before_pull(self, bof)test_beacon_description_mentions_bof(method, line 195)def test_beacon_description_mentions_bof(self, beacon)test_beacon_description_mentions_linux(method, line 199)def test_beacon_description_mentions_linux(self, beacon)test_bof_description_mentions_linux_bof(method, line 202)def test_bof_description_mentions_linux_bof(self, bof)test_bof_description_mentions_elf(method, line 206)def test_bof_description_mentions_elf(self, bof)test_beacon_name_is_correct(method, line 210)def test_beacon_name_is_correct(self, beacon)test_bof_name_is_correct(method, line 213)def test_bof_name_is_correct(self, bof)_yaml_text(method, line 220)def _yaml_text(self, path)test_beacon_no_hardcoded_ip(method, line 223)def test_beacon_no_hardcoded_ip(self)test_bof_no_hardcoded_ip(method, line 230)def test_bof_no_hardcoded_ip(self)test_beacon_no_hardcoded_port_numbers(method, line 237)def test_beacon_no_hardcoded_port_numbers(self)test_bof_no_hardcoded_port_numbers(method, line 241)def test_bof_no_hardcoded_port_numbers(self)
tests/test_bof_registry.py
- Doc: Tests for modules/bof_registry.py — BofEntry, BofCatalog, BofRegistry, BofMarketplace...
- Layer: testing
- Language: py
- Symbols:
catalog(function, line 37)def catalog()tmp_sessions(function, line 42)def tmp_sessions()TestBofEntry(class, line 47)class TestBofEntryTestBofCatalog(class, line 101)class TestBofCatalogTestBofRegistry(class, line 174)class TestBofRegistryTestBofValidator(class, line 221)class TestBofValidatorTestBofMarketplace(class, line 291)class TestBofMarketplaceTestBofEnums(class, line 359)class TestBofEnumstest_construction_and_properties(method, line 48)def test_construction_and_properties(self)test_immutability(method, line 65)def test_immutability(self)test_to_dict_roundtrip(method, line 70)def test_to_dict_roundtrip(self)test_from_dict_minimal(method, line 91)def test_from_dict_minimal(self)test_register_and_get(method, line 102)def test_register_and_get(self, catalog)test_get_missing_raises_keyerror(method, line 107)def test_get_missing_raises_keyerror(self, catalog)test_search_exact_match(method, line 111)def test_search_exact_match(self, catalog)test_search_by_category(method, line 116)def test_search_by_category(self, catalog)test_search_by_technique(method, line 121)def test_search_by_technique(self, catalog)test_search_empty_query_returns_all(method, line 127)def test_search_empty_query_returns_all(self, catalog)test_list_all_sorted(method, line 131)def test_list_all_sorted(self, catalog)test_list_by_platform(method, line 136)def test_list_by_platform(self, catalog)test_list_by_category(method, line 141)def test_list_by_category(self, catalog)test_save_load_roundtrip(method, line 147)def test_save_load_roundtrip(self, catalog, tmp_sessions)test_load_missing_file_returns_empty(method, line 153)def test_load_missing_file_returns_empty(self, tmp_sessions)test_empty_catalog(method, line 158)def test_empty_catalog(self)test_register_overwrites(method, line 165)def test_register_overwrites(self)test_install_and_check(method, line 175)def test_install_and_check(self, tmp_sessions)test_uninstall(method, line 182)def test_uninstall(self, tmp_sessions)test_uninstall_nonexistent(method, line 189)def test_uninstall_nonexistent(self, tmp_sessions)test_list_installed(method, line 193)def test_list_installed(self, tmp_sessions)test_get_install_info(method, line 201)def test_get_install_info(self, tmp_sessions)test_get_install_info_nonexistent(method, line 209)def test_get_install_info_nonexistent(self, tmp_sessions)test_manifest_persistence(method, line 213)def test_manifest_persistence(self, tmp_sessions)test_verify_with_empty_hash_skips(method, line 222)def test_verify_with_empty_hash_skips(self, tmp_sessions)test_compute_sha256_deterministic(method, line 230)def test_compute_sha256_deterministic(self, tmp_sessions)test_verify_mismatched_hash(method, line 238)def test_verify_mismatched_hash(self, tmp_sessions)test_validate_args_missing_required(method, line 253)def test_validate_args_missing_required(self)test_validate_args_all_present(method, line 266)def test_validate_args_all_present(self)test_validate_args_no_required(method, line 278)def test_validate_args_no_required(self)test_search_enriches_with_install_status(method, line 292)def test_search_enriches_with_install_status(self, tmp_sessions)test_info_returns_catalog_and_install_state(method, line 299)def test_info_returns_catalog_and_install_state(self, tmp_sessions)test_info_missing_bof(method, line 306)def test_info_missing_bof(self)test_install_and_uninstall(method, line 311)def test_install_and_uninstall(self, tmp_sessions)test_install_already_installed(method, line 321)def test_install_already_installed(self, tmp_sessions)test_install_missing_bof(method, line 327)def test_install_missing_bof(self)test_uninstall_missing_bof(method, line 332)def test_uninstall_missing_bof(self, tmp_sessions)test_list_installed_empty_initially(method, line 337)def test_list_installed_empty_initially(self, tmp_sessions)test_list_missing_dependencies(method, line 342)def test_list_missing_dependencies(self, tmp_sessions)test_list_missing_dependencies_unknown_bof(method, line 347)def test_list_missing_dependencies_unknown_bof(self)test_bulk_install(method, line 352)def test_bulk_install(self, tmp_sessions)test_platform_values(method, line 360)def test_platform_values(self)test_category_values(method, line 364)def test_category_values(self)
- Depends on:
modules/bof_registry.py
tests/test_bootstrap_installer.py
- Doc: Integration tests for the installer scripts (no network, no apt).
- Layer: testing
- Language: py
- Symbols:
_run_bootstrap(function, line 29)def _run_bootstrap(args, env, cwd)_git(function, line 44)def _git(args, cwd)test_bootstrap_help_lists_options(function, line 55)def test_bootstrap_help_lists_options()test_bootstrap_rejects_unknown_flag(function, line 63)def test_bootstrap_rejects_unknown_flag()test_bootstrap_rejects_bad_modes(function, line 75)def test_bootstrap_rejects_bad_modes()test_install_pipe_guard(function, line 88)def test_install_pipe_guard(tmp_path)_make_stub_repo(function, line 105)def _make_stub_repo(path)test_existing_checkout_abort_changes_nothing(function, line 118)def test_existing_checkout_abort_changes_nothing(tmp_path)test_debug_flag_traces_execution(function, line 138)def test_debug_flag_traces_execution(tmp_path)test_existing_checkout_update_reinstalls(function, line 153)def test_existing_checkout_update_reinstalls(tmp_path)test_existing_checkout_clean_backs_up_payload(function, line 170)def test_existing_checkout_clean_backs_up_payload(tmp_path)test_non_checkout_path_fails_without_tty(function, line 195)def test_non_checkout_path_fails_without_tty(tmp_path)test_install_uses_supported_pip_flags(function, line 208)def test_install_uses_supported_pip_flags()test_scripts_are_executable_and_clean(function, line 220)def test_scripts_are_executable_and_clean()
tests/test_boyscout_contracts.py
- Doc: Boy-scout contracts for critical shared surfaces.
- Layer: testing
- Language: py
- Symbols:
_bound_import_names(function, line 27)def _bound_import_names(tree)test_lazyown_has_no_unused_imports(function, line 42)def test_lazyown_has_no_unused_imports()_load_mcp_module(function, line 52)def _load_mcp_module()test_playbook_target_is_shell_quoted(function, line 110)def test_playbook_target_is_shell_quoted()test_replace_placeholders_matches_single_pass_engine(function, line 119)def test_replace_placeholders_matches_single_pass_engine()test_replace_placeholders_keeps_brace_values_literal(function, line 133)def test_replace_placeholders_keeps_brace_values_literal()test_deploy_has_no_todo_markers(function, line 141)def test_deploy_has_no_todo_markers()Tool(class, line 66)class ToolTextContent(class, line 73)class TextContentServer(class, line 83)class Server__init__(method, line 69)def __init__(self)__init__(method, line 76)def __init__(self)__init__(method, line 86)def __init__(self)list_tools(method, line 89)def list_tools(self)call_tool(method, line 93)def call_tool(self)
- Depends on:
skills/lazyown_mcp.py,utils.py
tests/test_bridge_catalog_filtered.py
- Doc: tests/test_bridge_catalog_filtered.py Tests for
BridgeDispatcher.catalog_summary_filtered... - Layer: testing
- Language: py
- Symbols:
dispatcher(function, line 26)def dispatcher()TestCatalogSummaryFiltered(class, line 32)class TestCatalogSummaryFilteredTestBridgeCatalogToolFunction(class, line 111)class TestBridgeCatalogToolFunctiontest_no_args_matches_unfiltered_summary(method, line 33)def test_no_args_matches_unfiltered_summary(self, dispatcher)test_phase_arg_restricts_to_one_phase(method, line 38)def test_phase_arg_restricts_to_one_phase(self, dispatcher)test_phase_arg_accepts_world_model_alias(method, line 43)def test_phase_arg_accepts_world_model_alias(self, dispatcher)_entries_for(method, line 48)def _entries_for(self, dispatcher, phase, command_name)test_os_hint_linux_excludes_windows_only_entries(method, line 51)def test_os_hint_linux_excludes_windows_only_entries(self, dispatcher)test_os_hint_windows_excludes_linux_only_entries(method, line 61)def test_os_hint_windows_excludes_linux_only_entries(self, dispatcher)test_os_filter_shrinks_or_preserves_each_phase(method, line 71)def test_os_filter_shrinks_or_preserves_each_phase(self, dispatcher)test_phase_plus_os_combines_both_filters(method, line 81)def test_phase_plus_os_combines_both_filters(self, dispatcher)test_empty_phase_keeps_all_phases(method, line 89)def test_empty_phase_keeps_all_phases(self, dispatcher)test_phase_drops_smaller_than_unfiltered_total(method, line 94)def test_phase_drops_smaller_than_unfiltered_total(self, dispatcher)test_os_hint_any_is_passthrough(method, line 100)def test_os_hint_any_is_passthrough(self, dispatcher)test_os_hint_uppercase_normalized(method, line 105)def test_os_hint_uppercase_normalized(self, dispatcher)test_no_args_returns_full_catalog_header(method, line 112)def test_no_args_returns_full_catalog_header(self)test_phase_arg_appears_in_header(method, line 120)def test_phase_arg_appears_in_header(self)test_os_hint_only_appears_in_header(method, line 127)def test_os_hint_only_appears_in_header(self)test_unknown_phase_returns_friendly_no_match(method, line 134)def test_unknown_phase_returns_friendly_no_match(self)test_registry_exposes_optional_phase_and_os(method, line 140)def test_registry_exposes_optional_phase_and_os(self)
- Depends on:
modules/lazyown_bridge.py,skills/lazyown_groq_agents.py
tests/test_c2_agent.py
- Doc: Malleable C2 agent: template safety, key ownership, record reading.
- Layer: testing
- Language: py
- Symbols:
test_client_id_derivation(function, line 17)def test_client_id_derivation()test_template_renders_without_tokens(function, line 29)def test_template_renders_without_tokens()test_template_rejects_bad_inputs(function, line 37)def test_template_rejects_bad_inputs()test_template_is_py25_safe(function, line 51)def test_template_is_py25_safe()test_template_drops_inherited_fds(function, line 60)def test_template_drops_inherited_fds()test_key_never_generated_silently(function, line 68)def test_key_never_generated_silently(tmp_path, monkeypatch)test_key_snapshot_roundtrip(function, line 79)def test_key_snapshot_roundtrip(tmp_path, monkeypatch)test_read_records_newest_last(function, line 91)def test_read_records_newest_last(tmp_path, monkeypatch)test_c2_addon_contract(function, line 104)def test_c2_addon_contract()test_credentials_file_sync_writes_live_creds(function, line 117)def test_credentials_file_sync_writes_live_creds(tmp_path)test_shell_sync_runs_after_params_exist(function, line 136)def test_shell_sync_runs_after_params_exist()test_shell_sync_adopts_file_creds(function, line 148)def test_shell_sync_adopts_file_creds(tmp_path, monkeypatch)test_sync_refuses_keyless_payload(function, line 172)def test_sync_refuses_keyless_payload(tmp_path, monkeypatch)test_c2_session_commands_are_non_interactive(function, line 194)def test_c2_session_commands_are_non_interactive()test_c2_reboot_registered(function, line 207)def test_c2_reboot_registered()test_fresh_lab_creds_rotate_and_shape(function, line 216)def test_fresh_lab_creds_rotate_and_shape()_Stub(class, line 156)class _Stub_Stub(class, line 179)class _Stub__init__(method, line 160)def __init__(self)__init__(method, line 183)def __init__(self)
- Depends on:
lazyown.py,modules/__init__.py
tests/test_c2_profile_engine.py
- Doc: Tests for modules/c2_profile_engine.py — TlsProfile, DnsProfile, SmbProfile, WebSocketProfile...
- Layer: testing
- Language: py
- Symbols:
TestTlsProfile(class, line 34)class TestTlsProfileTestDnsProfile(class, line 99)class TestDnsProfileTestSmbProfile(class, line 154)class TestSmbProfileTestWebSocketProfile(class, line 183)class TestWebSocketProfileTestProfileRotator(class, line 214)class TestProfileRotatorTestProfileValidator(class, line 291)class TestProfileValidatorTestProfileEngine(class, line 397)class TestProfileEnginetest_default_construction(method, line 35)def test_default_construction(self)test_get_cipher_suites_returns_library_defaults(method, line 44)def test_get_cipher_suites_returns_library_defaults(self)test_get_cipher_suites_returns_custom_when_set(method, line 50)def test_get_cipher_suites_returns_custom_when_set(self)test_get_cipher_suites_unknown_library_falls_back_to_generic(method, line 55)def test_get_cipher_suites_unknown_library_falls_back_to_generic(self)test_get_ja3_hash_produces_stable_output(method, line 61)def test_get_ja3_hash_produces_stable_output(self)test_get_ja3_hash_with_grease_produces_variable_output(method, line 72)def test_get_ja3_hash_with_grease_produces_variable_output(self)test_serialization_roundtrip(method, line 77)def test_serialization_roundtrip(self)test_from_dict_empty(method, line 90)def test_from_dict_empty(self)test_disabled_profile(method, line 94)def test_disabled_profile(self)test_default_construction(method, line 100)def test_default_construction(self)test_build_query_subdomain_base64(method, line 107)def test_build_query_subdomain_base64(self)test_build_query_subdomain_base32(method, line 113)def test_build_query_subdomain_base32(self)test_build_query_subdomain_hex(method, line 119)def test_build_query_subdomain_hex(self)test_build_query_subdomain_truncates_to_max_length(method, line 124)def test_build_query_subdomain_truncates_to_max_length(self)test_build_query_subdomain_ttl_cache_bypass_disabled(method, line 130)def test_build_query_subdomain_ttl_cache_bypass_disabled(self)test_serialization_roundtrip(method, line 135)def test_serialization_roundtrip(self)test_from_dict_empty(method, line 148)def test_from_dict_empty(self)test_default_construction(method, line 155)def test_default_construction(self)test_serialization_roundtrip(method, line 161)def test_serialization_roundtrip(self)test_from_dict_empty(method, line 178)def test_from_dict_empty(self)test_default_construction(method, line 184)def test_default_construction(self)test_serialization_roundtrip(method, line 191)def test_serialization_roundtrip(self)test_from_dict_empty(method, line 208)def test_from_dict_empty(self)test_requires_at_least_one_slot(method, line 215)def test_requires_at_least_one_slot(self)test_single_slot_always_active(method, line 219)def test_single_slot_always_active(self)test_rotation_cycles_through_slots(method, line 226)def test_rotation_cycles_through_slots(self)test_rotation_skips_cooldown_slots(method, line 238)def test_rotation_skips_cooldown_slots(self)test_rotation_resets_all_cooldowns_when_all_busy(method, line 252)def test_rotation_resets_all_cooldowns_when_all_busy(self)test_list_slots(method, line 263)def test_list_slots(self)test_is_available_fresh_slot(method, line 274)def test_is_available_fresh_slot(self)test_is_available_after_touch(method, line 278)def test_is_available_after_touch(self)test_current_slot_identity(method, line 283)def test_current_slot_identity(self)test_validate_tls_valid(method, line 292)def test_validate_tls_valid(self)test_validate_tls_disabled_skips(method, line 297)def test_validate_tls_disabled_skips(self)test_validate_tls_invalid_version(method, line 302)def test_validate_tls_invalid_version(self)test_validate_tls_missing_key_with_cert(method, line 308)def test_validate_tls_missing_key_with_cert(self)test_validate_tls_unknown_library(method, line 318)def test_validate_tls_unknown_library(self)test_validate_dns_enabled_missing_domain(method, line 327)def test_validate_dns_enabled_missing_domain(self)test_validate_dns_invalid_encoding(method, line 333)def test_validate_dns_invalid_encoding(self)test_validate_dns_disabled_skips(method, line 339)def test_validate_dns_disabled_skips(self)test_validate_dns_invalid_domain_format(method, line 344)def test_validate_dns_invalid_domain_format(self)test_validate_smb_missing_pipe_name(method, line 350)def test_validate_smb_missing_pipe_name(self)test_validate_smb_disabled_skips(method, line 356)def test_validate_smb_disabled_skips(self)test_validate_smb_username_without_domain(method, line 361)def test_validate_smb_username_without_domain(self)test_validate_websocket_invalid_protocol(method, line 372)def test_validate_websocket_invalid_protocol(self)test_validate_websocket_disabled_skips(method, line 378)def test_validate_websocket_disabled_skips(self)test_validate_all_returns_dict(method, line 383)def test_validate_all_returns_dict(self)test_default_engine_has_http_slot(method, line 398)def test_default_engine_has_http_slot(self)test_engine_with_all_transports(method, line 402)def test_engine_with_all_transports(self)test_engine_validate_returns_errors_for_invalid_dns(method, line 412)def test_engine_validate_returns_errors_for_invalid_dns(self)test_engine_rotate_through_transports(method, line 420)def test_engine_rotate_through_transports(self)test_engine_get_active_profile_dict(method, line 427)def test_engine_get_active_profile_dict(self)test_engine_get_all_profiles_dict(method, line 433)def test_engine_get_all_profiles_dict(self)test_engine_from_dict(method, line 442)def test_engine_from_dict(self)test_engine_from_payload(method, line 455)def test_engine_from_payload(self)test_engine_empty_payload_falls_back_to_defaults(method, line 465)def test_engine_empty_payload_falls_back_to_defaults(self)
- Depends on:
modules/c2_profile_engine.py
tests/test_c2_route_auth.py
- Doc: Guard the C2 route-level auth boundaries.
- Layer: testing
- Language: py
- Symbols:
_route_decorators(function, line 75)def _route_decorators()routes(function, line 106)def routes()test_protected_endpoints_require_auth(function, line 110)def test_protected_endpoints_require_auth(routes)test_public_endpoints_stay_open(function, line 115)def test_public_endpoints_stay_open(routes)test_all_protected_endpoints_exist(function, line 120)def test_all_protected_endpoints_exist(routes)
tests/test_c2_shell_lazy.py
- Doc: The C2 must not build the CLI shell at module load.
- Layer: testing
- Language: py
- Symbols:
_module_tree(function, line 21)def _module_tree()_load_proxy_class(function, line 25)def _load_proxy_class()TestNoEagerCliBuild(class, line 62)class TestNoEagerCliBuildTestLazyShellProxy(class, line 103)class TestLazyShellProxy_FakeShell(class, line 40)class _FakeShell_init_shell(function, line 51)def _init_shell()test_no_lazyown_import_at_top_level(method, line 63)def test_no_lazyown_import_at_top_level(self)test_no_eager_shell_build(method, line 76)def test_no_eager_shell_build(self)test_lazy_accessor_with_boot_sequence(method, line 88)def test_lazy_accessor_with_boot_sequence(self)test_reads_forward_and_share_target(method, line 104)def test_reads_forward_and_share_target(self)test_writes_forward(method, line 111)def test_writes_forward(self)test_shell_output_attribute(method, line 118)def test_shell_output_attribute(self)__init__(method, line 41)def __init__(self)one_cmd(method, line 45)def one_cmd(self, command)
tests/test_c2_surfaces.py
- Doc: C2 dashboard surfaces fed by the autonomous loop and APT chains.
- Layer: testing
- Language: py
- Symbols:
_sandbox(function, line 23)def _sandbox(tmp_path)test_publish_banner_dedupes(function, line 30)def test_publish_banner_dedupes(tmp_path)test_publish_cve_validates_and_dedupes(function, line 42)def test_publish_cve_validates_and_dedupes(tmp_path)test_append_note_never_clobbers(function, line 56)def test_append_note_never_clobbers(tmp_path)test_register_loot_event_dedupes_and_rejects_traversal(function, line 66)def test_register_loot_event_dedupes_and_rejects_traversal(tmp_path)test_group_tasks_unique_hits(function, line 77)def test_group_tasks_unique_hits(tmp_path)test_record_outcome_feeds_c2_surfaces(function, line 95)def test_record_outcome_feeds_c2_surfaces(tmp_path, monkeypatch)test_lazyreport_errors_are_actionable(function, line 122)def test_lazyreport_errors_are_actionable(monkeypatch)_StubWM(class, line 103)class _StubWM_refused(function, line 132)def _refused()_slow(function, line 141)def _slow()update_from_findings(method, line 104)def update_from_findings(self, findings)
- Depends on:
contrib/legacy/lazydeepseekcli.py,modules/atomic_exploit_bridge.py,modules/c2_surfaces.py
tests/test_campaign_import_safety.py
- Doc: Campaign import trust boundaries hold against hostile packages.
- Layer: testing
- Language: py
- Symbols:
_make_evil_zip(function, line 27)def _make_evil_zip(path)TestZipSlip(class, line 35)class TestZipSlipTestColumnFiltering(class, line 55)class TestColumnFilteringTestCopyTree(class, line 80)class TestCopyTreeTestCampaignRoutesThroughHelpers(class, line 96)class TestCampaignRoutesThroughHelperstest_evil_members_skipped(method, line 36)def test_evil_members_skipped(self, tmp_path)test_legit_tree_extracted(method, line 46)def test_legit_tree_extracted(self, tmp_path)test_identifier_policy(method, line 56)def test_identifier_policy(self)test_unknown_and_hostile_dropped(method, line 62)def test_unknown_and_hostile_dropped(self)test_order_preserved(method, line 67)def test_order_preserved(self)test_filtered_insert_roundtrip(method, line 70)def test_filtered_insert_roundtrip(self, tmp_path)test_symlinks_not_followed(method, line 81)def test_symlinks_not_followed(self, tmp_path)test_no_raw_extractall_on_import(method, line 97)def test_no_raw_extractall_on_import(self)test_uses_safe_helpers(method, line 108)def test_uses_safe_helpers(self)
- Depends on:
core/safe_import.py
tests/test_categories.py
- Doc: Tests for modules/categories.py — category constants and look-up tables.
- Layer: testing
- Language: py
- Symbols:
TestCategoryConstants(class, line 28)class TestCategoryConstantsTestShortToCategory(class, line 78)class TestShortToCategoryTestCategoryToShort(class, line 128)class TestCategoryToShortTestAllCategories(class, line 154)class TestAllCategoriesTestBijectionInvariant(class, line 172)class TestBijectionInvarianttest_all_recon_values(method, line 29)def test_all_recon_values(self)test_all_scanning_values(method, line 32)def test_all_scanning_values(self)test_all_exploitation_values(method, line 35)def test_all_exploitation_values(self)test_all_post_exploitation_values(method, line 38)def test_all_post_exploitation_values(self)test_all_persistence_values(method, line 41)def test_all_persistence_values(self)test_all_privesc_values(method, line 44)def test_all_privesc_values(self)test_all_cred_access_values(method, line 47)def test_all_cred_access_values(self)test_all_lateral_values(method, line 50)def test_all_lateral_values(self)test_all_exfil_values(method, line 53)def test_all_exfil_values(self)test_all_c2_values(method, line 56)def test_all_c2_values(self)test_all_reporting_values(method, line 59)def test_all_reporting_values(self)test_all_misc_values(method, line 62)def test_all_misc_values(self)test_all_lua_values(method, line 65)def test_all_lua_values(self)test_all_ai_values(method, line 68)def test_all_ai_values(self)test_all_cloud_values(method, line 71)def test_all_cloud_values(self)test_all_container_values(method, line 74)def test_all_container_values(self)test_recon_to_category(method, line 79)def test_recon_to_category(self)test_scanning_to_category(method, line 82)def test_scanning_to_category(self)test_enum_to_scanning_category(method, line 85)def test_enum_to_scanning_category(self)test_exploit_to_category(method, line 88)def test_exploit_to_category(self)test_post_to_category(method, line 91)def test_post_to_category(self)test_persistence_to_category(method, line 94)def test_persistence_to_category(self)test_privesc_to_category(method, line 97)def test_privesc_to_category(self)test_credential_to_category(method, line 100)def test_credential_to_category(self)test_lateral_to_category(method, line 103)def test_lateral_to_category(self)test_exfil_to_category(method, line 106)def test_exfil_to_category(self)test_c2_to_category(method, line 109)def test_c2_to_category(self)test_reporting_to_category(method, line 112)def test_reporting_to_category(self)test_misc_to_category(method, line 115)def test_misc_to_category(self)test_ai_to_category(method, line 118)def test_ai_to_category(self)test_unknown_short_name_raises_key_error(method, line 121)def test_unknown_short_name_raises_key_error(self)test_recon_reverse_lookup(method, line 129)def test_recon_reverse_lookup(self)test_exploitation_reverse_lookup(method, line 132)def test_exploitation_reverse_lookup(self)test_privesc_reverse_lookup(method, line 135)def test_privesc_reverse_lookup(self)test_c2_reverse_lookup(method, line 138)def test_c2_reverse_lookup(self)test_reverse_lookup_roundtrip(method, line 141)def test_reverse_lookup_roundtrip(self)test_reverse_lookup_less_than_or_equal_forward(method, line 150)def test_reverse_lookup_less_than_or_equal_forward(self)test_every_short_key_in_all_categories(method, line 155)def test_every_short_key_in_all_categories(self)test_all_categories_non_empty(method, line 161)def test_all_categories_non_empty(self)test_no_duplicate_all_categories(method, line 165)def test_no_duplicate_all_categories(self)test_all_categories_count(method, line 168)def test_all_categories_count(self)test_forward_and_reverse_match(method, line 173)def test_forward_and_reverse_match(self)
- Depends on:
modules/categories.py
tests/test_chain_mode.py
- Doc: Tests for cli/chain_mode.py.
- Layer: testing
- Language: py
- Symbols:
_Step(class, line 36)class _Step_resolver(function, line 45)def _resolver()_engine(function, line 52)def _engine(resolver)test_suggestion_from_step_and_string(function, line 85)def test_suggestion_from_step_and_string()test_step_none_when_disabled(function, line 90)def test_step_none_when_disabled()test_step_none_when_not_interactive(function, line 95)def test_step_none_when_not_interactive()test_step_none_for_skip_verbs(function, line 101)def test_step_none_for_skip_verbs(verb)test_enter_runs_top_suggestion(function, line 106)def test_enter_runs_top_suggestion()test_number_selects_ranked_alternative(function, line 116)def test_number_selects_ranked_alternative()test_override_runs_operator_command(function, line 126)def test_override_runs_operator_command()test_skip_keeps_chain_mode_enabled(function, line 136)def test_skip_keeps_chain_mode_enabled()test_exit_words_disable_chain_mode(function, line 144)def test_exit_words_disable_chain_mode(word)test_no_suggestions_enter_skips_custom_command_runs(function, line 151)def test_no_suggestions_enter_skips_custom_command_runs()test_invalid_number_re_prompts_then_skips(function, line 160)def test_invalid_number_re_prompts_then_skips()test_invalid_number_re_prompts_then_accepts_valid_pick(function, line 168)def test_invalid_number_re_prompts_then_accepts_valid_pick()test_keyboard_interrupt_disables(function, line 178)def test_keyboard_interrupt_disables(tmp_path)test_auto_pause_after_max_steps(function, line 195)def test_auto_pause_after_max_steps(tmp_path)test_resolver_failure_degrades_to_no_suggestions(function, line 211)def test_resolver_failure_degrades_to_no_suggestions()test_store_roundtrip_and_missing(function, line 221)def test_store_roundtrip_and_missing(tmp_path)test_store_survives_malformed_file(function, line 230)def test_store_survives_malformed_file(tmp_path)test_engine_reads_persisted_state(function, line 239)def test_engine_reads_persisted_state(tmp_path)test_persist_toggle_writes_state_file(function, line 252)def test_persist_toggle_writes_state_file(tmp_path)test_prompt_exit_words_persist_off(function, line 267)def test_prompt_exit_words_persist_off(tmp_path)__init__(method, line 39)def __init__(self, name, source, reason)resolve(function, line 46)def resolve(cmd, phase)fake_input(function, line 63)def fake_input(prompt)raise_ki(function, line 179)def raise_ki(prompt)broken(function, line 212)def broken(cmd, phase)
- Depends on:
cli/chain_mode.py
tests/test_chain_registry.py
- Doc: Chain registry: orchestration from chains/*.yaml, never hardcoded steps.
- Layer: testing
- Language: py
- Symbols:
test_shipped_chain_loads(function, line 18)def test_shipped_chain_loads()test_validate_rejects_bad_chains(function, line 33)def test_validate_rejects_bad_chains()test_resolve_substitutes_and_skips(function, line 43)def test_resolve_substitutes_and_skips(tmp_path, monkeypatch)test_resolve_flags_unresolved_tokens(function, line 65)def test_resolve_flags_unresolved_tokens()test_chain_yaml_matches_skill_contract(function, line 73)def test_chain_yaml_matches_skill_contract()test_extends_inherits_steps_and_merges_defaults(function, line 80)def test_extends_inherits_steps_and_merges_defaults(tmp_path)test_extends_cycle_and_unknown_parent_rejected(function, line 110)def test_extends_cycle_and_unknown_parent_rejected(tmp_path)test_disabled_chains_skip_but_stay_visible(function, line 124)def test_disabled_chains_skip_but_stay_visible(tmp_path)test_generate_for_playbook_roundtrip(function, line 143)def test_generate_for_playbook_roundtrip(tmp_path)
- Depends on:
modules/chain_registry.py
tests/test_ci_strict.py
- Doc: Contract tests for the strict CI workflow.
- Layer: testing
- Language: py
- Symbols:
test_strict_workflow_exists(function, line 21)def test_strict_workflow_exists()test_strict_workflow_contains_no_swallow_flags(function, line 26)def test_strict_workflow_contains_no_swallow_flags()test_strict_workflow_runs_lint(function, line 38)def test_strict_workflow_runs_lint()test_strict_workflow_runs_type_check(function, line 44)def test_strict_workflow_runs_type_check()test_strict_workflow_runs_security_scan(function, line 50)def test_strict_workflow_runs_security_scan()test_strict_workflow_runs_pytest(function, line 56)def test_strict_workflow_runs_pytest()test_strict_workflow_targets_main_branch(function, line 62)def test_strict_workflow_targets_main_branch()test_old_swallow_workflow_is_removed(function, line 68)def test_old_swallow_workflow_is_removed()test_ci_workflow_has_no_swallowed_quality_gate(function, line 83)def test_ci_workflow_has_no_swallowed_quality_gate()test_ci_workflow_gates_severity_and_types(function, line 91)def test_ci_workflow_gates_severity_and_types()
tests/test_claudemd_consistency.py
- Doc: Guard against drift between CLAUDE.md numeric claims and reality.
- Layer: testing
- Language: py
- Symbols:
claude_md_text(function, line 22)def claude_md_text()test_claude_md_reports_actual_test_file_count(function, line 28)def test_claude_md_reports_actual_test_file_count(claude_md_text)test_claude_md_does_not_reference_deduplicated_config(function, line 41)def test_claude_md_does_not_reference_deduplicated_config(claude_md_text)
Next: KB_tests_p4.md