wazuh / wazuh

Wazuh - The Open Source Security Platform. Unified XDR and SIEM protection for endpoints and cloud workloads.
https://wazuh.com/
Other
9.34k stars 1.48k forks source link

Release 4.8.0 - RC 1 - Python unit tests #23300

Closed javiersanchz closed 1 week ago

javiersanchz commented 1 week ago

The following issue aims to run all python unit tests for the current release candidate, report the results, and open new issues for any encountered errors.

Python unit tests information

Main release candidate issue #23246
Version 4.8.0
Release candidate # RC 1
Tag v4.8.0-rc1
Previous python unit tests issue #22152

Test report procedure

All individual test checks must be marked as:
Pass The test ran successfully.
Xfail The test was expected to fail and it failed. It must be properly justified and reported in an issue.
Skip The test was not run. It must be properly justified and reported in an issue.
Fail The test failed. A new issue must be opened to evaluate and address the problem.
All test results must have one the following statuses:
:green_circle: All checks passed.
:red_circle: There is at least one failed check.
:yellow_circle: There is at least one expected fail or skipped test and no failures.

Any failing test must be properly addressed with a new issue, detailing the error and the possible cause. It must be included in the Fixes section of the current release candidate main issue.

Any expected fail or skipped test must have an issue justifying the reason. All auditors must validate the justification for an expected fail or skipped test.

An extended report of the test results must be attached as a zip or txt. This report can be used by the auditors to dig deeper into any possible failures and details.

As for the coverage results, they must be added split by modules. Test files must not be included in the coverage report.

All test coverage results must have one of the following statuses:
:green_square: >= 75%
:yellow_square: >= 50%
:orange_square: >= 25%
:red_square: < 25%

Conclusions

All tests have passed and the fails have been reported or justified. I therefore conclude that this issue is finished and OK for this release candidate.

Coverage Status
Overall python unit tests coverage 92% :green_square:

Auditors validation

The definition of done for this one is the validation of the conclusions and the test results from all auditors.

All checks from below must be accepted in order to close this issue.

javiersanchz commented 1 week ago

Test report

Artifacts

Test results

API Tests


Test name Pass XPass Skip XFail Fail Issues Ref. Status
controllers/test/test_active_response_controller.py 1 0 0 0 0 :green_circle:
controllers/test/test_agent_controller.py 44 0 0 0 0 :green_circle:
controllers/test/test_cdb_list_controller.py 6 0 0 0 0 :green_circle:
controllers/test/test_ciscat_controller.py 1 0 0 0 0 :green_circle:
controllers/test/test_cluster_controller.py 24 0 0 0 0 :green_circle:
controllers/test/test_decoder_controller.py 7 0 0 0 0 :green_circle:
controllers/test/test_default_controller.py 1 0 0 0 0 :green_circle:
controllers/test/test_event_controller.py 1 0 0 0 0 :green_circle:
controllers/test/test_experimental_controller.py 15 0 0 0 0 :green_circle:
controllers/test/test_manager_controller.py 21 0 0 0 0 :green_circle:
controllers/test/test_mitre_controller.py 7 0 0 0 0 :green_circle:
controllers/test/test_overview_controller.py 1 0 0 0 0 :green_circle:
controllers/test/test_rootcheck_controller.py 4 0 0 0 0 :green_circle:
controllers/test/test_rule_controller.py 8 0 0 0 0 :green_circle:
controllers/test/test_sca_controller.py 2 0 0 0 0 :green_circle:
controllers/test/test_security_controller.py 51 0 0 0 0 :green_circle:
controllers/test/test_syscheck_controller.py 4 0 0 0 0 :green_circle:
controllers/test/test_syscollector_controller.py 9 0 0 0 0 :green_circle:
controllers/test/test_task_controller.py 1 0 0 0 0 :green_circle:
models/test/test_model.py 30 0 0 0 0 :green_circle:
test/test_alogging.py 22 0 0 0 0 :green_circle:
test/test_authentication.py 11 0 0 0 0 :green_circle:
test/test_configuration.py 50 0 0 0 0 :green_circle:
test/test_encoder.py 3 0 0 0 0 :green_circle:
test/test_middlewares.py 15 0 0 0 0 :green_circle:
test/test_signals.py 9 0 0 0 0 :green_circle:
test/test_uri_parser.py 3 0 0 0 0 :green_circle:
test/test_util.py 47 0 0 0 0 :green_circle:
test/test_validator.py 176 0 0 0 0 :green_circle:

