Beispiel #1
0
def test_send_wpk_file(_get_wpk_mock, get_req_mock, stat_mock, ossec_socket_mock,
                       open_mock, test_data, agent_id):
    """
    Test _send_wpk_file method
    """
    with patch('sqlite3.connect') as mock_db:
        mock_db.return_value = test_data.global_db
        agent = Agent(agent_id)

        for version in wpk_versions:
            _get_wpk_mock.return_value = version

            # mock return value of OssecSocket.receive method with a binary string
            ossec_socket_mock.return_value.receive.return_value = f'ok {version[1]}'.encode()
            # mock return value of open.read for avoid infinite loop
            open_mock.return_value.read.return_value = b''

            result = agent._send_wpk_file()

            assert result == ["WPK file sent", version[0]]