test : add unit tests for ScanRateLimiter helpers in rate_limiter
@aaniya22 がすでに取り組んでいます。
2026年7月29日 から。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 35/100
調査の方向性
Start with backend/secuscan/rate_limiter.py and read the existing unit test conventions under testing/backend/unit/. Add testing/backend/unit/test_rate_limiter_scan_rate_limiter.py to cover the listed helpers and check() cases, then run that test file. Done means each specified behavior and factory argument is verified; the issue says the work is already being handled by tmdeveloper007.
索引モデルが issue の本文から書いたものです。
説明
Summary of What Needs to be Done:
The backend/secuscan/rate_limiter.py module (containing ScanRateLimiter, RateLimitExceeded, make_scan_rate_limiter) has no dedicated test file. Add unit tests covering the core helper methods.
Changes that Need to be Made:
- Add a new test file:
testing/backend/unit/test_rate_limiter_scan_rate_limiter.py - Test
ScanRateLimiter._get_client_ip(): X-Forwarded-For, X-Real-IP, direct client.host, None client - Test
ScanRateLimiter._make_key(): key namespace construction - Test
ScanRateLimiter.reset(): clears fallback history and redis_failed flag - Test
ScanRateLimiter.check()withrate_limit=0(early return) - Test
ScanRateLimiter.check()withredis_client=None(in-memory fallback path) - Test
ScanRateLimiter.check()per-minute and per-hour limit enforcement - Test
make_scan_rate_limiterfactory preserves all arguments
Impact that it would Provide:
- Reliability: Rate limiter IP extraction, key generation, and fallback logic are verified
- Security: Ensures rate limiting cannot be bypassed
- Testing coverage: Fills a gap in the untested rate_limiter module
Note: This task is being handled by tmdeveloper007 — please assign to that account when picking it up.
- 主要言語
- Python
- スター
- 36
- フォーク
- 234
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
utksh1/SecuScan のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
area:frontend good first issue level:beginner priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
utksh1/SecuScan の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 1 日以内に返信
-
comp/desktop P3 type/feature
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
NousResearch/hermes-agent#154285 ·
メンテナーはふだん 1 日以内に返信
-
docs: qualify copied and custom kubectl debug policy notes対応中かも @nym01 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
kubescape/cel-admission-library#166 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
SACGF/variantgrid#2804 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
[BUG] HTTP lifecycle dispatch treats a NO_PROXY-only environment as corporate egress and skips the resolve-and-pinned session対応中かも @bodapatisaikrishna が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信