mirror of
https://github.com/ansible/awx.git
synced 2024-11-01 08:21:15 +03:00
36 lines
1.2 KiB
Python
36 lines
1.2 KiB
Python
# -*- coding: utf-8 -*-
|
|
from collections import namedtuple
|
|
|
|
try:
|
|
from unittest.mock import patch
|
|
except ImportError:
|
|
from mock import patch
|
|
import pytest
|
|
|
|
from awxkit.ws import WSClient
|
|
|
|
ParseResult = namedtuple("ParseResult", ["port", "hostname", "secure"])
|
|
|
|
def test_explicit_hostname():
|
|
client = WSClient("token", "some-hostname", 556, False)
|
|
assert client.port == 556
|
|
assert client.hostname == "some-hostname"
|
|
assert client._use_ssl == False
|
|
assert client.token == "token"
|
|
|
|
|
|
@pytest.mark.parametrize('url, result',
|
|
[['https://somename:123', ParseResult(123, "somename", True)],
|
|
['http://othername:456', ParseResult(456, "othername", False)],
|
|
['http://othername', ParseResult(80, "othername", False)],
|
|
['https://othername', ParseResult(443, "othername", True)],
|
|
])
|
|
def test_urlparsing(url, result):
|
|
with patch("awxkit.ws.config") as mock_config:
|
|
mock_config.base_url = url
|
|
|
|
client = WSClient("token")
|
|
assert client.port == result.port
|
|
assert client.hostname == result.hostname
|
|
assert client._use_ssl == result.secure
|