Framework Test


Test name Pass XPass Skip XFail Fail Issues Ref. Status
scripts/tests/test_agent_groups.py 14 0 0 0 0 :green_circle:
scripts/tests/test_agent_upgrade.py 15 0 0 0 0 :green_circle:
scripts/tests/test_cluster_control.py 6 0 0 0 0 :green_circle:
scripts/tests/test_rbac_control.py 9 0 0 0 0 :green_circle:
scripts/tests/test_wazuh_clusterd.py 7 0 0 0 0 :green_circle:
scripts/tests/test_wazuh_logtest.py 22 0 0 0 0 :green_circle:
wazuh/core/cluster/dapi/tests/test_dapi.py 32 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_client.py 16 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_cluster.py 35 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_common.py 84 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_control.py 6 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_local_client.py 14 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_local_server.py 24 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_master.py 48 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_server.py 29 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_utils.py 16 0 0 0 0 :green_circle:
wazuh/core/cluster/tests/test_worker.py 34 0 0 0 0 :green_circle:
wazuh/core/tests/test_active_response.py 20 0 0 0 0 :green_circle:
wazuh/core/tests/test_agent.py 149 0 0 0 0 :green_circle:
wazuh/core/tests/test_cdb_list.py 38 0 0 0 0 :green_circle:
wazuh/core/tests/test_common.py 9 0 0 0 0 :green_circle:
wazuh/core/tests/test_configuration.py 88 0 0 0 0 :green_circle:
wazuh/core/tests/test_database.py 13 0 0 0 0 :green_circle:
wazuh/core/tests/test_decoder.py 16 0 0 0 0 :green_circle:
wazuh/core/tests/test_exception.py 10 0 0 0 0 :green_circle:
wazuh/core/tests/test_input_validator.py 3 0 0 0 0 :green_circle:
wazuh/core/tests/test_logtest.py 2 0 0 0 0 :green_circle:
wazuh/core/tests/test_manager.py 31 0 0 0 0 :green_circle:
wazuh/core/tests/test_mitre.py 13 0 0 0 0 :green_circle:
wazuh/core/tests/test_pyDaemonModule.py 5 0 0 0 0 :green_circle:
wazuh/core/tests/test_results.py 40 0 0 0 0 :green_circle:
wazuh/core/tests/test_rootcheck.py 13 0 0 0 0 :green_circle:
wazuh/core/tests/test_rule.py 23 0 0 0 0 :green_circle:
wazuh/core/tests/test_sca.py 29 0 0 0 0 :green_circle:
wazuh/core/tests/test_security.py 13 0 0 0 0 :green_circle:
wazuh/core/tests/test_stats.py 17 0 0 0 0 :green_circle:
wazuh/core/tests/test_syscheck.py 7 0 0 0 0 :green_circle:
wazuh/core/tests/test_syscollector.py 3 0 0 0 0 :green_circle:
wazuh/core/tests/test_task.py 8 0 0 0 0 :green_circle:
wazuh/core/tests/test_utils.py 291 0 0 0 0 :green_circle:
wazuh/core/tests/test_wazuh_queue.py 23 0 0 0 0 :green_circle:
wazuh/core/tests/test_wazuh_socket.py 20 0 0 0 0 :green_circle:
wazuh/core/tests/test_wdb.py 31 0 0 0 0 :green_circle:
wazuh/core/tests/test_wlogging.py 12 0 0 0 0 :green_circle:
wazuh/rbac/tests/test_auth_context.py 2 0 0 0 0 :green_circle:
wazuh/rbac/tests/test_decorators.py 109 0 0 0 0 :green_circle:
wazuh/rbac/tests/test_default_configuration.py 55 0 0 0 0 :green_circle:
wazuh/rbac/tests/test_orm.py 62 0 0 0 0 :green_circle:
wazuh/rbac/tests/test_preprocessor.py 11 0 0 0 0 :green_circle:
wazuh/tests/test_active_response.py 12 0 0 0 0 :green_circle:
wazuh/tests/test_agent.py 122 0 0 0 0 :green_circle:
wazuh/tests/test_cdb_list.py 53 0 0 0 0 :green_circle:
wazuh/tests/test_ciscat.py 33 0 0 0 0 :green_circle:
wazuh/tests/test_cluster.py 10 0 0 0 0 :green_circle:
wazuh/tests/test_decoder.py 58 0 0 0 0 :green_circle:
wazuh/tests/test_event.py 4 0 0 0 0 :green_circle:
wazuh/tests/test_group.py 7 0 0 0 0 :green_circle:
wazuh/tests/test_logtest.py 6 0 0 0 0 :green_circle:
wazuh/tests/test_manager.py 36 0 0 0 0 :green_circle:
wazuh/tests/test_mitre.py 7 0 0 0 0 :green_circle:
wazuh/tests/test_rootcheck.py 50 0 0 0 0 :green_circle:
wazuh/tests/test_rule.py 74 0 0 0 0 :green_circle:
wazuh/tests/test_sca.py 11 0 0 0 0 :green_circle:
wazuh/tests/test_security.py 71 0 0 0 0 :green_circle:
wazuh/tests/test_stats.py 15 0 0 0 0 :green_circle:
wazuh/tests/test_syscheck.py 25 0 0 0 0 :green_circle:
wazuh/tests/test_syscollector.py 12 0 0 0 0 :green_circle:
wazuh/tests/test_task.py 28 0 0 0 0 :green_circle:

