Skip to content

PR #5368 nitpickコメント対応 #5372

@coderabbitai

Description

@coderabbitai

概要

PR #5368 (SelectLineScreenの分割リファクタリング) のレビューで指摘されたnitpickコメントをまとめたissueです。

関連PR: #5368
リクエスト元: @TinyKitten


対応項目

src/hooks/useSelectLineWalkthrough.ts (2件)

  1. マジックナンバーの抽出 (64-73行目)

    • -16 の補正値を定数として抽出する(例: PRESETS_MARGIN_TOP_OFFSET
    • 意図を明確にするためのコメントを追加
  2. Layout型の重複 (7-12行目)

    • LayoutButtonLayoutHeaderLayout が重複している
    • 共通の型定義を作成して再利用する

src/hooks/useInitialNearbyStation.test.tsx (1件)

  1. HookBridgeパターン (56-61行目)
    • @testing-library/react-nativerenderHook を使用した標準的なテストパターンに変更

src/hooks/usePresetCarouselData.ts (1件)

  1. レースコンディションの可能性 (33-104行目)
    • routes が急速に変更された場合の競合状態を防ぐ
    • フェッチ開始時に routesKey を保存し、最新のフェッチ結果のみを反映

src/screens/SelectLineScreen.render.test.tsx (2件)

  1. jest.clearAllMocks()の呼び出し位置 (269-272行目)

    • beforeEach から afterEach に移動
    • テスト失敗時のデバッグでモック状態を保持
  2. atomの呼び出し順序に依存するモック (258-264行目)

    • atomCallCount ベースの実装を、atom引数を判定する実装に変更
    • 呼び出し順序の変更に対して堅牢にする

src/hooks/useLineSelection.ts (3件)

  1. 不要なnull合体演算子 (108-111行目)

    • pendingLine: line ?? nullpendingLine: line に簡素化
  2. station.idの型安全性 (291-295行目)

    • station.id as number のキャストの前に null チェックを追加
    • ランタイムエラーを防止
  3. geolibの座標フォーマット統一 (247-259行目)

    • { lat, lon }{ latitude, longitude } が混在
    • { latitude, longitude } 形式に統一

src/hooks/useLineSelection.test.tsx (1件)

  1. handlePresetPressのテストケース不足 (74-287行目)
    • route.hasTrainType が true/false の両方のケースをカバー
    • openModalByTrainTypeIdopenModalByLineId の呼び出しをテスト

src/hooks/useInitialNearbyStation.ts (1件)

  1. バックグラウンド位置更新のエラーハンドリング (46-56行目)
    • stopLocationUpdates の非同期処理に try/catch を追加
    • エラー発生時のログ出力を実装

優先度

このissueはコードの品質向上を目的としており、緊急性は低いです。時間のある時に対応してください。

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions