Individual stats for account rate limits

This commit is contained in:
Jonas Linter
2025-11-04 11:53:11 +01:00
parent 6127ea4650
commit f962a1a83d
3 changed files with 127 additions and 42 deletions

View File

@@ -54,8 +54,8 @@ async def test_rate_limiter():
limiter.update_usage(response1)
limiter.print_stats()
# Test 2: X-Ad-Account-Usage header
print("\n--- Test 2: X-Ad-Account-Usage Header ---")
# Test 2: X-Ad-Account-Usage header (first account)
print("\n--- Test 2: X-Ad-Account-Usage Header (Account 1) ---")
response2 = MockResponse(headers={
'x-ad-account-usage': json.dumps({
'acc_id_util_pct': 78.5,
@@ -63,7 +63,19 @@ async def test_rate_limiter():
'ads_api_access_tier': 'development_access'
})
})
limiter.update_usage(response2)
limiter.update_usage(response2, account_id='act_123456789')
limiter.print_stats()
# Test 2b: X-Ad-Account-Usage header (second account)
print("\n--- Test 2b: X-Ad-Account-Usage Header (Account 2) ---")
response2b = MockResponse(headers={
'x-ad-account-usage': json.dumps({
'acc_id_util_pct': 45.2,
'reset_time_duration': 80,
'ads_api_access_tier': 'standard_access'
})
})
limiter.update_usage(response2b, account_id='act_987654321')
limiter.print_stats()
# Test 3: X-Business-Use-Case-Usage header