Wodles Tests


Test name Pass XPass Skip XFail Fail Issues Ref. Status
aws/tests/test_aws_bucket.py 209 0 0 0 0 :green_circle:
aws/tests/test_aws_s3.py 20 0 0 0 0 :green_circle:
aws/tests/test_aws_service.py 4 0 0 0 0 :green_circle:
aws/tests/test_cloudtrail.py 2 0 0 0 0 :green_circle:
aws/tests/test_cloudwatchlogs.py 53 0 0 0 0 :green_circle:
aws/tests/test_config.py 78 0 0 0 0 :green_circle:
aws/tests/test_guardduty.py 17 0 0 0 0 :green_circle:
aws/tests/test_inspector.py 6 0 0 0 0 :green_circle:
aws/tests/test_load_balancers.py 12 0 0 0 0 :green_circle:
aws/tests/test_s3_log_handler.py 4 0 0 0 0 :green_circle:
aws/tests/test_server_access.py 33 0 0 0 0 :green_circle:
aws/tests/test_sqs_queue.py 7 0 0 0 0 :green_circle:
aws/tests/test_tools.py 31 0 0 0 0 :green_circle:
aws/tests/test_umbrella.py 6 0 0 0 0 :green_circle:
aws/tests/test_vpcflow.py 27 0 0 0 0 :green_circle:
aws/tests/test_waf.py 7 0 0 0 0 :green_circle:
aws/tests/test_wazuh_integration.py 102 0 0 0 0 :green_circle:
azure/tests/test_azure.py 117 0 0 0 0 :green_circle:
azure/tests/test_orm.py 31 0 0 0 0 :green_circle:
listener/tests/test_docker_listener.py 19 0 0 0 0 :green_circle:
gcloud/tests/test_bucket.py 33 0 0 0 0 :green_circle:
gcloud/tests/test_gcloud.py 9 0 0 0 0 :green_circle:
gcloud/tests/test_integration.py 8 0 0 0 0 :green_circle:
gcloud/tests/test_subscriber.py 14 0 0 0 0 :green_circle:
gcloud/tests/test_tools.py 8 0 0 0 0 :green_circle:

Integrations Tests


