Spaces:
Sleeping
Sleeping
File size: 1,115 Bytes
7d7841f | 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 | import os
import sys
import unittest
from pathlib import Path
from unittest.mock import patch
sys.path.insert(0, str(Path(__file__).resolve().parents[1]))
from app.main import DEFAULT_AUDIT_RATE_LIMIT, audit_rate_limit
class RateLimitConfigTests(unittest.TestCase):
def test_audit_rate_limit_uses_local_default_when_unset(self) -> None:
with patch.dict(os.environ, {}, clear=True):
self.assertEqual(audit_rate_limit(), DEFAULT_AUDIT_RATE_LIMIT)
def test_audit_rate_limit_uses_configured_value(self) -> None:
with patch.dict(os.environ, {"MACHINEREAD_AUDIT_RATE_LIMIT": "10/minute"}):
self.assertEqual(audit_rate_limit(), "10/minute")
def test_audit_rate_limit_strips_and_falls_back_when_blank(self) -> None:
with patch.dict(os.environ, {"MACHINEREAD_AUDIT_RATE_LIMIT": " "}):
self.assertEqual(audit_rate_limit(), DEFAULT_AUDIT_RATE_LIMIT)
with patch.dict(os.environ, {"MACHINEREAD_AUDIT_RATE_LIMIT": " 5/minute "}):
self.assertEqual(audit_rate_limit(), "5/minute")
if __name__ == "__main__":
unittest.main()
|