summaryrefslogtreecommitdiffstats
path: root/test/units/plugins/lookup/test_url.py
blob: 2aa77b30b71ef00cd0d0880afeb5d2578c51fa8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# -*- coding: utf-8 -*-
# Copyright: (c) 2020, Sam Doran <sdoran@redhat.com>
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)

from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

import pytest

from ansible.plugins.loader import lookup_loader


@pytest.mark.parametrize(
    ('kwargs', 'agent'),
    (
        ({}, 'ansible-httpget'),
        ({'http_agent': 'SuperFox'}, 'SuperFox'),
    )
)
def test_user_agent(mocker, kwargs, agent):
    mock_open_url = mocker.patch('ansible.plugins.lookup.url.open_url', side_effect=AttributeError('raised intentionally'))
    url_lookup = lookup_loader.get('url')
    with pytest.raises(AttributeError):
        url_lookup.run(['https://nourl'], **kwargs)
    assert 'http_agent' in mock_open_url.call_args.kwargs
    assert mock_open_url.call_args.kwargs['http_agent'] == agent