FACT_core
FACT_core copied to clipboard
Config rework
This is very mich WIP but it should still be worth looking at right now.
The interesting part is src/config.py
.
All other changes are to use the new mechanism for analysis plugins.
~I'll fix the tests later. ~ Done.
Some benefits of this approach are:
- Automatic verification of config entrys on loading
- No more passing around of the same
ConfigParser
instance -> Less code - Autocompletion when accessing
cfg.section.key
@jstucke This is now ready for review. Some todos are still unresolved but they can be done in a follow up pr. The tests should pass, locally everything that passes on the postgres-redis-intercom branch passes for this branch.
Maybe this could be merged in the database-migration
branch after merging postgres-redis-intercom.
~Many tests seem to be broken, converting to draft again.~
Fixed, now all test that pass on postgres-redis-intercom should pass here too.
Tests still failing locally (both on postgres-redis-intercom and this branch):
FAILED src/plugins/analysis/cve_lookup/test/test_cve_lookup.py::test_process_object - AssertionError: assert 'Dnsmasq 2.40 (CRITICAL)...
FAILED src/plugins/analysis/users_and_passwords/test/test_plugin_password_file_analyzer.py::TestAnalysisPluginPasswordFileAnalyzer::test_process_object_password_in_binary_file
FAILED src/plugins/analysis/users_and_passwords/test/test_plugin_password_file_analyzer.py::TestAnalysisPluginPasswordFileAnalyzer::test_process_object_shadow_file
FAILED src/plugins/analysis/users_and_passwords/test/test_plugin_password_file_analyzer.py::test_crack_hash_failure - AssertionError:...
FAILED src/plugins/analysis/users_and_passwords/test/test_plugin_password_file_analyzer.py::test_crack_hash_success - AssertionError:...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_advanced_search - sqlalchemy.exc.OperationalEr...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_advanced_search_file_object - sqlalchemy.exc.O...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_advanced_search_get - sqlalchemy.exc.Operation...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_advanced_search_inverse_only_firmware - sqlalc...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_advanced_search_only_firmwares - sqlalchemy.ex...
FAILED src/test/acceptance/test_advanced_search.py::TestAcceptanceAdvancedSearch::test_rest_recursive_firmware_search - sqlalchemy.ex...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_about_doesnt_need_authentication - sqlalchem...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_all_endpoints_need_authentication - sqlalche...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_api_key_auth - sqlalchemy.exc.OperationalErr...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_login - sqlalchemy.exc.OperationalError: (ps...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_redirection - sqlalchemy.exc.OperationalErro...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_role_based_access - sqlalchemy.exc.Operation...
FAILED src/test/acceptance/test_authenticated_gui.py::TestAcceptanceAuthentication::test_show_login_page - sqlalchemy.exc.Operational...
FAILED src/test/acceptance/test_binary_search.py::TestAcceptanceBinarySearch::test_binary_search - sqlalchemy.exc.OperationalError: (...
FAILED src/test/acceptance/test_compare_firmwares.py::TestAcceptanceCompareFirmwares::test_compare_firmwares - sqlalchemy.exc.Operati...
FAILED src/test/acceptance/test_file_download.py::TestAcceptanceDownloadFile::test_firmware_download - sqlalchemy.exc.OperationalErro...
FAILED src/test/acceptance/test_io_routes.py::TestAcceptanceIoRoutes::test_ida_download - sqlalchemy.exc.OperationalError: (psycopg2....
FAILED src/test/acceptance/test_io_routes.py::TestAcceptanceIoRoutes::test_ida_download_bad_uid - sqlalchemy.exc.OperationalError: (p...
FAILED src/test/acceptance/test_io_routes.py::TestAcceptanceIoRoutes::test_pdf_download - sqlalchemy.exc.OperationalError: (psycopg2....
FAILED src/test/acceptance/test_io_routes.py::TestAcceptanceIoRoutes::test_radare_button - sqlalchemy.exc.OperationalError: (psycopg2...
FAILED src/test/acceptance/test_misc.py::TestAcceptanceMisc::test_misc - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError)...
FAILED src/test/acceptance/test_search.py::TestAcceptanceNormalSearch::test_search - sqlalchemy.exc.OperationalError: (psycopg2.Opera...
FAILED src/test/acceptance/test_upload_analyze_delete_firmware.py::TestAcceptanceAnalyzeFirmware::test_run_from_upload_via_show_analysis_to_delete
FAILED src/test/acceptance/rest/test_rest_analyze_firmware.py::TestRestFirmware::test_run_from_upload_to_show_analysis_and_search - s...
FAILED src/test/acceptance/rest/test_rest_binary_search.py::TestRestBinarySearch::test_binary_search - sqlalchemy.exc.OperationalErro...
FAILED src/test/acceptance/rest/test_rest_compare.py::TestRestCompareFirmware::test_run_from_upload_to_show_analysis - sqlalchemy.exc...
FAILED src/test/acceptance/rest/test_rest_download.py::TestRestDownloadFirmware::test_run_from_upload_to_show_analysis - sqlalchemy.e...
FAILED src/test/acceptance/rest/test_rest_statistic.py::TestRestStatistic::test_status - sqlalchemy.exc.OperationalError: (psycopg2.O...
FAILED src/test/acceptance/run_scripts/test_run_scripts.py::test_start_scripts_with_main[update_statistic] - storage.db_interface_bas...
FAILED src/test/integration/intercom/test_backend_scheduler.py::test_all_listeners_started - redis.exceptions.ConnectionError: Error ...
FAILED src/test/integration/intercom/test_intercom_common.py::test_small_file - redis.exceptions.ConnectionError: Error 111 connectin...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_analysis_plugin_publication - re...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_analysis_plugin_publication_not_available
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_analysis_task - redis.exceptions...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_compare_task - redis.exceptions....
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_peek_binary_task - redis.excepti...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_raw_download_task - redis.except...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_re_analyze_task - redis.exceptio...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_single_file_task - redis.excepti...
FAILED src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_tar_repack_task - redis.exceptio...
FAILED src/test/integration/storage/test_db_interface_view_sync.py::test_view_sync_interface - storage.db_interface_base.DbInterfaceE...
FAILED src/test/integration/storage/test_redis_interface.py::test_set_and_get - redis.exceptions.ConnectionError: Error 111 connectin...
FAILED src/test/integration/storage/test_redis_interface.py::test_set_and_get_chunked - redis.exceptions.ConnectionError: Error 111 c...
FAILED src/test/integration/storage/test_redis_interface.py::test_queue_put_and_get - redis.exceptions.ConnectionError: Error 111 con...
FAILED src/test/integration/storage/test_redis_interface.py::test_queue_chunked - redis.exceptions.ConnectionError: Error 111 connect...
FAILED src/test/unit/analysis/test_yara_plugin_base.py::TestAnalysisYaraBasePlugin::test_get_signature_paths - analysis.PluginBase.Pl...
FAILED src/test/unit/analysis/test_yara_plugin_base.py::TestAnalysisYaraBasePlugin::test_process_object - analysis.PluginBase.PluginI...
FAILED src/test/unit/analysis/test_yara_plugin_base.py::TestAnalysisYaraBasePlugin::test_process_object_nothing_found - analysis.Plug...
ERROR src/test/integration/intercom/test_intercom_common.py::test_small_file - redis.exceptions.ConnectionError: Error 111 connecting...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_analysis_plugin_publication - red...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_analysis_task - redis.exceptions....
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_compare_task - redis.exceptions.C...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_peek_binary_task - redis.exceptio...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_raw_download_task - redis.excepti...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_re_analyze_task - redis.exception...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_single_file_task - redis.exceptio...
ERROR src/test/integration/intercom/test_task_communication.py::TestInterComTaskCommunication::test_tar_repack_task - redis.exception...
ERROR src/test/integration/scheduler/test_cycle_with_tags.py::TestTagPropagation::test_run_analysis_with_tag - sqlalchemy.exc.Operati...
ERROR src/test/integration/scheduler/test_regression_virtual_file_path.py::test_check_collision - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/scheduler/test_unpack_analyse_and_compare.py::TestFileAddition::test_unpack_analyse_and_compare - sqlalche...
ERROR src/test/integration/scheduler/test_unpack_and_analyse.py::TestFileAddition::test_unpack_and_analyse - sqlalchemy.exc.Operation...
ERROR src/test/integration/statistic/test_update.py::test_get_general_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalE...
ERROR src/test/integration/statistic/test_update.py::test_malware_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError...
ERROR src/test/integration/statistic/test_update.py::test_get_mitigation_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operation...
ERROR src/test/integration/statistic/test_update.py::test_get_vulnerability_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operat...
ERROR src/test/integration/statistic/test_update.py::test_fw_meta_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError...
ERROR src/test/integration/statistic/test_update.py::test_file_type_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalErr...
ERROR src/test/integration/statistic/test_update.py::test_get_unpacking_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operationa...
ERROR src/test/integration/statistic/test_update.py::test_get_architecture_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operati...
ERROR src/test/integration/statistic/test_update.py::test_get_executable_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operation...
ERROR src/test/integration/statistic/test_update.py::test_get_ip_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError)...
ERROR src/test/integration/statistic/test_update.py::test_get_time_stats - sqlalchemy.exc.OperationalError: (psycopg2.OperationalErro...
ERROR src/test/integration/statistic/test_update.py::test_get_software_components_stats - sqlalchemy.exc.OperationalError: (psycopg2....
ERROR src/test/integration/statistic/test_work_load.py::TestWorkloadStatistic::test_update_workload_statistic - sqlalchemy.exc.Operat...
ERROR src/test/integration/storage/test_binary_service.py::test_get_binary_and_file_name - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_binary_service.py::test_get_binary_and_file_name_invalid_uid - sqlalchemy.exc.OperationalErro...
ERROR src/test/integration/storage/test_binary_service.py::test_get_repacked_binary_and_file_name - sqlalchemy.exc.OperationalError: ...
ERROR src/test/integration/storage/test_binary_service.py::test_get_repacked_binary_and_file_name_invalid_uid - sqlalchemy.exc.Operat...
ERROR src/test/integration/storage/test_binary_service.py::test_read_partial_binary - sqlalchemy.exc.OperationalError: (psycopg2.Oper...
ERROR src/test/integration/storage/test_binary_service.py::test_read_partial_binary_invalid_uid - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_delete_fo - sqlalchemy.exc.OperationalError: (psycopg2.Operationa...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_delete_cascade - sqlalchemy.exc.OperationalError: (psycopg2.Opera...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_remove_vp_no_other_fw - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_remove_vp_other_fw - sqlalchemy.exc.OperationalError: (psycopg2.O...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_delete_firmware - sqlalchemy.exc.OperationalError: (psycopg2.Oper...
ERROR src/test/integration/storage/test_db_interface_admin.py::test_delete_but_fo_is_in_fw - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_insert_objects - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_insert_fw_w_big_size - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_insert[fw_object0] - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_insert[fw_object1] - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_parents - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_duplicate_other_fw - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_duplicate_same_fw - sqlalchemy.exc.OperationalError: (ps...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_analysis_exists - sqlalchemy.exc.OperationalError: (psycopg2.Op...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_file_object - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_firmware - sqlalchemy.exc.OperationalError: (psycopg2.Op...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_insert_analysis - sqlalchemy.exc.OperationalError: (psycopg2.Op...
ERROR src/test/integration/storage/test_db_interface_backend.py::test_update_analysis - sqlalchemy.exc.OperationalError: (psycopg2.Op...
ERROR src/test/integration/storage/test_db_interface_common.py::test_init - sqlalchemy.exc.OperationalError: (psycopg2.OperationalErr...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_file - sqlalchemy.exc.OperationalError: (psycopg2.Operationa...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_file_filtered - sqlalchemy.exc.OperationalError: (psycopg2.O...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_fw - sqlalchemy.exc.OperationalError: (psycopg2.OperationalE...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_object_fw - sqlalchemy.exc.OperationalError: (psycopg2.Opera...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_object_fo - sqlalchemy.exc.OperationalError: (psycopg2.Opera...
ERROR src/test/integration/storage/test_db_interface_common.py::test_exists_fo - sqlalchemy.exc.OperationalError: (psycopg2.Operation...
ERROR src/test/integration/storage/test_db_interface_common.py::test_exists_fw - sqlalchemy.exc.OperationalError: (psycopg2.Operation...
ERROR src/test/integration/storage/test_db_interface_common.py::test_is_fw - sqlalchemy.exc.OperationalError: (psycopg2.OperationalEr...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_object_relationship - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_common.py::test_all_files_in_fw - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_common.py::test_all_files_in_fo - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_objects_by_uid_list - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_analysis - sqlalchemy.exc.OperationalError: (psycopg2.Operat...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_complete_object - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_common.py::test_all_uids_found_in_database - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_firmware_number - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_file_object_number - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_summary - sqlalchemy.exc.OperationalError: (psycopg2.Operati...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_summary - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_common.py::test_get_summary_of_one_error_handling - sqlalchemy.exc.OperationalEr...
ERROR src/test/integration/storage/test_db_interface_common.py::test_update_summary - sqlalchemy.exc.OperationalError: (psycopg2.Oper...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_child_tags_propagate - sqlalchemy.exc.OperationalError: ...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_child_tags_no_propagate - sqlalchemy.exc.OperationalErro...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_child_tags_no_tags - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_child_tags_duplicate - sqlalchemy.exc.OperationalError: ...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_child_tags_unique_tags - sqlalchemy.exc.OperationalError...
ERROR src/test/integration/storage/test_db_interface_common.py::test_collect_analysis_tags - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_comparison_exists - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_add_and_get_comparison_result - sqlalchemy.exc.OperationalEr...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_not_existing_result - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_calculate_comparison_id - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_comp_id_incomplete_entries - sqlalchemy.exc.OperationalError...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_latest_comparisons - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_delete_fw_cascades_to_comp - sqlalchemy.exc.OperationalError...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_latest_removed_firmware - sqlalchemy.exc.OperationalErro...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_total_number_of_results - sqlalchemy.exc.OperationalErro...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_exclusive_files[the_root_uid-expected_result0] - sqlalch...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_exclusive_files[some_other_uid-expected_result1] - sqlal...
ERROR src/test/integration/storage/test_db_interface_comparison.py::test_get_exclusive_files[None-expected_result2] - sqlalchemy.exc....
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_last_added_firmwares - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_hid - sqlalchemy.exc.OperationalError: (psycopg2.Operation...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_hid_fo - sqlalchemy.exc.OperationalError: (psycopg2.Operat...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_hid_invalid_uid - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_data_for_nice_list - sqlalchemy.exc.OperationalError: (psy...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_device_class_list - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_vendor_list - sqlalchemy.exc.OperationalError: (psycopg2.O...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_device_name_dict - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_fo - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_date - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_regex - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_like - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_lt_gt - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_or - sqlalchemy.exc.OperationalError: (psycopg2...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_unknown_op - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_fw[query0-expected0] - sqlalchemy.exc.Operation...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_fw[query1-expected1] - sqlalchemy.exc.Operation...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_fw[query2-expected2] - sqlalchemy.exc.Operation...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_parent - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_nested - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_json_array - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_json_types - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_wrong_key - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_summary - sqlalchemy.exc.OperationalError: (psy...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generic_search_tags - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_inverted_search - sqlalchemy.exc.OperationalError: (psycopg2.O...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_search_limit_skip_and_order - sqlalchemy.exc.OperationalError:...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_search_analysis_result - sqlalchemy.exc.OperationalError: (psy...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_other_versions - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_latest_comments - sqlalchemy.exc.OperationalError: (psycop...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_generate_file_tree_level - sqlalchemy.exc.OperationalError: (p...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_file_tree_data - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_number_of_total_matches[query0-1-1-1] - sqlalchemy.exc.Ope...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_number_of_total_matches[query1-2-1-0] - sqlalchemy.exc.Ope...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_number_of_total_matches[query2-1-1-0] - sqlalchemy.exc.Ope...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_number_of_total_matches[query3-1-1-0] - sqlalchemy.exc.Ope...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_rest_get_file_object_uids - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_rest_get_firmware_uids - sqlalchemy.exc.OperationalError: (psy...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_find_missing_analyses - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_find_failed_analyses - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_tag_list - sqlalchemy.exc.OperationalError: (psycopg2.Oper...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_query_from_cache - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_get_cached_count - sqlalchemy.exc.OperationalError: (psycopg2....
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_search_query_cache - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_frontend.py::test_data_for_dependency_graph - sqlalchemy.exc.OperationalError: (...
ERROR src/test/integration/storage/test_db_interface_frontend_editing.py::test_add_comment_to_object - sqlalchemy.exc.OperationalErro...
ERROR src/test/integration/storage/test_db_interface_frontend_editing.py::test_delete_comment - sqlalchemy.exc.OperationalError: (psy...
ERROR src/test/integration/storage/test_db_interface_frontend_editing.py::test_search_cache_insert - sqlalchemy.exc.OperationalError:...
ERROR src/test/integration/storage/test_db_interface_frontend_editing.py::test_search_cache_update - sqlalchemy.exc.OperationalError:...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_update_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operati...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_stats - sqlalchemy.exc.OperationalError: (psycopg2.Operationa...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_stats_list - sqlalchemy.exc.OperationalError: (psycopg2.Opera...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_sum - sqlalchemy.exc.OperationalError: (psycopg2.OperationalE...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_fw_count - sqlalchemy.exc.OperationalError: (psycopg2.Operati...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_fo_count - sqlalchemy.exc.OperationalError: (psycopg2.Operati...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_included_sum - sqlalchemy.exc.OperationalError: (psycopg2.Ope...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_filtered_included_sum - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_avg - sqlalchemy.exc.OperationalError: (psycopg2.OperationalE...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_values - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_analysis[None-expected_result0] - sqlalchemy.exc.O...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_analysis[q_filter1-expected_result1] - sqlalchemy....
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_values_in_summary - sqlalchemy.exc.OperationalError: (psyco...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_array[None-foo-expected_result0] - sqlalchemy.exc....
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_array[None-other-expected_result1] - sqlalchemy.ex...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_array[q_filter2-foo-expected_result2] - sqlalchemy...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_count_distinct_array[q_filter3-foo-expected_result3] - sqlalchemy...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_unpacking_file_types - sqlalchemy.exc.OperationalError: (psyc...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_unpacking_entropy - sqlalchemy.exc.OperationalError: (psycopg...
ERROR src/test/integration/storage/test_db_interface_stats.py::test_get_used_unpackers - sqlalchemy.exc.OperationalError: (psycopg2.O...
ERROR src/test/integration/storage/test_db_setup.py::test_user_exists - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) ...
ERROR src/test/integration/storage/test_db_setup.py::test_db_exists - sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) co...
ERROR src/test/integration/storage/test_redis_interface.py::test_set_and_get - redis.exceptions.ConnectionError: Error 111 connecting...
ERROR src/test/integration/storage/test_redis_interface.py::test_set_and_get_chunked - redis.exceptions.ConnectionError: Error 111 co...
ERROR src/test/integration/storage/test_redis_interface.py::test_queue_put_and_get - redis.exceptions.ConnectionError: Error 111 conn...
ERROR src/test/integration/storage/test_redis_interface.py::test_queue_chunked - redis.exceptions.ConnectionError: Error 111 connecti...
ERROR src/test/integration/web_interface/rest/test_rest_binary.py::TestRestDownload::test_rest_download_valid - sqlalchemy.exc.Operat...
ERROR src/test/integration/web_interface/rest/test_rest_binary.py::TestRestDownload::test_rest_download_invalid_uid - sqlalchemy.exc....
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_start_compare_valid - sqlalchemy....
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_start_compare_invalid_uid - sqlal...
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_start_compare_invalid_data - sqla...
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_get_compare_valid_not_in_db - sql...
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_get_compare_invalid_uid - sqlalch...
ERROR src/test/integration/web_interface/rest/test_rest_compare.py::TestRestStartCompare::test_rest_get_compare_invalid_data - sqlalc...
ERROR src/test/integration/web_interface/rest/test_rest_file_object.py::TestRestFileObject::test_rest_download_valid - sqlalchemy.exc...
ERROR src/test/integration/web_interface/rest/test_rest_file_object.py::TestRestFileObject::test_rest_request_multiple_file_objects
ERROR src/test/integration/web_interface/rest/test_rest_file_object.py::TestRestFileObject::test_rest_download_invalid_uid - sqlalche...
ERROR src/test/integration/web_interface/rest/test_rest_file_object.py::TestRestFileObject::test_rest_download_invalid_data - sqlalch...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_firmware_existing - sqlalchemy.exc.O...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_offset_to_empty_response - sqlalchemy.exc...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_stable_response_on_bad_paging - sqlalchem...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_search_existing - sqlalchemy.exc.Ope...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_search_not_existing - sqlalchemy.exc...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_upload_valid - sqlalchemy.exc.Operat...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_upload_invalid - sqlalchemy.exc.Oper...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_download_valid - sqlalchemy.exc.Oper...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_download_invalid_uid - sqlalchemy.ex...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_download_invalid_data - sqlalchemy.e...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_update_bad_query - sqlalchemy.exc.Op...
ERROR src/test/integration/web_interface/rest/test_rest_firmware.py::TestRestFirmware::test_rest_download_with_summary - sqlalchemy.e...
ERROR src/test/integration/web_interface/rest/test_rest_missing_analyses.py::TestRestMissingAnalyses::test_rest_get_missing_analyses
ERROR src/test/integration/web_interface/rest/test_rest_missing_analyses.py::TestRestMissingAnalyses::test_rest_get_failed_analyses
ERROR src/test/integration/web_interface/rest/test_rest_statistics.py::TestRestStatistics::test_rest_request_all_statistics - sqlalch...
ERROR src/test/integration/web_interface/rest/test_rest_statistics.py::TestRestStatistics::test_rest_request_single_statistic - sqlal...
ERROR src/test/integration/web_interface/rest/test_rest_statistics.py::TestRestStatistics::test_rest_request_non_existent_statistic
ERROR src/test/integration/web_interface/rest/test_rest_statistics.py::TestRestStatistics::test_rest_request_invalid_data - sqlalchem...
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs0] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs1] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs2] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs3] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs4] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs5] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs6] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs7] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_integration_try_actions[action_and_inputs8] - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_add_role - AttributeError: __enter__
ERROR src/test/unit/test_manage_users.py::test_password_is_hashed - AttributeError: __enter__
Rebased and changed destination branch.
@jstucke Could you have another look at this?
I think this is independent of a switch to toml.
The main part is the testing logic for the config.py
module.
I opened #867 to track the transition. I rebase-merged this branch in the newly created config-dev
branch.
If you are happy with this, please close this PR.
superseded by #867