---
generated_at: 2026-02-22 10:30:00
metrics:
  claims_total: 91
  claims_with_evidence: 91
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：backend-opengl 単体テストケース一覧

## 本レポートについて

### 目的
本レポートは、生成された単体テストケース一覧の信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

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

1. **根拠の有無確認**：各テストケースに対して、ソースコードの実装・関数定義が存在するか
2. **根拠との整合性**：テストケースの内容がソースコードの実装と矛盾していないか
3. **網羅性**：publicな関数・メソッドが適切にカバーされているか

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：91 / 91、根拠なし：0
- 優先レビュー（高）
  1. なし（全項目に根拠あり）

## 2) 参照した情報（Evidence一覧）
> backend-openglモジュールのソースコードを解析して抽出

- E-01: `backends/imgui_impl_opengl2.h` - OpenGL2バックエンドのヘッダファイル（関数宣言）
- E-02: `backends/imgui_impl_opengl2.cpp` - OpenGL2バックエンドの実装ファイル
- E-03: `backends/imgui_impl_opengl3.h` - OpenGL3バックエンドのヘッダファイル（関数宣言）
- E-04: `backends/imgui_impl_opengl3.cpp` - OpenGL3バックエンドの実装ファイル
- E-05: `backends/imgui_impl_opengl3_loader.h` - OpenGL3ローダーヘッダファイル（imgl3w実装）

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

### OpenGL2バックエンド（imgui_impl_opengl2.cpp/h）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | ImGui_ImplOpenGL2_Init正常系テスト | E-01, E-02 (L99-112) | ○ |
| C-02 | バックエンド名設定テスト | E-02 (L108) | ○ |
| C-03 | RendererHasTexturesフラグテスト | E-02 (L109) | ○ |
| C-04 | 二重初期化アサートテスト | E-02 (L103) | ○ |
| C-05 | Shutdown正常系テスト | E-01, E-02 (L114-128) | ○ |
| C-06 | デバイスオブジェクト破棄テスト | E-02 (L121) | ○ |
| C-07 | バックエンドフラグクリアテスト | E-02 (L125) | ○ |
| C-08 | 未初期化Shutdownアサートテスト | E-02 (L117) | ○ |
| C-09 | NewFrame正常系テスト | E-01, E-02 (L130-135) | ○ |
| C-10 | NewFrame未初期化アサートテスト | E-02 (L133) | ○ |
| C-11 | RenderDrawData正常系テスト | E-01, E-02 (L184-269) | ○ |
| C-12 | フレームバッファサイズ0早期リターンテスト | E-02 (L189-190) | ○ |
| C-13 | GL状態バックアップ・リストアテスト | E-02 (L199-268) | ○ |
| C-14 | テクスチャ更新処理テスト | E-02 (L194-197) | ○ |
| C-15 | ユーザーコールバックテスト | E-02 (L227-234) | ○ |
| C-16 | ResetRenderStateコールバックテスト | E-02 (L231-232) | ○ |
| C-17 | クリッピング領域スキップテスト | E-02 (L241-242) | ○ |
| C-18 | UpdateTexture WantCreateテスト | E-01, E-02 (L273-302) | ○ |
| C-19 | UpdateTexture WantUpdatesテスト | E-02 (L303-318) | ○ |
| C-20 | UpdateTexture WantDestroyテスト | E-02 (L320-328) | ○ |
| C-21 | TexID重複作成アサートテスト | E-02 (L277) | ○ |
| C-22 | RGBA32以外フォーマットアサートテスト | E-02 (L278) | ○ |
| C-23 | CreateDeviceObjectsテスト | E-01, E-02 (L331-334) | ○ |
| C-24 | DestroyDeviceObjectsテスト | E-01, E-02 (L336-344) | ○ |
| C-25 | SetupRenderStateブレンディングテスト | E-02 (L140-141) | ○ |
| C-26 | SetupRenderState深度テスト無効化テスト | E-02 (L144) | ○ |
| C-27 | SetupRenderState正射影行列テスト | E-02 (L175) | ○ |
| C-28 | GetBackendData正常系テスト | E-02 (L93-96) | ○ |
| C-29 | GetBackendDataコンテキストなしテスト | E-02 (L95) | ○ |

