-
Notifications
You must be signed in to change notification settings - Fork 63
Expand file tree
/
Copy pathtest_conftest.py
More file actions
93 lines (69 loc) · 3.88 KB
/
test_conftest.py
File metadata and controls
93 lines (69 loc) · 3.88 KB
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
"""Unit tests for conftest.py helper functions"""
from unittest.mock import patch, Mock
import requests
from .conftest import (
is_local_server_running,
is_docker_server_running,
is_jwt_server_running,
)
class TestServerDetection:
"""Test server detection helper functions"""
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_local_server_running_any_response(self, mock_get):
"""Test local server detection returns True for any HTTP response"""
mock_get.return_value = Mock()
assert is_local_server_running() is True
mock_get.assert_called_once_with("http://127.0.0.1:6363/api/ok", timeout=2)
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_local_server_running_not_200(self, mock_get):
"""Test local server detection returns True for non-200 status (server is running)"""
mock_response = Mock()
mock_response.status_code = 401
mock_get.return_value = mock_response
assert is_local_server_running() is True
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_local_server_not_running_connection_error(self, mock_get):
"""Test local server detection returns False on connection error"""
mock_get.side_effect = requests.exceptions.ConnectionError()
assert is_local_server_running() is False
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_local_server_not_running_timeout(self, mock_get):
"""Test local server detection returns False on timeout"""
mock_get.side_effect = requests.exceptions.Timeout()
assert is_local_server_running() is False
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_docker_server_running_any_response(self, mock_get):
"""Test Docker server detection returns True for any HTTP response"""
mock_get.return_value = Mock()
assert is_docker_server_running() is True
mock_get.assert_called_once_with("http://127.0.0.1:6363/api/ok", timeout=2)
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_docker_server_running_not_200(self, mock_get):
"""Test Docker server detection returns True for non-200 status (server is running)"""
mock_response = Mock()
mock_response.status_code = 401
mock_get.return_value = mock_response
assert is_docker_server_running() is True
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_docker_server_not_running(self, mock_get):
"""Test Docker server detection returns False on connection error"""
mock_get.side_effect = requests.exceptions.ConnectionError()
assert is_docker_server_running() is False
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_jwt_server_running_any_response(self, mock_get):
"""Test JWT server detection returns True for any HTTP response"""
mock_get.return_value = Mock()
assert is_jwt_server_running() is True
mock_get.assert_called_once_with("http://127.0.0.1:6367/api/", timeout=2)
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_jwt_server_running_401(self, mock_get):
"""Test JWT server detection returns True for HTTP 401 (unauthorized)"""
mock_response = Mock()
mock_response.status_code = 401
mock_get.return_value = mock_response
assert is_jwt_server_running() is True
@patch("terminusdb_client.tests.integration_tests.conftest.requests.get")
def test_jwt_server_not_running(self, mock_get):
"""Test JWT server detection returns False on connection error"""
mock_get.side_effect = requests.exceptions.ConnectionError()
assert is_jwt_server_running() is False