{"action":"opened","number":3929,"pull_request":{"url":"https://api.github.com/repos/wazuh/wazuh/pulls/3929","id":314837869,"node_id":"MDExOlB1bGxSZXF1ZXN0MzE0ODM3ODY5","html_url":"https://github.com/wazuh/wazuh/pull/3929","diff_url":"https://github.com/wazuh/wazuh/pull/3929.diff","patch_url":"https://github.com/wazuh/wazuh/pull/3929.patch","issue_url":"https://api.github.com/repos/wazuh/wazuh/issues/3929","number":3929,"state":"open","locked":false,"title":"Remove framework handling of multigroups files and folders","user":{"login":"davidjiglesias","id":48716145,"node_id":"MDQ6VXNlcjQ4NzE2MTQ1","avatar_url":"https://avatars1.githubusercontent.com/u/48716145?v=4","gravatar_id":"","url":"https://api.github.com/users/davidjiglesias","html_url":"https://github.com/davidjiglesias","followers_url":"https://api.github.com/users/davidjiglesias/followers","following_url":"https://api.github.com/users/davidjiglesias/following{/other_user}","gists_url":"https://api.github.com/users/davidjiglesias/gists{/gist_id}","starred_url":"https://api.github.com/users/davidjiglesias/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidjiglesias/subscriptions","organizations_url":"https://api.github.com/users/davidjiglesias/orgs","repos_url":"https://api.github.com/users/davidjiglesias/repos","events_url":"https://api.github.com/users/davidjiglesias/events{/privacy}","received_events_url":"https://api.github.com/users/davidjiglesias/received_events","type":"User","site_admin":false},"body":"Hello team,\r\n\r\nThis PR closes #3907. The framework is no longer creating multigroups files and folders since that task is already being handled by remoted daemon.\r\n\r\nBest regards,\r\n\r\nDavid J. Iglesias\r\n\r\n### Manual test procedure\r\nWe have a cluster with a worker and 3 agents.\r\n\r\nCreate group `pciserver`:\r\n```\r\ncurl -u foo:bar -k -X PUT \"https://127.0.0.1:55000/agents/groups/pciserver?pretty\"\r\n{\r\n   \"error\": 0,\r\n   \"data\": \"Group 'pciserver' created.\"\r\n}\r\n```\r\nAssign agents `001` and `002` to group `pciserver`\r\n```\r\ncurl -u foo:bar -X POST -H \"Content-Type:application/json\" -d '{\"ids\":[\"001\",\"002\"]}' \"https://127.0.0.1:55000/agents/group/pciserver?pretty\" -k\r\n{\r\n   \"error\": 0,\r\n   \"data\": {\r\n      \"msg\": \"All selected agents assigned to group pciserver\",\r\n      \"affected_agents\": [\r\n         \"001\",\r\n         \"002\"\r\n      ]\r\n   }\r\n}\r\n```\r\nCreate group `fix_test`:\r\n```\r\ncurl -u foo:bar -k -X PUT \"https://127.0.0.1:55000/agents/groups/fix_test?pretty\"\r\n{\r\n   \"error\": 0,\r\n   \"data\": \"Group 'fix_test' created.\"\r\n}\r\n```\r\nAssign agents `001` and `003` to group `fix_test`:\r\n```\r\ncurl -u foo:bar -X POST -H \"Content-Type:application/json\" -d '{\"ids\":[\"001\",\"003\"]}' \"https://127.0.0.1:55000/agents/group/fix_test?pretty\" -k\r\n{\r\n   \"error\": 0,\r\n   \"data\": {\r\n      \"msg\": \"All selected agents assigned to group fix_test\",\r\n      \"affected_agents\": [\r\n         \"001\",\r\n         \"003\"\r\n      ]\r\n   }\r\n}\r\n```\r\nWe see that the framework only modifies the `agent_groups` files, and `ossecr`(remoted) creates the multigroups a few seconds after:\r\n```\r\ndrwxrwx--- 2 ossecr ossec 4.0K 2019-09-06 07:28:15.200080194 +0000 e97ae33f\r\ndrwxrwx--- 2 ossecr ossec 4.0K 2019-09-06 07:28:15.212080083 +0000 9c1d6a07\r\ndrwxrwx--- 2 ossecr ossec 4.0K 2019-09-06 07:28:15.224079972 +0000 fa7cec65\r\n```\r\n### Mocha test results:\r\n```\r\n\r\n  Active Response\r\n    PUT/active-response/:agent_id\r\n      ✓ Request (294ms)\r\n      ✓ Command not found (237ms)\r\n      ✓ Agent does not exist (225ms)\r\n      ✓ Agent ID not valid (75ms)\r\n\r\n\r\n  4 passing (836ms)\r\n\r\n\r\n  Agents\r\n    GET/agents\r\n      ✓ Request (228ms)\r\n      ✓ Pagination (243ms)\r\n      ✓ Retrieve all elements with limit=0 (229ms)\r\n      ✓ Sort (228ms)\r\n      ✓ Wrong Sort (225ms)\r\n      ✓ Search (228ms)\r\n      ✓ Selector (231ms)\r\n      ✓ Not allowed selector (231ms)\r\n      ✓ Version (231ms)\r\n      ✓ Os.platform (231ms)\r\n      ✓ Os.version (232ms)\r\n      ✓ ManagerHost (231ms)\r\n      ✓ Filters: status (232ms)\r\n      ✓ Filters: status 2 (232ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (75ms)\r\n      ✓ Filters: older_than (231ms)\r\n      ✓ Filters: group (227ms)\r\n      ✓ Select: single field (228ms)\r\n      ✓ Select: multiple fields (228ms)\r\n      ✓ Select: wrong field (228ms)\r\n      ✓ Select: invalid character (73ms)\r\n      ✓ Filters: query (228ms)\r\n    GET/agents/summary\r\n      ✓ Request (227ms)\r\n    GET/agents/summary/os\r\n      ✓ Request (226ms)\r\n    GET/agents/outdated\r\n      ✓ Request (229ms)\r\n    GET/agents/:agent_id\r\n      ✓ Request (manager) (226ms)\r\n      ✓ Request (agent) (229ms)\r\n      ✓ Selector (232ms)\r\n      ✓ Not allowed selector (227ms)\r\n      ✓ Params: Bad agent id (72ms)\r\n      ✓ Errors: No agent (226ms)\r\n      ✓ Select (225ms)\r\n      ✓ Select: wrong field (228ms)\r\n    GET/agents/name/:agent_name\r\n      ✓ Request (233ms)\r\n      ✓ Wrong name (227ms)\r\n      ✓ Selector (227ms)\r\n      ✓ Not allowed selector (230ms)\r\n    GET/agents/:agent_id/key\r\n      ✓ Request (229ms)\r\n      ✓ Params: Bad agent id (72ms)\r\n      ✓ Errors: No key (231ms)\r\n    PUT/agents/groups/:group_id\r\n      ✓ Request (228ms)\r\n      ✓ Params: Bad group name (72ms)\r\n      ✓ Params: Group already exists (226ms)\r\n    PUT/agents/:agent_id/group/:group_id\r\n      ✓ Request (228ms)\r\n      ✓ Params: Bad agent name (73ms)\r\n      ✓ Params: Agent does not exist (225ms)\r\n      ✓ Params: Replace parameter (229ms)\r\n    POST/agents/groups/:group_id/files/:file_name\r\n      ✓ Request (241ms)\r\n      ✓ ErrorOnBadGroup (227ms)\r\n      ✓ ErrorOnEmptyConf (73ms)\r\n      ✓ OnlyAgentConfAllowed (228ms)\r\n      ✓ InvalidConfDetected (72ms)\r\n      ✓ WrongConfDetected (235ms)\r\n      ✓ TooBigXML (78ms)\r\n    GET/agents/no_group\r\n      ✓ Request (233ms)\r\n      ✓ Pagination (229ms)\r\n      ✓ Retrieve all elements with limit=0 (226ms)\r\n      ✓ Sort (228ms)\r\n      ✓ Search (229ms)\r\n      ✓ Select (227ms)\r\n      ✓ Wrong select (226ms)\r\n      ✓ Filter: status (242ms)\r\n    GET/agents/groups\r\n      ✓ Request (231ms)\r\n      ✓ Retrieve all elements with limit=0 (228ms)\r\n      ✓ Hash algorithm (227ms)\r\n      ✓ Wrong Hash algorithm (224ms)\r\n    GET/agents/groups/:group_id\r\n      ✓ Request (228ms)\r\n      ✓ Params: Bad group name (73ms)\r\n      ✓ Retrieve all elements with limit=0 (227ms)\r\n      ✓ Select (228ms)\r\n      ✓ Filter: status (227ms)\r\n    GET/agents/groups/:group_id/configuration\r\n      ✓ Request (229ms)\r\n      ✓ Params: Bad group name (72ms)\r\n      ✓ Retrieve all elements with limit=0 (227ms)\r\n    GET/agents/groups/:group_id/files\r\n      ✓ Request (227ms)\r\n      ✓ Params: Bad group name (72ms)\r\n      ✓ Retrieve all elements with limit=0 (225ms)\r\n      ✓ Hash algorithm (241ms)\r\n      ✓ Wrong Hash algorithm (231ms)\r\n    GET/agents/groups/:group_id/files/:filename\r\n      ✓ Request (232ms)\r\n      ✓ UsingFormatAgentConfXML (235ms)\r\n      ✓ UsingFormatAgentConfJSON (234ms)\r\n      ✓ UsingFormatRootcheckXML (234ms)\r\n      ✓ UsingFormatRootcheckJSON (244ms)\r\n      ✓ Params: Bad group name (75ms)\r\n    POST/agents/groups/:group_id/configuration\r\n      ✓ Request (256ms)\r\n      ✓ ErrorOnBadGroup (242ms)\r\n      ✓ ErrorOnEmptyConf (77ms)\r\n      ✓ InvalidConfDetected (80ms)\r\n      ✓ WrongConfDetected (264ms)\r\n      ✓ TooBigXML (84ms)\r\n    DELETE/agents/:agent_id/group\r\n      ✓ Request (260ms)\r\n      ✓ Errors: ID is not present (254ms)\r\n      ✓ Params: Bad agent id (89ms)\r\n    DELETE/agents/:agent_id/group/:group_id\r\n      ✓ Request (239ms)\r\n      ✓ Errors: ID is not present (246ms)\r\n      ✓ Errors: Group is not present (237ms)\r\n      ✓ Params: Bad agent id (73ms)\r\n      ✓ Params: Bad group id (241ms)\r\n    DELETE/agents/groups/:group_id\r\n      ✓ Request (238ms)\r\n      ✓ Params: Bad group id (73ms)\r\n    DELETE/agents\r\n      ✓ Request (76ms)\r\n      ✓ Filter: older_than, status and ids (3776ms)\r\n      ✓ Errors: Get deleted agent (304ms)\r\n      ✓ Filter: older_than (237ms)\r\n    GET/agents/stats/distinct\r\n      ✓ Request (233ms)\r\n      ✓ Pagination (228ms)\r\n      ✓ Retrieve all elements with limit=0 (229ms)\r\n      ✓ Sort (230ms)\r\n      ✓ Search (235ms)\r\n      ✓ Select (229ms)\r\n      ✓ Wrong select (229ms)\r\n    GET/agents/:agent/config/:component/:configuration\r\n      ✓ Request-Agent-Client (247ms)\r\n      ✓ Request-Agent-Buffer (234ms)\r\n      ✓ Request-Agent-Labels (241ms)\r\n      ✓ Request-Agent-Internal (236ms)\r\n      ✓ Request-Agentless-Agentless (235ms)\r\n      ✓ Request-Analysis-Global (230ms)\r\n      ✓ Request-Analysis-Active-response (230ms)\r\n      ✓ Request-Analysis-Alerts (230ms)\r\n      ✓ Request-Analysis-Command (230ms)\r\n      ✓ Request-Analysis-Internal (230ms)\r\n      ✓ Request-Auth-Auth (232ms)\r\n      ✓ Request-Com-Active-response (237ms)\r\n      ✓ Request-Com-Internal (238ms)\r\n      ✓ Request-Csyslog-Csyslog (232ms)\r\n      ✓ Request-Integrator-Integration (233ms)\r\n      ✓ Request-Logcollector-Localfile (237ms)\r\n      ✓ Request-Logcollector-Socket (238ms)\r\n      ✓ Request-Logcollector-Internal (239ms)\r\n      ✓ Request-Mail-Global (233ms)\r\n      ✓ Request-Mail-Alerts (235ms)\r\n      ✓ Request-Mail-Internal (231ms)\r\n      ✓ Request-Monitor-Internal (234ms)\r\n      ✓ Request-Request-Remote (232ms)\r\n      ✓ Request-Request-Internal (233ms)\r\n      ✓ Request-Syscheck-Syscheck (239ms)\r\n      ✓ Request-Syscheck-Rootcheck (240ms)\r\n      ✓ Request-Syscheck-Internal (239ms)\r\n      ✓ Request-Wmodules-Wmodules (239ms)\r\n    PUT/agents/restart\r\n      ✓ Request (266ms)\r\n    PUT/agents/:agent_id/restart\r\n      ✓ Request (240ms)\r\n      ✓ Params: Bad agent id (74ms)\r\n      ✓ Request (232ms)\r\n    POST/agents/restart\r\n      ✓ Request (234ms)\r\n      ✓ Params: A good id and a bad one (250ms)\r\n      ✓ Params: Bad agent id (73ms)\r\n      ✓ Request (232ms)\r\n\r\n\r\n  149 passing (37s)\r\n\r\n\r\n  Agents\r\n    PUT/agents/:agent_name\r\n      ✓ Request (262ms)\r\n      ✓ Errors: Name already present (235ms)\r\n      ✓ Params: Bad agent name (73ms)\r\n    DELETE/agents/:agent_id\r\n      ✓ Request (239ms)\r\n      ✓ Errors: ID is not present (235ms)\r\n      ✓ Params: Bad agent id (74ms)\r\n    POST/agents\r\n      Any\r\n        ✓ Request (262ms)\r\n        ✓ Check key (234ms)\r\n        ✓ Errors: Name already present (232ms)\r\n        ✓ Filters: Missing field name (73ms)\r\n        ✓ Filters: Invalid field (74ms)\r\n      IP Automatic\r\n        ✓ Request: Automatic IP (263ms)\r\n        ✓ Errors: Duplicated IP (284ms)\r\n      IP\r\n        ✓ Request (265ms)\r\n        ✓ Filters: Bad IP (73ms)\r\n        ✓ Filters: Bad IP 2 (72ms)\r\n    POST/agents/insert\r\n      Any\r\n        ✓ Request (277ms)\r\n        1) Insert agent with force parameter (ID and name already presents)\r\n        ✓ Errors: Name already present (230ms)\r\n        2) Errors: ID already present\r\n        ✓ Errors: Invalid key (232ms)\r\n        ✓ Filters: Missing fields (73ms)\r\n        ✓ Filters: Invalid field (73ms)\r\n      IP Automatic\r\n        ✓ Request: Automatic IP (281ms)\r\n        ✓ Errors: Duplicated IP (277ms)\r\n      IP\r\n        ✓ Request (239ms)\r\n        ✓ Filters: Bad IP (76ms)\r\n        ✓ Filters: Bad IP 2 (73ms)\r\n\r\n\r\n  26 passing (8s)\r\n  2 failing\r\n\r\n  1) Agents\r\n       POST/agents/insert\r\n         Any\r\n           Insert agent with force parameter (ID and name already presents):\r\n     Uncaught AssertionError: expected Object { error: 9012, message: 'Duplicated ID' } to have property data\r\n      at Assertion.fail (node_modules/should/cjs/should.js:258:17)\r\n      at Assertion.value [as properties] (node_modules/should/cjs/should.js:335:19)\r\n      at Test.<anonymous> (test/test_agents_2.js:485:42)\r\n      at Test.assert (node_modules/supertest/lib/test.js:181:6)\r\n      at localAssert (node_modules/supertest/lib/test.js:131:12)\r\n      at /wazuh-api/node_modules/supertest/lib/test.js:128:5\r\n      at Test.Request.callback (node_modules/superagent/lib/node/index.js:716:12)\r\n      at /wazuh-api/node_modules/superagent/lib/node/index.js:916:18\r\n      at IncomingMessage.<anonymous> (node_modules/superagent/lib/node/parsers/json.js:19:7)\r\n      at endReadableNT (_stream_readable.js:1178:12)\r\n      at processTicksAndRejections (internal/process/task_queues.js:80:21)\r\n\r\n  2) Agents\r\n       POST/agents/insert\r\n         Any\r\n           Errors: ID already present:\r\n     Uncaught AssertionError: expected Object {\r\n  error: 0,\r\n  data: Object {\r\n    id: '750',\r\n    key: 'NzUwIE5ld0FnZW50UG9zdEluc2VydCBhbnkgMWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXphYmNkZWZnaGk2NA=='\r\n  }\r\n} to have property message\r\n      at Assertion.fail (node_modules/should/cjs/should.js:258:17)\r\n      at Assertion.value [as properties] (node_modules/should/cjs/should.js:335:19)\r\n      at Test.<anonymous> (test/test_agents_2.js:526:42)\r\n      at Test.assert (node_modules/supertest/lib/test.js:181:6)\r\n      at localAssert (node_modules/supertest/lib/test.js:131:12)\r\n      at /wazuh-api/node_modules/supertest/lib/test.js:128:5\r\n      at Test.Request.callback (node_modules/superagent/lib/node/index.js:716:12)\r\n      at /wazuh-api/node_modules/superagent/lib/node/index.js:916:18\r\n      at IncomingMessage.<anonymous> (node_modules/superagent/lib/node/parsers/json.js:19:7)\r\n      at endReadableNT (_stream_readable.js:1178:12)\r\n      at processTicksAndRejections (internal/process/task_queues.js:80:21)\r\n\r\n\r\n  App\r\n    Authentication\r\n      ✓ Wrong USER\r\n      ✓ Wrong password (76ms)\r\n      ✓ Home (75ms)\r\n    Requests\r\n      ✓ Inexistent request (73ms)\r\n      ✓ API version (73ms)\r\n\r\n\r\n  5 passing (328ms)\r\n\r\n\r\n  Cluster\r\n    GET/cluster/nodes\r\n      ✓ Request (263ms)\r\n      ✓ Pagination (238ms)\r\n      ✓ Retrieve all elements with limit=0 (237ms)\r\n      ✓ Sort (236ms)\r\n      ✓ Search (238ms)\r\n      ✓ Filters: type (237ms)\r\n      ✓ Filters: invalid type (243ms)\r\n      ✓ Select (239ms)\r\n      ✓ Select 2 (234ms)\r\n      ✓ Wrong select (232ms)\r\n    GET/cluster/:node_id/stats\r\n      1) Cluster stats\r\n      ✓ Unexisting node stats (231ms)\r\n      ✓ Analysisd stats (252ms)\r\n      ✓ Remoted stats (247ms)\r\n    GET/cluster/nodes/:node_name\r\n      ✓ Request (243ms)\r\n      ✓ Request wrong name (237ms)\r\n    GET/cluster/status\r\n      ✓ Request (232ms)\r\n    GET/cluster/config\r\n      ✓ Request (231ms)\r\n    GET/cluster/healthcheck\r\n      ✓ Request (240ms)\r\n      ✓ Filter: node name (237ms)\r\n    POST/cluster/:node_id/files\r\n      ✓ Upload ossec.conf (master) (241ms)\r\n      ✓ Upload ossec.conf (worker) (254ms)\r\n      ✓ Upload new rules (231ms)\r\n      ✓ Upload rules (overwrite=true) (237ms)\r\n      ✓ Upload rules (overwrite=false) (231ms)\r\n      ✓ Upload new decoder (229ms)\r\n      ✓ Upload decoder (overwrite=true) (231ms)\r\n      ✓ Upload decoder (without overwrite parameter) (237ms)\r\n      ✓ Upload new list (241ms)\r\n      ✓ Upload list (overwrite=true) (242ms)\r\n      ✓ Upload list (overwrite=false) (231ms)\r\n      ✓ Upload corrupted ossec.conf (master) (72ms)\r\n      ✓ Upload corrupted ossec.conf (worker) (74ms)\r\n      ✓ Upload malformed rules (74ms)\r\n      ✓ Upload rules to unexisting node (250ms)\r\n      ✓ Upload malformed decoder (75ms)\r\n      ✓ Upload decoder to unexisting node (237ms)\r\n      ✓ Upload malformed list (73ms)\r\n      ✓ Upload list to unexisting node (231ms)\r\n      ✓ Upload list with empty path (73ms)\r\n      ✓ Upload a file with a wrong content type (72ms)\r\n    GET/cluster/:node_id/files\r\n      ✓ Request ossec.conf (master) (240ms)\r\n      ✓ Request ossec.conf (worker) (244ms)\r\n      ✓ Request rules (local) (233ms)\r\n      ✓ Request rules (global) (229ms)\r\n      ✓ Request decoders (local) (235ms)\r\n      ✓ Request decoders (global) (240ms)\r\n      ✓ Request lists (234ms)\r\n      ✓ Request wrong path 1 (74ms)\r\n      ✓ Request wrong path 2 (73ms)\r\n      ✓ Request wrong path 3 (73ms)\r\n      ✓ Request unexisting file (228ms)\r\n      ✓ Request file from unexisting node (233ms)\r\n      ✓ Request file with empty path (75ms)\r\n      ✓ Request file with validation parameter (true) (240ms)\r\n    GET/cluster/:node_id/configuration/validation (manager and worker OK)\r\n      ✓ Request validation (master) (634ms)\r\n      ✓ Request validation (worker) (660ms)\r\n      ✓ Request validation (all nodes) (714ms)\r\n    GET/cluster/:node_id/configuration/validation (manager KO, worker OK)\r\n      ✓ Request validation (master) (231ms)\r\n      ✓ Request validation (worker) (645ms)\r\n      ✓ Request validation (all nodes) (655ms)\r\n    GET/cluster/:node_id/configuration/validation (manager OK, worker KO)\r\n      ✓ Request validation (master) (642ms)\r\n      ✓ Request validation (worker) (251ms)\r\n      ✓ Request validation (all nodes) (662ms)\r\n    GET/cluster/:node_id/configuration/validation (manager and worker KO)\r\n      ✓ Request validation (master) (241ms)\r\n      ✓ Request validation (worker) (260ms)\r\n      ✓ Request validation (all nodes) (250ms)\r\n    DELETE/cluster/:node_id/files\r\n      ✓ Delete rules (master) (235ms)\r\n      ✓ Delete decoders (master) (237ms)\r\n      ✓ Delete CDB list (master) (237ms)\r\n      ✓ Delete file with empty path (73ms)\r\n    GET/cluster/master/config/:component/:configuration\r\n      ✓ Request-Agentless-Agentless (237ms)\r\n      ✓ Request-Analysis-Global (237ms)\r\n      ✓ Request-Analysis-Active-response (239ms)\r\n      ✓ Request-Analysis-Alerts (238ms)\r\n      ✓ Request-Analysis-Command (231ms)\r\n      ✓ Request-Analysis-Internal (236ms)\r\n      ✓ Request-Auth-Auth (242ms)\r\n      ✓ Request-Com-Active-response (240ms)\r\n      ✓ Request-Com-Internal (235ms)\r\n      ✓ Request-Csyslog-Csyslog (237ms)\r\n      ✓ Request-Integrator-Integration (232ms)\r\n      ✓ Request-Logcollector-Localfile (234ms)\r\n      ✓ Request-Logcollector-Socket (231ms)\r\n      ✓ Request-Logcollector-Internal (233ms)\r\n      ✓ Request-Mail-Global (229ms)\r\n      ✓ Request-Mail-Alerts (228ms)\r\n      ✓ Request-Mail-Internal (229ms)\r\n      ✓ Request-Monitor-Internal (235ms)\r\n      ✓ Request-Request-Remote (229ms)\r\n      ✓ Request-Request-Internal (237ms)\r\n      ✓ Request-Syscheck-Syscheck (233ms)\r\n      ✓ Request-Syscheck-Rootcheck (232ms)\r\n      ✓ Request-Syscheck-Internal (230ms)\r\n      ✓ Request-Wmodules-Wmodules (229ms)\r\n    PUT/cluster/:node_id/restart\r\n      ✓ Request (worker) (236ms)\r\n      ✓ Request (master) (235ms)\r\n\r\n\r\n  96 passing (27s)\r\n  1 failing\r\n\r\n  1) Cluster\r\n       GET/cluster/:node_id/stats\r\n         Cluster stats:\r\n     Uncaught AssertionError: expected Object { error: 1308, message: 'Stats file has not been created yet' } to have property data\r\n      at Assertion.fail (node_modules/should/cjs/should.js:258:17)\r\n      at Assertion.value [as properties] (node_modules/should/cjs/should.js:335:19)\r\n      at Test.<anonymous> (test/test_cluster.js:243:42)\r\n      at Test.assert (node_modules/supertest/lib/test.js:181:6)\r\n      at localAssert (node_modules/supertest/lib/test.js:131:12)\r\n      at /wazuh-api/node_modules/supertest/lib/test.js:128:5\r\n      at Test.Request.callback (node_modules/superagent/lib/node/index.js:716:12)\r\n      at /wazuh-api/node_modules/superagent/lib/node/index.js:916:18\r\n      at IncomingMessage.<anonymous> (node_modules/superagent/lib/node/parsers/json.js:19:7)\r\n      at endReadableNT (_stream_readable.js:1178:12)\r\n      at processTicksAndRejections (internal/process/task_queues.js:80:21)\r\n\r\n\r\n  Decoders\r\n    GET/decoders\r\n      ✓ Request (292ms)\r\n      ✓ Pagination (275ms)\r\n      ✓ Retrieve all elements with limit=0 (260ms)\r\n      ✓ Sort (265ms)\r\n      ✓ Search (281ms)\r\n      ✓ Filters: File (259ms)\r\n      ✓ Filters: Path (260ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (74ms)\r\n    GET/decoders/files\r\n      ✓ Request (237ms)\r\n      ✓ Pagination (233ms)\r\n      ✓ Retrieve all elements with limit=0 (235ms)\r\n      ✓ Sort (232ms)\r\n      ✓ Search (236ms)\r\n    GET/decoders/parents\r\n      ✓ Request (263ms)\r\n      ✓ Pagination (258ms)\r\n      ✓ Retrieve all elements with limit=0 (257ms)\r\n      ✓ Sort (259ms)\r\n      ✓ Search (258ms)\r\n    GET/decoders/:decoder_name\r\n      ✓ Request (258ms)\r\n      ✓ Pagination (257ms)\r\n      ✓ Retrieve all elements with limit=0 (255ms)\r\n      ✓ Sort (259ms)\r\n      ✓ Search (259ms)\r\n\r\n\r\n  24 passing (6s)\r\n\r\n\r\n  Lists\r\n    GET/lists\r\n      ✓ Request (253ms)\r\n      ✓ Pagination (236ms)\r\n      ✓ Retrieve all elements with limit=0 (229ms)\r\n      ✓ Sort (230ms)\r\n      ✓ Search (230ms)\r\n      ✓ Filters: Path (229ms)\r\n      ✓ Filters: Invalid filter (73ms)\r\n      ✓ Filters: Invalid filter - Extra field (72ms)\r\n    GET/lists/files\r\n      ✓ Request (228ms)\r\n      ✓ Pagination (227ms)\r\n      ✓ Retrieve all elements with limit=0 (226ms)\r\n      ✓ Sort (230ms)\r\n      ✓ Search (228ms)\r\n      ✓ Filters: Invalid filter (71ms)\r\n      ✓ Filters: Invalid filter - Extra field (73ms)\r\n\r\n\r\n  15 passing (3s)\r\n\r\n\r\n  Manager\r\n    GET/manager/status\r\n      ✓ Request (251ms)\r\n    GET/manager/info\r\n      ✓ Request (236ms)\r\n    GET/manager/configuration\r\n      ✓ Request (228ms)\r\n      ✓ Filters: Missing field section (74ms)\r\n      ✓ Filters: Section (233ms)\r\n      ✓ Errors: Invalid Section (227ms)\r\n      ✓ Filters: Section - field (228ms)\r\n      ✓ Errors: Invalid field (228ms)\r\n      ✓ Filters: Invalid filter (72ms)\r\n      ✓ Filters: Invalid filter - Extra field (72ms)\r\n    GET/manager/stats\r\n      1) Request\r\n      2) Filters: date\r\n      ✓ Filters: Invalid date (84ms)\r\n      ✓ Filters: Invalid filter (73ms)\r\n      ✓ Filters: Invalid filter - Extra field (73ms)\r\n    GET/manager/stats/hourly\r\n      ✓ Request (261ms)\r\n    GET/manager/stats/weekly\r\n      ✓ Request (255ms)\r\n    GET/manager/stats/analysisd\r\n      ✓ Request (239ms)\r\n    GET/manager/stats/remoted\r\n      ✓ Request (232ms)\r\n    GET/manager/logs\r\n      ✓ Request (249ms)\r\n      ✓ Pagination (252ms)\r\n      ✓ Retrieve all elements with limit=0 (252ms)\r\n      ✓ Sort (247ms)\r\n      ✓ SortField (246ms)\r\n      ✓ Search (250ms)\r\n      ✓ Filters: type_log (247ms)\r\n      ✓ Filters: category (243ms)\r\n      ✓ Filters: type_log and category (244ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (73ms)\r\n    GET/manager/logs/summary\r\n      ✓ Request (242ms)\r\n    POST/manager/files\r\n      ✓ Upload ossec.conf (239ms)\r\n      ✓ Upload ossec.conf (overwrite=false) (232ms)\r\n      ✓ Upload rules (new rule) (233ms)\r\n      ✓ Upload rules (overwrite=true) (233ms)\r\n      ✓ Upload rules (overwrite=false) (231ms)\r\n      ✓ Upload decoder (overwrite=true) (233ms)\r\n      ✓ Upload decoder (without overwrite parameter) (231ms)\r\n      ✓ Upload list (overwrite=true) (236ms)\r\n      ✓ Upload list (without overwrite parameter) (234ms)\r\n      ✓ Upload malformed rule (73ms)\r\n      ✓ Upload malformed decoder (75ms)\r\n      ✓ Upload malformed list (74ms)\r\n      ✓ Upload list with empty path (76ms)\r\n      ✓ Upload a file with a wrong content type (75ms)\r\n    GET/manager/files\r\n      ✓ Request ossec.conf (232ms)\r\n      ✓ Request rules (local) (234ms)\r\n      ✓ Request rules (global) (232ms)\r\n      ✓ Request decoders (local) (232ms)\r\n      ✓ Request decoders (global) (233ms)\r\n      ✓ Request lists (236ms)\r\n      ✓ Request wrong path 1 (81ms)\r\n      ✓ Request wrong path 2 (75ms)\r\n      ✓ Request wrong path 3 (73ms)\r\n      ✓ Request unexisting file (231ms)\r\n      ✓ Request file with empty path (75ms)\r\n      ✓ Request file with validation parameter (true) (236ms)\r\n    DELETE/manager/files\r\n      ✓ Delete rules (233ms)\r\n      ✓ Delete decoders (235ms)\r\n      ✓ Delete CDB list (231ms)\r\n      ✓ Delete file with empty path (73ms)\r\n    GET/manager/configuration/validation (OK)\r\n      ✓ Request validation  (653ms)\r\n    GET/manager/configuration/validation (KO)\r\n      ✓ Request validation (239ms)\r\n    GET/manager/config/:component/:configuration\r\n      ✓ Request-Agentless-Agentless (239ms)\r\n      ✓ Request-Analysis-Global (234ms)\r\n      ✓ Request-Analysis-Active-response (231ms)\r\n      ✓ Request-Analysis-Alerts (231ms)\r\n      ✓ Request-Analysis-Command (234ms)\r\n      ✓ Request-Analysis-Internal (234ms)\r\n      ✓ Request-Auth-Auth (235ms)\r\n      ✓ Request-Com-Active-response (233ms)\r\n      ✓ Request-Com-Internal (232ms)\r\n      ✓ Request-Csyslog-Csyslog (230ms)\r\n      ✓ Request-Integrator-Integration (236ms)\r\n      ✓ Request-Logcollector-Localfile (231ms)\r\n      ✓ Request-Logcollector-Socket (230ms)\r\n      ✓ Request-Logcollector-Internal (228ms)\r\n      ✓ Request-Mail-Global (233ms)\r\n      ✓ Request-Mail-Alerts (240ms)\r\n      ✓ Request-Mail-Internal (227ms)\r\n      ✓ Request-Monitor-Internal (230ms)\r\n      ✓ Request-Request-Remote (230ms)\r\n      ✓ Request-Request-Internal (235ms)\r\n      ✓ Request-Syscheck-Syscheck (233ms)\r\n      ✓ Request-Syscheck-Rootcheck (229ms)\r\n      ✓ Request-Syscheck-Internal (225ms)\r\n      ✓ Request-Wmodules-Wmodules (227ms)\r\n    PUT/manager/restart\r\n      ✓ Request (252ms)\r\n\r\n\r\n  86 passing (20s)\r\n  2 failing\r\n\r\n  1) Manager\r\n       GET/manager/stats\r\n         Request:\r\n     Uncaught AssertionError: expected Object { error: 1308, message: 'Stats file has not been created yet' } to have property data\r\n      at Assertion.fail (node_modules/should/cjs/should.js:258:17)\r\n      at Assertion.value [as properties] (node_modules/should/cjs/should.js:335:19)\r\n      at Test.<anonymous> (test/test_manager.js:226:38)\r\n      at Test.assert (node_modules/supertest/lib/test.js:181:6)\r\n      at localAssert (node_modules/supertest/lib/test.js:131:12)\r\n      at /wazuh-api/node_modules/supertest/lib/test.js:128:5\r\n      at Test.Request.callback (node_modules/superagent/lib/node/index.js:716:12)\r\n      at /wazuh-api/node_modules/superagent/lib/node/index.js:916:18\r\n      at IncomingMessage.<anonymous> (node_modules/superagent/lib/node/parsers/json.js:19:7)\r\n      at endReadableNT (_stream_readable.js:1178:12)\r\n      at processTicksAndRejections (internal/process/task_queues.js:80:21)\r\n\r\n  2) Manager\r\n       GET/manager/stats\r\n         Filters: date:\r\n     Uncaught AssertionError: expected Object { error: 1308, message: 'Stats file has not been created yet' } to have property data\r\n      at Assertion.fail (node_modules/should/cjs/should.js:258:17)\r\n      at Assertion.value [as properties] (node_modules/should/cjs/should.js:335:19)\r\n      at Test.<anonymous> (test/test_manager.js:246:38)\r\n      at Test.assert (node_modules/supertest/lib/test.js:181:6)\r\n      at localAssert (node_modules/supertest/lib/test.js:131:12)\r\n      at /wazuh-api/node_modules/supertest/lib/test.js:128:5\r\n      at Test.Request.callback (node_modules/superagent/lib/node/index.js:716:12)\r\n      at /wazuh-api/node_modules/superagent/lib/node/index.js:916:18\r\n      at IncomingMessage.<anonymous> (node_modules/superagent/lib/node/parsers/json.js:19:7)\r\n      at endReadableNT (_stream_readable.js:1178:12)\r\n      at processTicksAndRejections (internal/process/task_queues.js:80:21)\r\n\r\n\r\n  Rootcheck\r\n    GET/rootcheck/:agent_id/last_scan\r\n      ✓ Request (259ms)\r\n      ✓ Params: Bad agent id (74ms)\r\n      ✓ Errors: No agent (223ms)\r\n    DELETE/rootcheck/:agent_id\r\n      ✓ Request (245ms)\r\n      ✓ Params: Bad agent id (73ms)\r\n      ✓ Errors: No agent (221ms)\r\n    DELETE/rootcheck\r\n      ✓ Request (379ms)\r\n    PUT/rootcheck/:agent_id\r\n      ✓ Request (241ms)\r\n      ✓ Params: Bad agent id (71ms)\r\n      ✓ Errors: No agent (223ms)\r\n    PUT/rootcheck\r\n      ✓ Request (248ms)\r\n\r\n\r\n  11 passing (2s)\r\n\r\n\r\n  Rules\r\n    GET/rules\r\n      ✓ Request (380ms)\r\n      ✓ Pagination (357ms)\r\n      ✓ Retrieve all elements with limit=0 (365ms)\r\n      ✓ Sort (365ms)\r\n      ✓ Search (451ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (73ms)\r\n      ✓ Filters: status (358ms)\r\n      ✓ Filters: group (381ms)\r\n      ✓ Filters: level (1) (363ms)\r\n      ✓ Filters: level (2) (479ms)\r\n      ✓ Filters: path (360ms)\r\n      ✓ Filters: file (356ms)\r\n      ✓ Filters: pci (430ms)\r\n      ✓ Filters: gdpr (356ms)\r\n      ✓ Filters: hipaa (560ms)\r\n      ✓ Filters: nist-800-53 (516ms)\r\n      ✓ Filters: gpg13 (361ms)\r\n    GET/rules/groups\r\n      ✓ Request (354ms)\r\n      ✓ Pagination (357ms)\r\n      ✓ Retrieve all elements with limit=0 (356ms)\r\n      ✓ Sort (356ms)\r\n      ✓ Search (364ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n    GET/rules/pci\r\n      ✓ Request (362ms)\r\n      ✓ Pagination (357ms)\r\n      ✓ Retrieve all elements with limit=0 (357ms)\r\n      ✓ Sort (353ms)\r\n      ✓ Search (380ms)\r\n      ✓ Filters: Invalid filter (75ms)\r\n    GET/rules/gdpr\r\n      ✓ Request (364ms)\r\n      ✓ Pagination (361ms)\r\n      ✓ Retrieve all elements with limit=0 (388ms)\r\n      ✓ Sort (370ms)\r\n      ✓ Search (389ms)\r\n      ✓ Filters: Invalid filter (92ms)\r\n    GET/rules/gpg13\r\n      ✓ Request (382ms)\r\n      ✓ Pagination (355ms)\r\n      ✓ Retrieve all elements with limit=0 (361ms)\r\n      ✓ Sort (355ms)\r\n      ✓ Search (359ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n    GET/rules/hipaa\r\n      ✓ Request (369ms)\r\n      ✓ Pagination (352ms)\r\n      ✓ Retrieve all elements with limit=0 (361ms)\r\n      ✓ Sort (354ms)\r\n      ✓ Search (355ms)\r\n      ✓ Filters: Invalid filter (73ms)\r\n    GET/rules/nist-800-53\r\n      ✓ Request (360ms)\r\n      ✓ Pagination (354ms)\r\n      ✓ Retrieve all elements with limit=0 (357ms)\r\n      ✓ Sort (363ms)\r\n      ✓ Search (354ms)\r\n      ✓ Filters: Invalid filter (75ms)\r\n    GET/rules/files\r\n      ✓ Request (236ms)\r\n      ✓ Pagination (236ms)\r\n      ✓ Retrieve all elements with limit=0 (240ms)\r\n      ✓ Sort (236ms)\r\n      ✓ Search (237ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (74ms)\r\n      ✓ Filters: status (238ms)\r\n      ✓ Filters: download (238ms)\r\n    GET/rules/:rule_id\r\n      ✓ Request (347ms)\r\n      ✓ Pagination (344ms)\r\n      ✓ Retrieve all elements with limit=0 (345ms)\r\n      ✓ Sort (346ms)\r\n      ✓ Search (349ms)\r\n      ✓ Filters: Invalid filter (73ms)\r\n      ✓ Params: Bad rule id (73ms)\r\n      ✓ Params: No rule (341ms)\r\n\r\n\r\n  71 passing (22s)\r\n\r\n\r\n  SecurityConfigurationAssessment\r\n    GET/sca/:agent_id\r\n      ✓ Request (275ms)\r\n      ✓ Pagination (237ms)\r\n      ✓ Retrieve all elements with limit=0 (245ms)\r\n      ✓ Sort (243ms)\r\n      ✓ Search (258ms)\r\n      ✓ Params: Bad agent id (81ms)\r\n      ✓ Errors: No agent (224ms)\r\n      ✓ Filters: Invalid filter (74ms)\r\n      ✓ Filters: Invalid filter - Extra field (74ms)\r\n      ✓ Filters: query (240ms)\r\n      ✓ Retrieve all elements with limit=0 (235ms)\r\n    GET/sca/:agent_id/checks/:policy_id\r\n      ✓ Request (251ms)\r\n      ✓ Pagination (240ms)\r\n      ✓ Retrieve all elements with limit=0 (235ms)\r\n      ✓ Sort (243ms)\r\n      ✓ Search (254ms)\r\n      ✓ Params: Bad agent id (77ms)\r\n      ✓ Errors: No agent (225ms)\r\n      ✓ Check not found (234ms)\r\n      ✓ Retrieve all elements with limit=0 (229ms)\r\n\r\n\r\n  20 passing (4s)\r\n\r\n\r\n  Syscheck\r\n    GET/syscheck/:agent_id\r\n      ✓ Request (282ms)\r\n      ✓ Pagination (236ms)\r\n      ✓ Retrieve all elements with limit=0 (230ms)\r\n      ✓ Sort (243ms)\r\n      ✓ Search (243ms)\r\n      ✓ Params: Bad agent id (72ms)\r\n      ✓ Errors: No agent (223ms)\r\n      ✓ Filters: Invalid filter (72ms)\r\n      ✓ Filters: Invalid filter - Extra field (72ms)\r\n      ✓ Filters: file (237ms)\r\n      ✓ Filters: type (239ms)\r\n      ✓ Filters: summary (233ms)\r\n      ✓ Filters: md5 (237ms)\r\n      ✓ Filters: sha1 (244ms)\r\n      ✓ Filters: sha256 (266ms)\r\n      ✓ Filters: hash (247ms)\r\n    GET/syscheck/:agent_id/last_scan\r\n      ✓ Request (242ms)\r\n      ✓ Params: Bad agent id (73ms)\r\n      ✓ Errors: No agent (226ms)\r\n    DELETE/syscheck/:agent_id\r\n      ✓ Request (241ms)\r\n      ✓ Params: Bad agent id (74ms)\r\n      ✓ Errors: No agent (222ms)\r\n    DELETE/experimental/syscheck\r\n      ✓ Request (661ms)\r\n    PUT/syscheck/:agent_id\r\n      ✓ Request (239ms)\r\n      ✓ Params: Bad agent id (73ms)\r\n      ✓ Errors: No agent (228ms)\r\n    PUT/syscheck\r\n      ✓ Request (253ms)\r\n\r\n\r\n  27 passing (6s)\r\n\r\n\r\n  Syscollector\r\n    GET/syscollector/:agent_id/os\r\n      ✓ Request (248ms)\r\n      ✓ Selector (252ms)\r\n      ✓ Not allowed selector (239ms)\r\n    GET/syscollector/:agent_id/hardware\r\n      ✓ Request (267ms)\r\n      ✓ Selector (257ms)\r\n      ✓ Not allowed selector (252ms)\r\n    GET/syscollector/:agent_id/packages\r\n      ✓ Request (261ms)\r\n      ✓ Selector (242ms)\r\n      ✓ Not allowed selector (235ms)\r\n      ✓ Pagination (236ms)\r\n      ✓ Wrong limit (75ms)\r\n      ✓ Sort - (236ms)\r\n      ✓ Sort + (237ms)\r\n      ✓ Wrong Sort (237ms)\r\n      ✓ Search (252ms)\r\n      ✓ Filter: vendor (242ms)\r\n      ✓ Filter: name (240ms)\r\n      ✓ Filter: architecture (257ms)\r\n      ✓ Filter: format (260ms)\r\n      ✓ Wrong filter (74ms)\r\n    GET/experimental/syscollector/packages\r\n      ✓ Request (380ms)\r\n      ✓ Selector (391ms)\r\n      ✓ Not allowed selector (256ms)\r\n      ✓ Pagination (266ms)\r\n      ✓ Wrong limit (74ms)\r\n      ✓ Sort - (261ms)\r\n      ✓ Sort + (262ms)\r\n      ✓ Wrong Sort (253ms)\r\n      ✓ Search (304ms)\r\n      ✓ Filter: vendor (382ms)\r\n      ✓ Filter: name (270ms)\r\n      ✓ Filter: architecture (363ms)\r\n      ✓ Filter: format (385ms)\r\n      ✓ Wrong filter (80ms)\r\n    GET/experimental/syscollector/os\r\n      ✓ Request (300ms)\r\n      ✓ Selector (299ms)\r\n      ✓ Not allowed selector (253ms)\r\n      ✓ Pagination (257ms)\r\n      ✓ Wrong limit (72ms)\r\n      ✓ Search (281ms)\r\n      ✓ Wrong filter (77ms)\r\n      ✓ Filter: architecture (264ms)\r\n      ✓ Filter: os_name (274ms)\r\n      ✓ Filter: release (271ms)\r\n    GET/experimental/syscollector/hardware\r\n      ✓ Request (272ms)\r\n      ✓ Selector (270ms)\r\n      ✓ Not allowed selector (256ms)\r\n      ✓ Pagination (271ms)\r\n      ✓ Wrong limit (76ms)\r\n      ✓ Search (285ms)\r\n      ✓ Wrong filter (75ms)\r\n      ✓ Wrong Sort (256ms)\r\n      ✓ Filter: ram_total (270ms)\r\n      ✓ Filter: cpu_cores (276ms)\r\n      ✓ Filter: cpu_mhz (281ms)\r\n      ✓ Filter: board_serial (276ms)\r\n    GET/experimental/syscollector/processes\r\n      ✓ Request (281ms)\r\n      ✓ Selector (273ms)\r\n      ✓ Not allowed selector (257ms)\r\n      ✓ Pagination (269ms)\r\n      ✓ Wrong limit (74ms)\r\n      ✓ Search (282ms)\r\n      ✓ Wrong filter (73ms)\r\n      ✓ Wrong Sort (249ms)\r\n      ✓ Filter: state (258ms)\r\n      ✓ Filter: ppid (261ms)\r\n      ✓ Filter: egroup (263ms)\r\n      ✓ Filter: euser (270ms)\r\n      ✓ Filter: fgroup (262ms)\r\n      ✓ Filter: name (275ms)\r\n      ✓ Filter: nlwp (265ms)\r\n      ✓ Filter: pgrp (272ms)\r\n      ✓ Filter: priority (264ms)\r\n      ✓ Filter: rgroup (273ms)\r\n      ✓ Filter: ruser (299ms)\r\n      ✓ Filter: sgroup (299ms)\r\n      ✓ Filter: suser (272ms)\r\n    GET/experimental/syscollector/ports\r\n      ✓ Request (298ms)\r\n      ✓ Selector (267ms)\r\n      ✓ Not allowed selector (256ms)\r\n      ✓ Pagination (296ms)\r\n      ✓ Wrong limit (74ms)\r\n      ✓ Search (269ms)\r\n      ✓ Wrong filter (74ms)\r\n      ✓ Wrong Sort (252ms)\r\n      ✓ Filter: protocol (277ms)\r\n      ✓ Filter: local_ip (277ms)\r\n      ✓ Filter: local_port (269ms)\r\n      ✓ Filter: remote_ip (266ms)\r\n      ✓ Filter: tx_queue (301ms)\r\n      ✓ Filter: state (269ms)\r\n    GET/syscollector/netaddr\r\n      ✓ Request (275ms)\r\n      ✓ Selector (287ms)\r\n      ✓ Not allowed selector (259ms)\r\n      ✓ Pagination (267ms)\r\n      ✓ Wrong limit (74ms)\r\n      ✓ Search (283ms)\r\n      ✓ Wrong filter (77ms)\r\n      ✓ Wrong Sort (255ms)\r\n      ✓ Filter: iface (265ms)\r\n      ✓ Filter: proto (270ms)\r\n      ✓ Filter: address (272ms)\r\n      ✓ Filter: broadcast (272ms)\r\n      ✓ Filter: netmask (264ms)\r\n    GET/experimental/syscollector/netproto\r\n      ✓ Request (258ms)\r\n      ✓ Selector (262ms)\r\n      ✓ Not allowed selector (256ms)\r\n      ✓ Pagination (257ms)\r\n      ✓ Wrong limit (72ms)\r\n      ✓ Search (264ms)\r\n      ✓ Wrong filter (76ms)\r\n      ✓ Wrong Sort (251ms)\r\n      ✓ Filter: iface (265ms)\r\n      ✓ Filter: type (263ms)\r\n      ✓ Filter: gateway (269ms)\r\n      ✓ Filter: dhcp (272ms)\r\n    GET/experimental/syscollector/netiface\r\n      ✓ Request (268ms)\r\n      ✓ Selector (262ms)\r\n      ✓ Not allowed selector (254ms)\r\n      ✓ Pagination (259ms)\r\n      ✓ Wrong limit (75ms)\r\n      ✓ Search (275ms)\r\n      ✓ Wrong filter (74ms)\r\n      ✓ Wrong Sort (254ms)\r\n      ✓ Filter: name (273ms)\r\n      ✓ Filter: type (264ms)\r\n      ✓ Filter: state (271ms)\r\n      ✓ Filter: mtu (264ms)\r\n      ✓ Filter: tx_packets (268ms)\r\n      ✓ Filter: rx_packets (271ms)\r\n      ✓ Filter: tx_bytes (265ms)\r\n      ✓ Filter: rx_bytes (275ms)\r\n      ✓ Filter: tx_errors (265ms)\r\n      ✓ Filter: rx_errors (274ms)\r\n      ✓ Filter: tx_dropped (270ms)\r\n      ✓ Filter: rx_dropped (268ms)\r\n    GET/syscollector/000/processes\r\n      ✓ Request (240ms)\r\n      ✓ Selector (239ms)\r\n      ✓ Not allowed selector (231ms)\r\n      ✓ Pagination (237ms)\r\n      ✓ Wrong limit (73ms)\r\n      ✓ Search (241ms)\r\n      ✓ Wrong filter (73ms)\r\n      ✓ Wrong Sort (233ms)\r\n      ✓ Filter: state (234ms)\r\n      ✓ Filter: ppid (241ms)\r\n      ✓ Filter: egroup (235ms)\r\n      ✓ Filter: euser (241ms)\r\n      ✓ Filter: fgroup (242ms)\r\n      ✓ Filter: name (237ms)\r\n      ✓ Filter: nlwp (238ms)\r\n      ✓ Filter: pgrp (239ms)\r\n      ✓ Filter: priority (236ms)\r\n      ✓ Filter: rgroup (234ms)\r\n      ✓ Filter: ruser (235ms)\r\n      ✓ Filter: sgroup (236ms)\r\n      ✓ Filter: suser (240ms)\r\n    GET/syscollector/000/ports\r\n      ✓ Request (239ms)\r\n      ✓ Selector (235ms)\r\n      ✓ Not allowed selector (238ms)\r\n      ✓ Pagination (235ms)\r\n      ✓ Wrong limit (73ms)\r\n      ✓ Search (238ms)\r\n      ✓ Wrong filter (72ms)\r\n      ✓ Wrong Sort (237ms)\r\n      ✓ Filter: protocol (240ms)\r\n      ✓ Filter: local_ip (235ms)\r\n      ✓ Filter: local_port (236ms)\r\n      ✓ Filter: remote_ip (237ms)\r\n      ✓ Filter: tx_queue (240ms)\r\n      ✓ Filter: state (241ms)\r\n    GET/syscollector/000/netaddr\r\n      ✓ Request (254ms)\r\n      ✓ Selector (235ms)\r\n      ✓ Not allowed selector (236ms)\r\n      ✓ Pagination (237ms)\r\n      ✓ Wrong limit (73ms)\r\n      ✓ Search (238ms)\r\n      ✓ Wrong filter (72ms)\r\n      ✓ Wrong Sort (231ms)\r\n      ✓ Filter: iface (238ms)\r\n      ✓ Filter: proto (240ms)\r\n      ✓ Filter: address (235ms)\r\n      ✓ Filter: broadcast (237ms)\r\n      ✓ Filter: netmask (235ms)\r\n    GET/syscollector/000/netproto\r\n      ✓ Request (233ms)\r\n      ✓ Selector (243ms)\r\n      ✓ Not allowed selector (240ms)\r\n      ✓ Pagination (240ms)\r\n      ✓ Wrong limit (72ms)\r\n      ✓ Search (239ms)\r\n      ✓ Wrong filter (72ms)\r\n      ✓ Wrong Sort (239ms)\r\n      ✓ Filter: iface (242ms)\r\n      ✓ Filter: type (240ms)\r\n      ✓ Filter: gateway (236ms)\r\n      ✓ Filter: dhcp (237ms)\r\n    GET/syscollector/000/netiface\r\n      ✓ Request (242ms)\r\n      ✓ Selector (239ms)\r\n      ✓ Not allowed selector (236ms)\r\n      ✓ Pagination (241ms)\r\n      ✓ Wrong limit (74ms)\r\n      ✓ Search (237ms)\r\n      ✓ Wrong filter (73ms)\r\n      ✓ Wrong Sort (232ms)\r\n      ✓ Filter: name (243ms)\r\n      ✓ Filter: type (245ms)\r\n      ✓ Filter: state (239ms)\r\n      ✓ Filter: mtu (238ms)\r\n      ✓ Filter: tx_packets (236ms)\r\n      ✓ Filter: rx_packets (250ms)\r\n      ✓ Filter: tx_bytes (239ms)\r\n      ✓ Filter: rx_bytes (241ms)\r\n      ✓ Filter: tx_errors (235ms)\r\n      ✓ Filter: rx_errors (237ms)\r\n      ✓ Filter: tx_dropped (240ms)\r\n      ✓ Filter: rx_dropped (243ms)\r\n\r\n\r\n  216 passing (58s)\r\n\r\n  Summary\r\n    GET/summary/agents\r\n     ✓ Request (269ms)\r\n\r\n\r\n  1 passing (273ms)\r\n```\r\nThe few tests that are not passing are known and will be fixed with changes from core, they are explained here: https://github.com/wazuh/wazuh-api/pull/438\r\n\r\n","created_at":"2019-09-06T07:51:21Z","updated_at":"2019-09-06T07:51:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[{"login":"crd1985","id":17462947,"node_id":"MDQ6VXNlcjE3NDYyOTQ3","avatar_url":"https://avatars0.githubusercontent.com/u/17462947?v=4","gravatar_id":"","url":"https://api.github.com/users/crd1985","html_url":"https://github.com/crd1985","followers_url":"https://api.github.com/users/crd1985/followers","following_url":"https://api.github.com/users/crd1985/following{/other_user}","gists_url":"https://api.github.com/users/crd1985/gists{/gist_id}","starred_url":"https://api.github.com/users/crd1985/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crd1985/subscriptions","organizations_url":"https://api.github.com/users/crd1985/orgs","repos_url":"https://api.github.com/users/crd1985/repos","events_url":"https://api.github.com/users/crd1985/events{/privacy}","received_events_url":"https://api.github.com/users/crd1985/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/wazuh/wazuh/pulls/3929/commits","review_comments_url":"https://api.github.com/repos/wazuh/wazuh/pulls/3929/comments","review_comment_url":"https://api.github.com/repos/wazuh/wazuh/pulls/comments{/number}","comments_url":"https://api.github.com/repos/wazuh/wazuh/issues/3929/comments","statuses_url":"https://api.github.com/repos/wazuh/wazuh/statuses/823920786a3d690e251674c25265ca0b6a2344b1","head":{"label":"wazuh:fix-3907-remoted-conflicts","ref":"fix-3907-remoted-conflicts","sha":"823920786a3d690e251674c25265ca0b6a2344b1","user":{"login":"wazuh","id":13752566,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNzUyNTY2","avatar_url":"https://avatars3.githubusercontent.com/u/13752566?v=4","gravatar_id":"","url":"https://api.github.com/users/wazuh","html_url":"https://github.com/wazuh","followers_url":"https://api.github.com/users/wazuh/followers","following_url":"https://api.github.com/users/wazuh/following{/other_user}","gists_url":"https://api.github.com/users/wazuh/gists{/gist_id}","starred_url":"https://api.github.com/users/wazuh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wazuh/subscriptions","organizations_url":"https://api.github.com/users/wazuh/orgs","repos_url":"https://api.github.com/users/wazuh/repos","events_url":"https://api.github.com/users/wazuh/events{/privacy}","received_events_url":"https://api.github.com/users/wazuh/received_events","type":"Organization","site_admin":false},"repo":{"id":40556106,"node_id":"MDEwOlJlcG9zaXRvcnk0MDU1NjEwNg==","name":"wazuh","full_name":"wazuh/wazuh","private":false,"owner":{"login":"wazuh","id":13752566,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNzUyNTY2","avatar_url":"https://avatars3.githubusercontent.com/u/13752566?v=4","gravatar_id":"","url":"https://api.github.com/users/wazuh","html_url":"https://github.com/wazuh","followers_url":"https://api.github.com/users/wazuh/followers","following_url":"https://api.github.com/users/wazuh/following{/other_user}","gists_url":"https://api.github.com/users/wazuh/gists{/gist_id}","starred_url":"https://api.github.com/users/wazuh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wazuh/subscriptions","organizations_url":"https://api.github.com/users/wazuh/orgs","repos_url":"https://api.github.com/users/wazuh/repos","events_url":"https://api.github.com/users/wazuh/events{/privacy}","received_events_url":"https://api.github.com/users/wazuh/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/wazuh/wazuh","description":"Wazuh - Host and endpoint security","fork":false,"url":"https://api.github.com/repos/wazuh/wazuh","forks_url":"https://api.github.com/repos/wazuh/wazuh/forks","keys_url":"https://api.github.com/repos/wazuh/wazuh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wazuh/wazuh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wazuh/wazuh/teams","hooks_url":"https://api.github.com/repos/wazuh/wazuh/hooks","issue_events_url":"https://api.github.com/repos/wazuh/wazuh/issues/events{/number}","events_url":"https://api.github.com/repos/wazuh/wazuh/events","assignees_url":"https://api.github.com/repos/wazuh/wazuh/assignees{/user}","branches_url":"https://api.github.com/repos/wazuh/wazuh/branches{/branch}","tags_url":"https://api.github.com/repos/wazuh/wazuh/tags","blobs_url":"https://api.github.com/repos/wazuh/wazuh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wazuh/wazuh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wazuh/wazuh/git/refs{/sha}","trees_url":"https://api.github.com/repos/wazuh/wazuh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wazuh/wazuh/statuses/{sha}","languages_url":"https://api.github.com/repos/wazuh/wazuh/languages","stargazers_url":"https://api.github.com/repos/wazuh/wazuh/stargazers","contributors_url":"https://api.github.com/repos/wazuh/wazuh/contributors","subscribers_url":"https://api.github.com/repos/wazuh/wazuh/subscribers","subscription_url":"https://api.github.com/repos/wazuh/wazuh/subscription","commits_url":"https://api.github.com/repos/wazuh/wazuh/commits{/sha}","git_commits_url":"https://api.github.com/repos/wazuh/wazuh/git/commits{/sha}","comments_url":"https://api.github.com/repos/wazuh/wazuh/comments{/number}","issue_comment_url":"https://api.github.com/repos/wazuh/wazuh/issues/comments{/number}","contents_url":"https://api.github.com/repos/wazuh/wazuh/contents/{+path}","compare_url":"https://api.github.com/repos/wazuh/wazuh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wazuh/wazuh/merges","archive_url":"https://api.github.com/repos/wazuh/wazuh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wazuh/wazuh/downloads","issues_url":"https://api.github.com/repos/wazuh/wazuh/issues{/number}","pulls_url":"https://api.github.com/repos/wazuh/wazuh/pulls{/number}","milestones_url":"https://api.github.com/repos/wazuh/wazuh/milestones{/number}","notifications_url":"https://api.github.com/repos/wazuh/wazuh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wazuh/wazuh/labels{/name}","releases_url":"https://api.github.com/repos/wazuh/wazuh/releases{/id}","deployments_url":"https://api.github.com/repos/wazuh/wazuh/deployments","created_at":"2015-08-11T17:39:03Z","updated_at":"2019-09-06T01:02:49Z","pushed_at":"2019-09-05T18:04:33Z","git_url":"git://github.com/wazuh/wazuh.git","ssh_url":"git@github.com:wazuh/wazuh.git","clone_url":"https://github.com/wazuh/wazuh.git","svn_url":"https://github.com/wazuh/wazuh","homepage":"https://wazuh.com/","size":154124,"stargazers_count":1093,"watchers_count":1093,"language":"C","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":295,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":782,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":295,"open_issues":782,"watchers":1093,"default_branch":"master"}},"base":{"label":"wazuh:3.10","ref":"3.10","sha":"88e5e37eb3ae902d260fc05a16c994a67d53914f","user":{"login":"wazuh","id":13752566,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNzUyNTY2","avatar_url":"https://avatars3.githubusercontent.com/u/13752566?v=4","gravatar_id":"","url":"https://api.github.com/users/wazuh","html_url":"https://github.com/wazuh","followers_url":"https://api.github.com/users/wazuh/followers","following_url":"https://api.github.com/users/wazuh/following{/other_user}","gists_url":"https://api.github.com/users/wazuh/gists{/gist_id}","starred_url":"https://api.github.com/users/wazuh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wazuh/subscriptions","organizations_url":"https://api.github.com/users/wazuh/orgs","repos_url":"https://api.github.com/users/wazuh/repos","events_url":"https://api.github.com/users/wazuh/events{/privacy}","received_events_url":"https://api.github.com/users/wazuh/received_events","type":"Organization","site_admin":false},"repo":{"id":40556106,"node_id":"MDEwOlJlcG9zaXRvcnk0MDU1NjEwNg==","name":"wazuh","full_name":"wazuh/wazuh","private":false,"owner":{"login":"wazuh","id":13752566,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEzNzUyNTY2","avatar_url":"https://avatars3.githubusercontent.com/u/13752566?v=4","gravatar_id":"","url":"https://api.github.com/users/wazuh","html_url":"https://github.com/wazuh","followers_url":"https://api.github.com/users/wazuh/followers","following_url":"https://api.github.com/users/wazuh/following{/other_user}","gists_url":"https://api.github.com/users/wazuh/gists{/gist_id}","starred_url":"https://api.github.com/users/wazuh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wazuh/subscriptions","organizations_url":"https://api.github.com/users/wazuh/orgs","repos_url":"https://api.github.com/users/wazuh/repos","events_url":"https://api.github.com/users/wazuh/events{/privacy}","received_events_url":"https://api.github.com/users/wazuh/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/wazuh/wazuh","description":"Wazuh - Host and endpoint security","fork":false,"url":"https://api.github.com/repos/wazuh/wazuh","forks_url":"https://api.github.com/repos/wazuh/wazuh/forks","keys_url":"https://api.github.com/repos/wazuh/wazuh/keys{/key_id}","collaborators_url":"https://api.github.com/repos/wazuh/wazuh/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/wazuh/wazuh/teams","hooks_url":"https://api.github.com/repos/wazuh/wazuh/hooks","issue_events_url":"https://api.github.com/repos/wazuh/wazuh/issues/events{/number}","events_url":"https://api.github.com/repos/wazuh/wazuh/events","assignees_url":"https://api.github.com/repos/wazuh/wazuh/assignees{/user}","branches_url":"https://api.github.com/repos/wazuh/wazuh/branches{/branch}","tags_url":"https://api.github.com/repos/wazuh/wazuh/tags","blobs_url":"https://api.github.com/repos/wazuh/wazuh/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/wazuh/wazuh/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/wazuh/wazuh/git/refs{/sha}","trees_url":"https://api.github.com/repos/wazuh/wazuh/git/trees{/sha}","statuses_url":"https://api.github.com/repos/wazuh/wazuh/statuses/{sha}","languages_url":"https://api.github.com/repos/wazuh/wazuh/languages","stargazers_url":"https://api.github.com/repos/wazuh/wazuh/stargazers","contributors_url":"https://api.github.com/repos/wazuh/wazuh/contributors","subscribers_url":"https://api.github.com/repos/wazuh/wazuh/subscribers","subscription_url":"https://api.github.com/repos/wazuh/wazuh/subscription","commits_url":"https://api.github.com/repos/wazuh/wazuh/commits{/sha}","git_commits_url":"https://api.github.com/repos/wazuh/wazuh/git/commits{/sha}","comments_url":"https://api.github.com/repos/wazuh/wazuh/comments{/number}","issue_comment_url":"https://api.github.com/repos/wazuh/wazuh/issues/comments{/number}","contents_url":"https://api.github.com/repos/wazuh/wazuh/contents/{+path}","compare_url":"https://api.github.com/repos/wazuh/wazuh/compare/{base}...{head}","merges_url":"https://api.github.com/repos/wazuh/wazuh/merges","archive_url":"https://api.github.com/repos/wazuh/wazuh/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/wazuh/wazuh/downloads","issues_url":"https://api.github.com/repos/wazuh/wazuh/issues{/number}","pulls_url":"https://api.github.com/repos/wazuh/wazuh/pulls{/number}","milestones_url":"https://api.github.com/repos/wazuh/wazuh/milestones{/number}","notifications_url":"https://api.github.com/repos/wazuh/wazuh/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/wazuh/wazuh/labels{/name}","releases_url":"https://api.github.com/repos/wazuh/wazuh/releases{/id}","deployments_url":"https://api.github.com/repos/wazuh/wazuh/deployments","created_at":"2015-08-11T17:39:03Z","updated_at":"2019-09-06T01:02:49Z","pushed_at":"2019-09-05T18:04:33Z","git_url":"git://github.com/wazuh/wazuh.git","ssh_url":"git@github.com:wazuh/wazuh.git","clone_url":"https://github.com/wazuh/wazuh.git","svn_url":"https://github.com/wazuh/wazuh","homepage":"https://wazuh.com/","size":154124,"stargazers_count":1093,"watchers_count":1093,"language":"C","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":295,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":782,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":295,"open_issues":782,"watchers":1093,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/wazuh/wazuh/pulls/3929"},"html":{"href":"https://github.com/wazuh/wazuh/pull/3929"},"issue":{"href":"https://api.github.com/repos/wazuh/wazuh/issues/3929"},"comments":{"href":"https://api.github.com/repos/wazuh/wazuh/issues/3929/comments"},"review_comments":{"href":"https://api.github.com/repos/wazuh/wazuh/pulls/3929/comments"},"review_comment":{"href":"https://api.github.com/repos/wazuh/wazuh/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/wazuh/wazuh/pulls/3929/commits"},"statuses":{"href":"https://api.github.com/repos/wazuh/wazuh/statuses/823920786a3d690e251674c25265ca0b6a2344b1"}},"author_association":"MEMBER","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"draft","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":5,"deletions":41,"changed_files":1}}
{"actor":{"display_login":"davidjiglesias"}}