### OpenGL3バックエンド（imgui_impl_opengl3.cpp/h）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-30 | ImGui_ImplOpenGL3_Init正常系テスト | E-03, E-04 (L314-427) | ○ |
| C-31 | カスタムGLSLバージョン初期化テスト | E-04 (L386-400) | ○ |
| C-32 | RendererHasVtxOffsetフラグテスト | E-04 (L376-378) | ○ |
| C-33 | GLバージョン検出テスト | E-04 (L329-344) | ○ |
| C-34 | ES3プロファイル検出テスト | E-04 (L347-352) | ○ |
| C-35 | 最大テクスチャサイズ取得テスト | E-04 (L381-382) | ○ |
| C-36 | 二重初期化アサートテスト | E-04 (L318) | ○ |
| C-37 | ローダー初期化失敗テスト | E-04 (L321-322) | ○ |
| C-38 | Shutdown正常系テスト | E-03, E-04 (L429-445) | ○ |
| C-39 | シェーダー・バッファ破棄テスト | E-04 (L436) | ○ |
| C-40 | ローダーシャットダウンテスト | E-04 (L444) | ○ |
| C-41 | NewFrame正常系テスト | E-03, E-04 (L447-456) | ○ |
| C-42 | シェーダー遅延作成テスト | E-04 (L453-455) | ○ |
| C-43 | NewFrame未初期化アサートテスト | E-04 (L450) | ○ |
| C-44 | RenderDrawData正常系テスト | E-03, E-04 (L535-718) | ○ |
| C-45 | フレームバッファサイズ0早期リターンテスト | E-04 (L540-541) | ○ |
| C-46 | VAO作成・削除テスト | E-04 (L597-599, L677) | ○ |
| C-47 | GL状態バックアップ・リストアテスト | E-04 (L554-591, L680-717) | ○ |
| C-48 | glDrawElementsBaseVertex使用テスト | E-04 (L665-668) | ○ |
| C-49 | 削除保留中プログラム復元スキップテスト | E-04 (L682) | ○ |
| C-50 | UpdateTexture WantCreateテスト | E-03, E-04 (L743-770) | ○ |
| C-51 | UpdateTexture WantUpdatesテスト | E-04 (L771-801) | ○ |
| C-52 | UpdateTexture WantDestroyテスト | E-04 (L802-803) | ○ |
| C-53 | ES環境GL_UNPACK_ROW_LENGTHなしテスト | E-04 (L786-797) | ○ |
| C-54 | CreateDeviceObjectsシェーダー作成テスト | E-03, E-04 (L844-1041) | ○ |
| C-55 | VBO/Elementsバッファ作成テスト | E-04 (L1027-1028) | ○ |
| C-56 | Uniform/Attribロケーション取得テスト | E-04 (L1020-1024) | ○ |
| C-57 | GLSL 120シェーダー選択テスト | E-04 (L969-973) | ○ |
| C-58 | GLSL 410シェーダー選択テスト | E-04 (L974-978) | ○ |
| C-59 | GLSL 300 ESシェーダー選択テスト | E-04 (L979-983) | ○ |
| C-60 | シェーダーコンパイル失敗テスト | E-04 (L996-997) | ○ |
| C-61 | プログラムリンク失敗テスト | E-04 (L1012-1013) | ○ |
| C-62 | DestroyDeviceObjectsプログラム破棄テスト | E-03, E-04 (L1043-1055) | ○ |
| C-63 | バッファ破棄テスト | E-04 (L1047-1048) | ○ |
| C-64 | SetupRenderStateシェーダー使用テスト | E-04 (L507) | ○ |
| C-65 | SetupRenderState正射影行列設定テスト | E-04 (L500-509) | ○ |
| C-66 | GL_CLIP_ORIGIN対応テスト | E-04 (L479-498) | ○ |
| C-67 | 頂点属性有効化テスト | E-04 (L524-529) | ○ |
| C-68 | CheckShader成功テスト | E-04 (L807-823) | ○ |
| C-69 | CheckShader失敗テスト | E-04 (L813-814) | ○ |
| C-70 | CheckProgram成功テスト | E-04 (L826-842) | ○ |
| C-71 | CheckProgram失敗テスト | E-04 (L832-833) | ○ |
| C-72 | InitLoader正常系テスト | E-04 (L291-304) | ○ |
| C-73 | InitLoader重複初期化スキップテスト | E-04 (L297) | ○ |
| C-74 | InitLoader失敗テスト | E-04 (L298-301) | ○ |

