Ошибка в эталонном решении и тестах subnet_checker.clj
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- clojure
- 領域
- testing-qa
調査の方向性
subnet_checker.clj から始め、参照実装とテストデータジェネレーターの両方を調査してください。既存のテストを実行して、サブネット所属判定の誤った動作と不十分なケースを再現してください。サブネットマスクを正しく使って所属を判定し、生成されたテストが生成されたサブネットの内側または外側に意図的にある IP を生成すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
В задаче осталось несколько недочетов:
- Эталонное решение не корректное - производится проверка на вхождение
adressвsubnet(в виде строк), однако в реальности алгоритм должен быть посложнее, пример
для входных аргументов["211.191.126.18","211.191.126.18/15"]результатtrue
Однако, если проверить в калькуляторе https://ip-calculator.ru/#!ip=211.191.126.18/15
адрес сети должен быть211.190.0.0(тут проявляется и 2 проблема, о ней ниже) - Генерация тестов не корректная, адрес подсети в тестовых данных должен генерироваться с учетом маски, в данный момент генерируется произвольный адрес, алгоритм генерации тестов должен быть следующий:
- 1 - генерируем маску подсети (m) в диапазоне от 0 до 32
- 2 - с учетом маски генерируем адрес подсети (используем первые m бит из 32, остальные биты - нулевые)
- 3 - случайным образом определяем должен ли адрес принадлежать подсети (с вероятностью 50%)
- 4 - на основании п.3 генерируем случайный ip-адрес гарантированно принадлежащий (или не принадлежащий) указанной подссети.
В связи с тем, что в данный момент генерация ip-адреса и адреса подсети производятся независимо друг от друга в большинстве тестов результат проверки будет false, соответственно тесты плохо проверяют корректность написанного кода.
- 主要言語
- Clojure
- スター
- 71
- フォーク
- 67
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
hexlet-codebattle/battle_asserts のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
hexlet-codebattle/battle_asserts#1093 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 55/100
hexlet-codebattle/battle_asserts#1072 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
hexlet-codebattle/battle_asserts#1036 · リアクション 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
hexlet-codebattle/battle_asserts#1001 · コメント 1 件 ·
hexlet-codebattle/battle_asserts の issue をすべて見る
似ている issue
-
.Needs Triage Administration/People Priority:P2 Type:Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
metabase/metabase#85503 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
bug: Editing the L value in HSL mode resets H and S to 0対応中かも @makesomethingshit が 1 日前に担当しました。 オープンneeds triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
pgwire tokens-reqd
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
software-mansion/starknet-jvm#641 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
nrepl/piggieback#163 ·