|
10 | 10 | from model_engine_server.inference.forwarding.forwarding import Forwarder |
11 | 11 | from model_engine_server.inference.forwarding.http_forwarder import ( |
12 | 12 | MultiprocessingConcurrencyLimiter, |
| 13 | + get_concurrency_limiter, |
13 | 14 | predict, |
14 | 15 | ) |
15 | 16 | from model_engine_server.inference.infra.gateways.datadog_inference_monitoring_metrics_gateway import ( |
@@ -57,6 +58,32 @@ def json(self) -> dict: |
57 | 58 | return mocked_static_json() |
58 | 59 |
|
59 | 60 |
|
| 61 | +def mocked_get_config(): |
| 62 | + return { |
| 63 | + "sync": { |
| 64 | + "user_port": 5005, |
| 65 | + "user_hostname": "localhost", |
| 66 | + "use_grpc": False, |
| 67 | + "predict_route": "/predict", |
| 68 | + "healthcheck_route": "/readyz", |
| 69 | + "batch_route": None, |
| 70 | + "model_engine_unwrap": True, |
| 71 | + "serialize_results_as_string": True, |
| 72 | + "forward_http_status": True, |
| 73 | + }, |
| 74 | + "stream": { |
| 75 | + "user_port": 5005, |
| 76 | + "user_hostname": "localhost", |
| 77 | + "predict_route": "/stream", |
| 78 | + "healthcheck_route": "/readyz", |
| 79 | + "batch_route": None, |
| 80 | + "model_engine_unwrap": True, |
| 81 | + "serialize_results_as_string": False, |
| 82 | + }, |
| 83 | + "max_concurrency": 42, |
| 84 | + } |
| 85 | + |
| 86 | + |
60 | 87 | @pytest.fixture |
61 | 88 | def post_inference_hooks_handler(): |
62 | 89 | handler = PostInferenceHooksHandler( |
@@ -108,6 +135,13 @@ def mock_request(): |
108 | 135 | ) |
109 | 136 |
|
110 | 137 |
|
| 138 | +@mock.patch("model_engine_server.inference.forwarding.http_forwarder.get_config", mocked_get_config) |
| 139 | +def test_get_concurrency_limiter(): |
| 140 | + limiter = get_concurrency_limiter() |
| 141 | + assert isinstance(limiter, MultiprocessingConcurrencyLimiter) |
| 142 | + assert limiter.concurrency == 42 |
| 143 | + |
| 144 | + |
111 | 145 | @mock.patch("requests.post", mocked_post) |
112 | 146 | @mock.patch("requests.get", mocked_get) |
113 | 147 | def test_http_service_429(mock_request, post_inference_hooks_handler): |
|
0 commit comments