### OpenGL3ローダー（imgui_impl_opengl3_loader.h）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-75 | imgl3wInit正常系テスト | E-05 (L841-848) | ○ |
| C-76 | imgl3wInitライブラリエラーテスト | E-05 (L843-845) | ○ |
| C-77 | imgl3wInit2カスタム初期化テスト | E-05 (L850-854) | ○ |
| C-78 | imgl3wShutdownテスト | E-05 (L856-860) | ○ |
| C-79 | imgl3wIsSupportedサポート有りテスト | E-05 (L862-869) | ○ |
| C-80 | imgl3wIsSupportedサポート無しテスト | E-05 (L862-869) | ○ |
| C-81 | imgl3wIsSupported最小バージョンテスト | E-05 (L864-865) | ○ |
| C-82 | imgl3wGetProcAddress有効プロシージャテスト | E-05 (L871) | ○ |
| C-83 | imgl3wGetProcAddress無効プロシージャテスト | E-05 (L871) | ○ |
| C-84 | open_libglライブラリロードテスト | E-05 (L653-670/L675-690/L778-797) | ○ |
| C-85 | close_libglライブラリアンロードテスト | E-05 (L662/L683/L699-713) | ○ |
| C-86 | get_procプロシージャ取得テスト | E-05 (L663-670/L685-690/L799-816) | ○ |
| C-87 | parse_versionバージョン解析テスト | E-05 (L821-836) | ○ |
| C-88 | parse_versionバージョンエラーテスト | E-05 (L833-834) | ○ |
| C-89 | parse_versionレガシー解析テスト | E-05 (L827-831) | ○ |
| C-90 | load_procsプロシージャロードテスト | E-05 (L941-946) | ○ |
| C-91 | clear_procsプロシージャクリアテスト | E-05 (L948-953) | ○ |

## 4) 不足情報（Unknown / Missing）
- なし（全テストケースに対応するソースコードの根拠が存在）

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 全テストケースがソースコードに基づいて生成されている

### 注意事項
- OpenGLバックエンドはハードウェア依存のため、実際のテスト実行にはOpenGLコンテキストが必要
- プラットフォーム固有のコード（Windows/macOS/Linux）は条件コンパイルで分岐
- ES2/ES3環境でのテストは別途環境が必要
- imgui_impl_opengl3_loader.hはヘッダオンリーライブラリのため、IMGL3W_IMPL定義時のみ実装が有効

## 6) レビュアーチェックリスト（最小）
- [ ] 各テストケースがソースコード内の対応する関数・処理を正しく参照しているか確認
- [ ] 正常系・異常系・境界値のテスト観点が網羅されているか確認
- [ ] OpenGL2とOpenGL3の両方のバックエンドがカバーされているか確認
- [ ] ローダー（imgl3w）の初期化・シャットダウン処理がカバーされているか確認
- [ ] プラットフォーム固有の処理（Windows/macOS/Linux）が考慮されているか確認
- [ ] テストの優先度が適切に設定されているか確認（初期化/シャットダウン/描画は高優先度）
