---
generated_at: 2026-02-19 15:30:00
metrics:
  claims_total: 67
  claims_with_evidence: 67
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：modules-lang-java 単体テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：67 / 67、根拠なし：0
- 優先レビュー（高）
  1. **なし**：すべてのテストケースはソースコードから直接導出

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `modules/lang/java/autoload/java.el` - Javaヘルパー関数定義（90行）
- E-02: `modules/lang/java/autoload/lsp.el` - LSPテスト実行関数定義（23行）
- E-03: `modules/lang/java/config.el` - モジュール設定（61行）
- E-04: `modules/lang/java/+lsp.el` - LSP統合設定（28行）
- E-05: `modules/lang/java/doctor.el` - 依存関係チェック（22行）
- E-06: `modules/lang/java/packages.el` - パッケージ宣言（16行）

## 3) Claims と根拠の対応（レビューの主戦場）

### autoload/java.el - Androidモード関連関数

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | +java-android-mode-is-layout-file: android-mode、nxml-mode、layoutディレクトリの3条件でレイアウトファイルを判定 | E-01 (行5-8) | ○ |
| C-02 | +java-android-mode-in-tags: cl-findでタグ名リスト内の検索を実行 | E-01 (行11-12) | ○ |
| C-03 | +java-android-mode-tag-name: nxml-backward-up-element, evil-forward-word-begin, evil-forward-WORD-endを使用してタグ名を抽出 | E-01 (行15-23) | ○ |
| C-04 | +java-android-mode-maybe-h: AndroidManifest.xmlまたはsrc/main/AndroidManifest.xmlの存在でandroid-modeを有効化 | E-01 (行26-33) | ○ |

### autoload/java.el - パッケージ・クラス名関連関数

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-05 | +java-current-package: doom-special-buffer-pで特殊バッファをチェック、"{PackageName}"を返却 | E-01 (行45-46) | ○ |
| C-06 | +java-current-package: java-mode/java-ts-mode以外でuser-errorをスロー | E-01 (行47-49) | ○ |
| C-07 | +java-current-package: +java-project-package-rootsを使用してパッケージルートを特定 | E-01 (行57-67), E-03 (行3-18) | ○ |
| C-08 | +java-current-package: 文字列rootの場合はlocate-dominating-fileで検索 | E-01 (行58-60) | ○ |
| C-09 | +java-current-package: 整数rootの場合は深度分のディレクトリをポップ | E-01 (行61-67) | ○ |
| C-10 | +java-current-class: doom-special-buffer-pで特殊バッファをチェック、"{ClassName}"を返却 | E-01 (行75-76) | ○ |
| C-11 | +java-current-class: file-name-sans-extensionとfile-name-baseでクラス名を抽出 | E-01 (行80-81) | ○ |
| C-12 | +java/open-groovy-repl: run-groovyを呼び出しgroovy-bufferを返却 | E-01 (行85-89) | ○ |

### autoload/lsp.el - テスト実行関数

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-13 | +java/run-test: condition-caseでdap-java-run-test-methodを試行、user-errorでdap-java-run-test-classにフォールバック | E-02 (行5-12) | ○ |
| C-14 | +java/debug-test: condition-caseでdap-java-debug-test-methodを試行、user-errorでdap-java-debug-test-classにフォールバック | E-02 (行15-22) | ○ |

### config.el - モジュール設定

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-15 | +java-project-package-roots: デフォルト値が("java/" "test/" "main/" "src/" 1) | E-03 (行3) | ○ |
| C-16 | projectile設定: gradlew, build.gradleをprojectile-project-root-filesに追加 | E-03 (行20-21) | ○ |
| C-17 | +lspと-eglot条件でload! "+lsp"を実行 | E-03 (行27-29) | ○ |
| C-18 | java-ts-mode: +tree-sitter条件でset-tree-sitter!を設定 | E-03 (行35-43) | ○ |
| C-19 | android-mode: java-mode-hook, groovy-mode-hook, nxml-mode-hookに+java-android-mode-maybe-hを追加 | E-03 (行46-52) | ○ |
| C-20 | groovy-mode: set-docsets!, set-eval-handler!, set-repl-handler!を設定 | E-03 (行55-60) | ○ |

### +lsp.el - LSP統合設定

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-21 | lsp-java-workspace-dir: doom-profile-data-dir/java-workspaceに設定 | E-04 (行7) | ○ |
| C-22 | java-mode-local-vars-hook, java-ts-mode-local-vars-hookにlsp!を追加 | E-04 (行8-9) | ○ |
| C-23 | :tools debugger +lsp条件でlsp-jt-root, dap-java-test-runnerを設定 | E-04 (行11-13) | ○ |
| C-24 | dap-java: テスト実行用キーバインド(t/a/d/D)をjava-mode-mapに設定 | E-04 (行16-27) | ○ |

### doctor.el - 依存関係チェック

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-25 | +lsp有効時に:tools lspを要求するassert! | E-05 (行4-6) | ○ |
| C-26 | +tree-sitter有効時に:tools tree-sitterを要求するassert! | E-05 (行8-10) | ○ |
| C-27 | +tree-sitter有効時にjava-ts-modeの存在を要求するassert! | E-05 (行12-14) | ○ |
| C-28 | javac未検出時の警告 | E-05 (行16-17) | ○ |
| C-29 | :editor format有効時のclang-format未検出警告 | E-05 (行19-21) | ○ |

### packages.el - パッケージ宣言

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-30 | android-modeパッケージ宣言（ピン付き） | E-06 (行4) | ○ |
| C-31 | groovy-modeパッケージ宣言（ピン付き） | E-06 (行5) | ○ |
| C-32 | +lsp有効かつ-eglot無効時のlsp-java/lsp-treemacsパッケージ宣言 | E-06 (行7-15) | ○ |

## 4) 不足情報（Unknown / Missing）
- **なし**：すべてのテストケースはソースコードから直接導出されており、根拠が明確に存在する

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - すべてのテストケースがソースコード内の具体的な関数・設定から導出
- 外部依存（dap-java, lsp-java等）のモック方法はテスト実装時に検討が必要

## 6) レビュアーチェックリスト（最小）
- [ ] テストケースがモジュール内のすべての関数をカバーしているか確認
- [ ] 各関数の条件分岐（if/cond/when/unless）がテスト観点に反映されているか確認
- [ ] エラーハンドリング（user-error, condition-case）のテストケースが適切か確認
- [ ] 外部パッケージ依存（android-mode, groovy-mode, dap-java, lsp-java）のテストケースで適切なモックが考慮されているか確認
- [ ] Doom Emacs固有のマクロ/関数（modulep!, project-file-exists-p!, doom-special-buffer-p等）のテスト可能性を確認