Test name Pass XPass Skip XFail Fail Issues Ref. Status
tests/test_maltiverse.py 46 0 0 0 0 :green_circle:
tests/test_pagerduty.py 10 0 0 0 0 :green_circle:
tests/test_shuffle.py 18 0 0 0 0 :green_circle:
tests/test_slack.py 10 0 0 0 0 :green_circle:
tests/test_virustotal.py 22 0 0 0 0 :green_circle:
javiersanchz commented 1 week ago

FRAMEWORK

Name Stmts Miss Cover Status
framework/init.py 0 0 100% :green_square:
framework/scripts/init.py 0 0 100% :green_square:
framework/scripts/agent_groups.py 177 17 90% :green_square:
framework/scripts/agent_upgrade.py 115 9 92% :green_square:
framework/scripts/cluster_control.py 133 1 99% :green_square:
framework/scripts/rbac_control.py 64 10 84% :green_square:
framework/scripts/wazuh_clusterd.py 121 14 88% :green_square:
framework/setup.py 3 3 0% :red_square:
framework/wazuh/init.py 50 13 74% :yellow_square:
framework/wazuh/main.py 2 2 0% :red_square:
framework/wazuh/active_response.py 25 0 100% :green_square:
framework/wazuh/agent.py 514 7 99% :green_square:
framework/wazuh/cdb_list.py 77 2 97% :green_square:
framework/wazuh/ciscat.py 27 0 100% :green_square:
framework/wazuh/cluster.py 64 0 100% :green_square:
framework/wazuh/core/InputValidator.py 19 0 100% :green_square:
framework/wazuh/core/init.py 0 0 100% :green_square:
framework/wazuh/core/active_response.py 70 3 96% :green_square:
framework/wazuh/core/agent.py 505 30 94% :green_square:
framework/wazuh/core/cdb_list.py 106 2 98% :green_square:
framework/wazuh/core/cluster/init.py 5 0 100% :green_square:
framework/wazuh/core/cluster/client.py 165 10 94% :green_square:
framework/wazuh/core/cluster/cluster.py 287 2 99% :green_square:
framework/wazuh/core/cluster/common.py 691 12 98% :green_square:
framework/wazuh/core/cluster/control.py 63 0 100% :green_square:
framework/wazuh/core/cluster/dapi/init.py 0 0 100% :green_square:
framework/wazuh/core/cluster/dapi/dapi.py 387 30 92% :green_square:
framework/wazuh/core/cluster/local_client.py 115 6 95% :green_square:
framework/wazuh/core/cluster/local_server.py 152 1 99% :green_square:
framework/wazuh/core/cluster/master.py 419 5 99% :green_square:
framework/wazuh/core/cluster/server.py 203 4 98% :green_square:
framework/wazuh/core/cluster/tests/init.py 0 0 100% :green_square:
framework/wazuh/core/cluster/utils.py 163 0 100% :green_square:
framework/wazuh/core/cluster/worker.py 332 12 96% :green_square:
framework/wazuh/core/common.py 127 2 98% :green_square:
framework/wazuh/core/configuration.py 485 7 99% :green_square:
framework/wazuh/core/database.py 55 5 91% :green_square:
framework/wazuh/core/decoder.py 52 0 100% :green_square:
framework/wazuh/core/exception.py 116 3 97% :green_square:
framework/wazuh/core/manager.py 153 12 92% :green_square:
framework/wazuh/core/mitre.py 257 13 95% :green_square:
framework/wazuh/core/pyDaemonModule.py 64 17 73% :yellow_square:
framework/wazuh/core/results.py 335 24 93% :green_square:
framework/wazuh/core/rootcheck.py 61 0 100% :green_square:
framework/wazuh/core/rule.py 133 0 100% :green_square:
framework/wazuh/core/sca.py 78 2 97% :green_square:
framework/wazuh/core/security.py 70 18 74% :yellow_square:
framework/wazuh/core/stats.py 125 1 99% :green_square:
framework/wazuh/core/syscheck.py 28 0 100% :green_square:
framework/wazuh/core/syscollector.py 38 0 100% :green_square:
framework/wazuh/core/task.py 37 0 100% :green_square:
framework/wazuh/core/tests/init.py 0 0 100% :green_square:
framework/wazuh/core/utils.py 1015 51 95% :green_square:
framework/wazuh/core/wazuh_queue.py 82 2 98% :green_square:
framework/wazuh/core/wazuh_socket.py 160 76 52% :yellow_square:
framework/wazuh/core/wdb.py 210 9 96% :green_square:
framework/wazuh/core/wlogging.py 98 3 97% :green_square:
framework/wazuh/decoder.py 153 2 99% :green_square:
framework/wazuh/event.py 18 0 100% :green_square:
framework/wazuh/manager.py 142 17 88% :green_square:
framework/wazuh/mitre.py 53 0 100% :green_square:
framework/wazuh/rbac/init.py 0 0 100% :green_square:
framework/wazuh/rbac/auth_context.py 197 37 81% :green_square:
framework/wazuh/rbac/decorators.py 232 63 73% :yellow_square:
framework/wazuh/rbac/orm.py 1295 319 75% :green_square:
framework/wazuh/rbac/preprocessor.py 73 22 70% :yellow_square:
framework/wazuh/rbac/tests/init.py 0 0 100% :green_square:
framework/wazuh/rbac/tests/utils.py 36 0 100% :green_square:
framework/wazuh/rbac/utils.py 23 10 57% :yellow_square:
framework/wazuh/rootcheck.py 64 3 95% :green_square:
framework/wazuh/rule.py 169 2 99% :green_square:
framework/wazuh/sca.py 63 3 95% :green_square:
framework/wazuh/security.py 552 203 63% :yellow_square:
framework/wazuh/stats.py 119 7 94% :green_square:
framework/wazuh/syscheck.py 95 4 96% :green_square:
framework/wazuh/syscollector.py 35 8 77% :green_square:
framework/wazuh/task.py 19 0 100% :green_square:
framework/wazuh/tests/util.py 42 2 95% :green_square:
TOTAL 12213 1142 91% :green_square:

API

Name Stmts Miss Cover Status
api/init.py 0 0 100% :green_square:
api/alogging.py 78 0 100% :green_square:
api/api_exception.py 12 0 100% :green_square:
api/authentication.py 109 7 94% :green_square:
api/configuration.py 94 4 96% :green_square:
api/constants.py 14 0 100% :green_square:
api/controllers/init.py 0 0 100% :green_square:
api/controllers/active_response_controller.py 15 0 100% :green_square:
api/controllers/agent_controller.py 252 5 98% :green_square:
api/controllers/cdb_list_controller.py 41 0 100% :green_square:
api/controllers/ciscat_controller.py 13 0 100% :green_square:
api/controllers/cluster_controller.py 163 0 100% :green_square:
api/controllers/decoder_controller.py 46 0 100% :green_square:
api/controllers/default_controller.py 16 0 100% :green_square:
api/controllers/event_controller.py 15 0 100% :green_square:
api/controllers/experimental_controller.py 109 0 100% :green_square:
api/controllers/manager_controller.py 120 0 100% :green_square:
api/controllers/mitre_controller.py 41 0 100% :green_square:
api/controllers/overview_controller.py 12 0 100% :green_square:
api/controllers/rootcheck_controller.py 27 0 100% :green_square:
api/controllers/rule_controller.py 58 0 100% :green_square:
api/controllers/sca_controller.py 20 0 100% :green_square:
api/controllers/security_controller.py 245 9 96% :green_square:
api/controllers/syscheck_controller.py 31 0 100% :green_square:
api/controllers/syscollector_controller.py 65 0 100% :green_square:
api/controllers/task_controller.py 13 0 100% :green_square:
api/controllers/test/utils.py 11 0 100% :green_square:
api/encoder.py 24 1 96% :green_square:
api/middlewares.py 104 37 64% :yellow_square:
api/models/init.py 3 0 100% :green_square:
api/models/active_response_model.py 29 0 100% :green_square:
api/models/agent_added_model.py 72 0 100% :green_square:
api/models/agent_inserted_model.py 50 0 100% :green_square:
api/models/basemodel.py 104 0 100% :green_square:
api/models/basic_info_model.py 59 0 100% :green_square:
api/models/configuration_model.py 205 0 100% :green_square:
api/models/events_ingest_model.py 17 0 100% :green_square:
api/models/group_added_model.py 15 0 100% :green_square:
api/models/security_model.py 72 0 100% :green_square:
api/models/security_token_response_model.py 19 0 100% :green_square:
api/signals.py 52 1 98% :green_square:
api/uri_parser.py 29 0 100% :green_square:
api/util.py 152 4 97% :green_square:
api/validator.py 163 14 91% :green_square:
TOTAL 2789 82 97% :green_square:

