Skip to content

Commit c27e7d1

Browse files
committed
Fixed unit test
1 parent c0ed2cf commit c27e7d1

1 file changed

Lines changed: 23 additions & 10 deletions

File tree

workers/tests/unittest_proxy/test_dispatcher.py

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ def test_dispatcher_initialization(self, mock_thread, mock_queue):
6060
@patch("proxy_worker.dispatcher.is_system_log_category")
6161
def test_on_logging_levels_and_categories(self, mock_is_system, mock_rpc_log,
6262
mock_streaming_message):
63+
# Import module to access cached constants
64+
import proxy_worker.dispatcher as dispatcher_module
65+
6366
loop = Mock()
6467
dispatcher = Dispatcher(loop, "localhost", 5000, "worker",
6568
"req", 5.0)
@@ -68,23 +71,33 @@ def test_on_logging_levels_and_categories(self, mock_is_system, mock_rpc_log,
6871
mock_streaming_message.return_value = Mock()
6972

7073
levels = [
71-
(logging.CRITICAL, mock_rpc_log.Critical),
72-
(logging.ERROR, mock_rpc_log.Error),
73-
(logging.WARNING, mock_rpc_log.Warning),
74-
(logging.INFO, mock_rpc_log.Information),
75-
(logging.DEBUG, mock_rpc_log.Debug),
76-
(5, getattr(mock_rpc_log, 'None')),
74+
(logging.CRITICAL, dispatcher_module._LOG_LEVEL_CRITICAL),
75+
(logging.ERROR, dispatcher_module._LOG_LEVEL_ERROR),
76+
(logging.WARNING, dispatcher_module._LOG_LEVEL_WARNING),
77+
(logging.INFO, dispatcher_module._LOG_LEVEL_INFO),
78+
(logging.DEBUG, dispatcher_module._LOG_LEVEL_DEBUG),
79+
(5, dispatcher_module._LOG_LEVEL_NONE),
7780
]
7881

7982
for level, expected in levels:
80-
record = Mock(levelno=level, name="custom.logger")
83+
record = Mock(levelno=level)
84+
record.name = "custom.logger"
8185
mock_is_system.return_value = level % 2 == 0 # alternate True/False
8286
dispatcher.on_logging(record, "Test message")
8387

88+
# Determine expected category from cached constants
8489
if mock_is_system.return_value:
85-
mock_rpc_log.RpcLogCategory.Value.assert_called_with("System")
90+
expected_category = dispatcher_module._LOG_CATEGORY_SYSTEM
8691
else:
87-
mock_rpc_log.RpcLogCategory.Value.assert_called_with("User")
92+
expected_category = dispatcher_module._LOG_CATEGORY_USER
93+
94+
# Verify RpcLog was initialized with correct mapped values
95+
# We use call_args to verify kwargs, ignoring any extra kwargs like invocation_id if present
96+
args, kwargs = mock_rpc_log.call_args
97+
self.assertEqual(kwargs['level'], expected)
98+
self.assertEqual(kwargs['log_category'], expected_category)
99+
self.assertEqual(kwargs['message'], "Test message")
100+
self.assertEqual(kwargs['category'], "custom.logger")
88101

89102

90103
def fake_import(name, globals=None, locals=None, fromlist=(), level=0):
@@ -96,7 +109,7 @@ def fake_import(name, globals=None, locals=None, fromlist=(), level=0):
96109
mock_module.version.VERSION = AsyncMock(return_value="1.0.0")
97110
if name in ["azure_functions_runtime", "azure_functions_runtime_v1"]:
98111
return mock_module
99-
return builtins.__import__(name, globals, locals, fromlist, level)
112+
return _real_import(name, globals, locals, fromlist, level)
100113

101114

102115
@patch("proxy_worker.dispatcher.DependencyManager.should_load_cx_dependencies",

0 commit comments

Comments
 (0)