Skip to content
Snippets Groups Projects
test_background_process_metrics.py 774 B
Newer Older
  • Learn to ignore specific revisions
  • from unittest import TestCase as StdlibTestCase
    from unittest.mock import Mock
    
    from synapse.logging.context import ContextResourceUsage, LoggingContext
    from synapse.metrics.background_process_metrics import _BackgroundProcess
    
    
    class TestBackgroundProcessMetrics(StdlibTestCase):
        def test_update_metrics_with_negative_time_diff(self) -> None:
            """We should ignore negative reported utime and stime differences"""
            usage = ContextResourceUsage()
            usage.ru_stime = usage.ru_utime = -1.0
    
            mock_logging_context = Mock(spec=LoggingContext)
            mock_logging_context.get_resource_usage.return_value = usage
    
            process = _BackgroundProcess("test process", mock_logging_context)
            # Should not raise
            process.update_metrics()