WODLES

Name Stmts Miss Cover Status
wodles/init.py 0 0 100% :green_square:
wodles/aws/init.py 0 0 100% :green_square:
wodles/aws/aws_s3.py 94 18 81% :green_square:
wodles/aws/aws_tools.py 144 22 85% :green_square:
wodles/aws/buckets_s3/init.py 10 0 100% :green_square:
wodles/aws/buckets_s3/aws_bucket.py 427 16 96% :green_square:
wodles/aws/buckets_s3/cloudtrail.py 26 3 88% :green_square:
wodles/aws/buckets_s3/config.py 91 7 92% :green_square:
wodles/aws/buckets_s3/guardduty.py 64 1 98% :green_square:
wodles/aws/buckets_s3/load_balancers.py 69 0 100% :green_square:
wodles/aws/buckets_s3/server_access.py 137 12 91% :green_square:
wodles/aws/buckets_s3/umbrella.py 22 0 100% :green_square:
wodles/aws/buckets_s3/vpcflow.py 107 15 86% :green_square:
wodles/aws/buckets_s3/waf.py 38 0 100% :green_square:
wodles/aws/services/init.py 4 0 100% :green_square:
wodles/aws/services/aws_service.py 44 0 100% :green_square:
wodles/aws/services/cloudwatchlogs.py 189 6 97% :green_square:
wodles/aws/services/inspector.py 56 6 89% :green_square:
wodles/aws/subscribers/init.py 4 0 100% :green_square:
wodles/aws/subscribers/s3_log_handler.py 113 62 45% :orange_square:
wodles/aws/subscribers/sqs_message_processor.py 35 22 37% :orange_square:
wodles/aws/subscribers/sqs_queue.py 60 7 88% :green_square:
wodles/aws/tests/init.py 0 0 100% :green_square:
wodles/aws/tests/aws_utils.py 115 0 100% :green_square:
wodles/aws/wazuh_integration.py 248 22 91% :green_square:
wodles/azure/azure-logs.py 450 15 97% :green_square:
wodles/azure/orm.py 141 0 100% :green_square:
wodles/docker-listener/DockerListener.py 93 6 94% :green_square:
wodles/gcloud/buckets/access_logs.py 16 0 100% :green_square:
wodles/gcloud/buckets/bucket.py 128 2 98% :green_square:
wodles/gcloud/exceptions.py 23 0 100% :green_square:
wodles/gcloud/gcloud.py 68 1 99% :green_square:
wodles/gcloud/integration.py 38 2 95% :green_square:
wodles/gcloud/pubsub/subscriber.py 60 2 97% :green_square:
wodles/gcloud/tools.py 41 0 100% :green_square:
wodles/utils.py 58 27 53% :yellow_square:
TOTAL 3213 274 91% :green_square:

INTEGRATIONS

Name Stmts Miss Cover Status
integrations/maltiverse.py 178 15 92% :green_square:
integrations/pagerduty.py 104 21 80% :green_square:
integrations/shuffle.py 105 7 93% :green_square:
integrations/slack.py 112 30 73% :yellow_square:
integrations/tests/init.py 0 0 100% :green_square:
integrations/virustotal.py 174 45 74% :yellow_square:
TOTAL 673 118 82% :green_square:

OVERALL COVERAGE PERCENTAGE: 92%

juliamagan commented 1 week ago

LGTM