Paywall: first unit of each grade free; 1/3/6-month subscriptions; AI sold separately
- content: unit_is_free/has_unit_access; questions, node quiz, answer and lesson/node complete return 402 subscription_required outside the first unit without an active subscription. /api/home units carry requiresSubscription. - subscription.0013: monthly 498k, quarterly 798k, six-month 1,298k toman, unlimited hearts, 3 AI questions/day; packs stay on sale for more questions. - AI_DAILY_QUOTA_FREE default 3 -> 2. - /api/subscription/status adds planTitle, planDurationDays, aiDailyQuota. - tests: content/tests_paywall.py; existing unlock-order tests get a subscription. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -444,6 +444,8 @@ class AskAIViewThrottleTests(TestCase):
|
||||
HTTP_IDEMPOTENCY_KEY=idempotency_key,
|
||||
)
|
||||
|
||||
# سقفِ روزانه (پیشفرض ۲) نباید پیش از throttle برسد؛ این تست فقط throttle را میسنجد.
|
||||
@override_settings(AI_DAILY_QUOTA_FREE=10)
|
||||
def test_requests_within_rate_succeed_and_excess_is_throttled(self):
|
||||
# هر درخواست idempotency-key متفاوت دارد تا هر بار واقعاً از کوتای
|
||||
# روزانه مصرف کند (نه یک replay ساده)، و صرفاً throttle سنجیده شود.
|
||||
|
||||
Reference in New Issue
Block a user