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

# 根拠レポート：Avalonia.Win32 単体テストケース一覧

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：134 / 134、根拠なし：0
- 優先レビュー（高）
  1. **Win32 API呼び出しのモック化**：実際のWin32環境がないとテスト実行が困難な項目がある
  2. **OLE/COMインターフェースの検証**：クリップボード・ドラッグ&ドロップ関連のテストはCOM初期化が必要
  3. **マルチモニター環境テスト**：スクリーン関連のテストは環境依存性が高い

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

- E-01: `src/Windows/Avalonia.Win32/WindowImpl.cs` - ウィンドウ実装の主要クラス（1733行）
- E-02: `src/Windows/Avalonia.Win32/ClipboardImpl.cs` - クリップボード実装（163行）
- E-03: `src/Windows/Avalonia.Win32/Win32Platform.cs` - プラットフォーム初期化（355行）
- E-04: `src/Windows/Avalonia.Win32/CursorFactory.cs` - カーソルファクトリ（126行）
- E-05: `src/Windows/Avalonia.Win32/TrayIconImpl.cs` - トレイアイコン実装（397行）
- E-06: `src/Windows/Avalonia.Win32/ScreenImpl.cs` - スクリーン実装（104行）
- E-07: `src/Windows/Avalonia.Win32/WinScreen.cs` - 個別スクリーン情報（127行）
- E-08: `src/Windows/Avalonia.Win32/Input/KeyInterop.cs` - キー変換処理（532行）
- E-09: `src/Windows/Avalonia.Win32/IconImpl.cs` - アイコン実装（88行）
- E-10: `src/Windows/Avalonia.Win32/PopupImpl.cs` - ポップアップ実装（177行）
- E-11: `src/Windows/Avalonia.Win32/DragSource.cs` - ドラッグソース実装（36行）
- E-12: `src/Windows/Avalonia.Win32/OleDropTarget.cs` - ドロップターゲット実装（232行）
- E-13: `src/Windows/Avalonia.Win32/Win32StorageProvider.cs` - ストレージプロバイダ（287行）
- E-14: `src/Windows/Avalonia.Win32/Win32PlatformSettings.cs` - プラットフォーム設定（91行）
- E-15: `src/Windows/Avalonia.Win32/Win32DispatcherImpl.cs` - ディスパッチャ実装（121行）
- E-16: `src/Windows/Avalonia.Win32/FramebufferManager.cs` - フレームバッファ管理（192行）

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

### WindowImpl関連テストケース（C-01〜C-40）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | WindowImplコンストラクタの正常初期化 | E-01 (行121-186) | ○ |
| C-02 | ClientSizeプロパティの正常取得 | E-01 (行251-259) | ○ |
| C-03 | ClientSizeの境界値テスト | E-01 (行251-259) | ○ |
| C-04 | FrameSizeプロパティの正常取得 | E-01 (行263-270) | ○ |
| C-05 | Positionプロパティのget処理 | E-01 (行514-519) | ○ |
| C-06 | Positionプロパティのset処理 | E-01 (行522-545) | ○ |
| C-07 | WindowState Normal状態の取得 | E-01 (行280-314) | ○ |
| C-08 | WindowState Maximized状態の取得 | E-01 (行296-298) | ○ |
| C-09 | WindowState Minimized状態の取得 | E-01 (行296-299) | ○ |
| C-10 | WindowState FullScreen状態の取得 | E-01 (行289-291) | ○ |
| C-11 | RenderScalingプロパティ | E-01 (行247) | ○ |
| C-12 | Resizeメソッドの正常処理 | E-01 (行561-641) | ○ |
| C-13 | Resizeの境界値テスト | E-01 (行561-641) | ○ |
| C-14 | フルスクリーン時のResize無視 | E-01 (行575-581) | ○ |
| C-15 | Activateメソッド | E-01 (行643-646) | ○ |
| C-16 | Showメソッド（アクティブ） | E-01 (行729-733) | ○ |
| C-17 | Showメソッド（非アクティブ） | E-01 (行729-733) | ○ |
| C-18 | Hideメソッド | E-01 (行724-727) | ○ |
| C-19 | Disposeメソッド | E-01 (行650-668) | ○ |
| C-20 | SetTitleメソッド | E-01 (行795-798) | ○ |
| C-21 | SetTitle null引数 | E-01 (行795-798) | ○ |
| C-22 | SetIconメソッド | E-01 (行810-815) | ○ |
| C-23 | SetIcon null引数 | E-01 (行810-815) | ○ |
| C-24 | SetCursorメソッド | E-01 (行800-808) | ○ |
| C-25 | SetCursor null引数 | E-01 (行800-808) | ○ |
| C-26 | SetTopmostメソッド（true） | E-01 (行906-920) | ○ |
| C-27 | SetTopmostメソッド（false） | E-01 (行906-920) | ○ |
| C-28 | SetMinMaxSizeメソッド | E-01 (行553-557) | ○ |
| C-29 | PointToClientメソッド | E-01 (行690-695) | ○ |
| C-30 | PointToScreenメソッド | E-01 (行710-716) | ○ |
| C-31 | SetTransparencyLevelHint Transparent | E-01 (行373-406) | ○ |
| C-32 | SetTransparencyLevelHint Mica | E-01 (行457-468) | ○ |
| C-33 | SetSystemDecorations Full | E-01 (行897-904) | ○ |
| C-34 | SetSystemDecorations None | E-01 (行897-904) | ○ |
| C-35 | CanResizeメソッド（true） | E-01 (行870-877) | ○ |
| C-36 | CanResizeメソッド（false） | E-01 (行870-877) | ○ |
| C-37 | TryGetFeature IScreenImpl | E-01 (行333-371) | ○ |
| C-38 | TryGetFeature IStorageProvider | E-01 (行351-353) | ○ |
| C-39 | TryGetFeature 不明な型 | E-01 (行333-371) | ○ |
| C-40 | CreatePopupメソッド | E-01 (行648) | ○ |

### ClipboardImpl関連テストケース（C-41〜C-47）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-41 | ClearAsyncメソッド | E-02 (行45-52) | ○ |
| C-42 | SetDataAsyncメソッド | E-02 (行60-92) | ○ |
| C-43 | TryGetDataAsync正常取得 | E-02 (行94-122) | ○ |
| C-44 | TryGetDataAsync空クリップボード | E-02 (行108-112) | ○ |
| C-45 | IsCurrentOwnerAsync（オーナー） | E-02 (行124-135) | ○ |
| C-46 | IsCurrentOwnerAsync（非オーナー） | E-02 (行124-135) | ○ |
| C-47 | FlushAsyncメソッド | E-02 (行137-161) | ○ |

### CursorFactory関連テストケース（C-48〜C-52）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-48 | GetCursor Arrow | E-04 (行81-91) | ○ |
| C-49 | GetCursor Hand | E-04 (行81-91) | ○ |
| C-50 | GetCursor None | E-04 (行46) | ○ |
| C-51 | CreateCursorメソッド | E-04 (行93-96) | ○ |
| C-52 | CursorImpl Dispose | E-04 (行116-124) | ○ |

### TrayIconImpl関連テストケース（C-53〜C-60）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-53 | TrayIconImplコンストラクタ | E-05 (行39-48) | ○ |
| C-54 | SetIconメソッド | E-05 (行93-98) | ○ |
| C-55 | SetIcon null引数 | E-05 (行93-98) | ○ |
| C-56 | SetIsVisible（true） | E-05 (行101-104) | ○ |
| C-57 | SetIsVisible（false） | E-05 (行101-104) | ○ |
| C-58 | SetToolTipTextメソッド | E-05 (行107-111) | ○ |
| C-59 | SetToolTipText null引数 | E-05 (行107-111) | ○ |
| C-60 | Disposeメソッド | E-05 (行374-395) | ○ |

### ScreenImpl/WinScreen関連テストケース（C-61〜C-68）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-61 | GetScreenCountマルチモニター | E-06 (行15) | ○ |
| C-62 | GetScreenCountシングルモニター | E-06 (行15) | ○ |
| C-63 | ScreenFromPoint正常座標 | E-06 (行65-73) | ○ |
| C-64 | ScreenFromPoint画面外座標 | E-06 (行65-73) | ○ |
| C-65 | ScreenFromRectメソッド | E-06 (行76-88) | ○ |
| C-66 | WinScreen Refresh | E-07 (行23-51) | ○ |
| C-67 | GetScalingメソッド | E-07 (行104-126) | ○ |
| C-68 | GetScaling 96DPI | E-07 (行104-126) | ○ |

### KeyInterop関連テストケース（C-69〜C-77）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-69 | KeyFromVirtualKey文字キー | E-08 (行448-455) | ○ |
| C-70 | KeyFromVirtualKey修飾キー | E-08 (行395-440) | ○ |
| C-71 | KeyFromVirtualKey不明キー | E-08 (行448-455) | ○ |
| C-72 | VirtualKeyFromKeyメソッド | E-08 (行462-467) | ○ |
| C-73 | VirtualKeyFromKey None | E-08 (行462-467) | ○ |
| C-74 | PhysicalKeyFromVirtualKey | E-08 (行475-494) | ○ |
| C-75 | PhysicalKeyFromVirtualKey不明 | E-08 (行475-494) | ○ |
| C-76 | GetKeySymbol文字キー | E-08 (行502-530) | ○ |
| C-77 | GetKeySymbol非文字キー | E-08 (行502-530) | ○ |

### IconImpl関連テストケース（C-78〜C-84）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-78 | コンストラクタ（単一Stream） | E-09 (行21-24) | ○ |
| C-79 | コンストラクタ（大小Stream） | E-09 (行15-19) | ○ |
| C-80 | LoadSmallIcon標準 | E-09 (行56) | ○ |
| C-81 | LoadSmallIconスケーリング | E-09 (行56) | ○ |
| C-82 | LoadBigIconメソッド | E-09 (行58-72) | ○ |
| C-83 | Saveメソッド | E-09 (行80) | ○ |
| C-84 | Disposeメソッド | E-09 (行82-86) | ○ |

### PopupImpl関連テストケース（C-85〜C-90）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-85 | コンストラクタ | E-10 (行103-121) | ○ |
| C-86 | Showメソッド | E-10 (行21-26) | ○ |
| C-87 | MaxAutoSizeHint | E-10 (行30-46) | ○ |
| C-88 | SetWindowManagerAddShadowHint（true） | E-10 (行146-151) | ○ |
| C-89 | SetWindowManagerAddShadowHint（false） | E-10 (行146-151) | ○ |
| C-90 | TakeFocusメソッド | E-10 (行153-173) | ○ |

### DragSource/OleDropTarget関連テストケース（C-91〜C-98）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-91 | DoDragDropAsync開始 | E-11 (行12-34) | ○ |
| C-92 | DoDragDropAsync Copy | E-11 (行23) | ○ |
| C-93 | DoDragDropAsync Move | E-11 (行23) | ○ |
| C-94 | ConvertDropEffect DragToOle | E-12 (行28-38) | ○ |
| C-95 | ConvertDropEffect OleToDrag | E-12 (行40-50) | ○ |
| C-96 | ConvertDropEffect複合 | E-12 (行28-50) | ○ |
| C-97 | TryGetDataTransferFromOleDataObject | E-12 (行220-230) | ○ |
| C-98 | TryGetDataTransferFromOleDataObject null | E-12 (行222) | ○ |

### Win32StorageProvider関連テストケース（C-99〜C-107）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-99 | CanOpenプロパティ | E-13 (行26) | ○ |
| C-100 | CanSaveプロパティ | E-13 (行28) | ○ |
| C-101 | CanPickFolderプロパティ | E-13 (行30) | ○ |
| C-102 | OpenFilePickerAsync正常 | E-13 (行43-52) | ○ |
| C-103 | OpenFilePickerAsync複数選択 | E-13 (行43-52) | ○ |
| C-104 | OpenFilePickerAsyncキャンセル | E-13 (行180-183) | ○ |
| C-105 | SaveFilePickerAsync正常 | E-13 (行55-65) | ○ |
| C-106 | SaveFilePickerAsyncキャンセル | E-13 (行180-183) | ○ |
| C-107 | OpenFolderPickerAsync | E-13 (行32-40) | ○ |

### Win32PlatformSettings関連テストケース（C-108〜C-114）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-108 | GetTapSizeメソッド | E-14 (行17-24) | ○ |
| C-109 | GetDoubleTapSizeメソッド | E-14 (行26-33) | ○ |
| C-110 | GetDoubleTapTimeメソッド | E-14 (行35) | ○ |
| C-111 | GetColorValuesメソッド | E-14 (行37-79) | ○ |
| C-112 | GetColorValuesダークモード | E-14 (行70-77) | ○ |
| C-113 | GetColorValuesライトモード | E-14 (行70-77) | ○ |
| C-114 | GetColorValuesハイコントラスト | E-14 (行48-66) | ○ |

### Win32DispatcherImpl関連テストケース（C-115〜C-122）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-115 | コンストラクタ | E-15 (行15-19) | ○ |
| C-116 | CurrentThreadIsLoopThread UIスレッド | E-15 (行21) | ○ |
| C-117 | CurrentThreadIsLoopThreadバックグラウンド | E-15 (行21) | ○ |
| C-118 | Signalメソッド | E-15 (行25-32) | ○ |
| C-119 | UpdateTimerメソッド（設定） | E-15 (行41-56) | ○ |
| C-120 | UpdateTimerメソッド（キャンセル） | E-15 (行43-46) | ○ |
| C-121 | HasPendingInputプロパティ | E-15 (行60-101) | ○ |
| C-122 | Nowプロパティ | E-15 (行120) | ○ |

### FramebufferManager関連テストケース（C-123〜C-127）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-123 | コンストラクタ | E-16 (行21-26) | ○ |
| C-124 | Lockメソッド | E-16 (行28-63) | ○ |
| C-125 | Lockサイズ変更時 | E-16 (行40-46) | ○ |
| C-126 | Lock最小サイズ | E-16 (行38-39) | ○ |
| C-127 | Disposeメソッド | E-16 (行67-74) | ○ |

### Win32Platform関連テストケース（C-128〜C-134）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-128 | Initializeメソッド | E-03 (行82-138) | ○ |
| C-129 | CreateWindowメソッド | E-03 (行233-236) | ○ |
| C-130 | CreateTrayIconメソッド | E-03 (行228-231) | ○ |
| C-131 | LoadIcon（ファイル） | E-03 (行247-253) | ○ |
| C-132 | LoadIcon（ストリーム） | E-03 (行255-258) | ○ |
| C-133 | GetWindowsZOrderメソッド | E-03 (行327-353) | ○ |
| C-134 | WindowsVersionプロパティ | E-03 (行67) | ○ |

## 4) 不足情報（Unknown / Missing）
- **なし** - すべてのテストケースはソースコードの解析に基づいて生成されており、根拠が存在します。

ただし、以下の点についてはレビュー時に確認が必要です：
- Win32 API呼び出しを含むテストは、実際のWin32環境でのみ実行可能
- OLE/COMインターフェースを使用するテストは、COM初期化が必要
- マルチモニター環境のテストは、適切なテスト環境の準備が必要

## 5) リスクフラグ（レビュー観点）
- **0（低リスク）**: すべてのテストケースがソースコードから直接導出されている
- **1（中リスク）**: Win32環境依存のテストケースは、モック化またはスタブの検討が必要
  - クリップボード操作（C-41〜C-47）
  - ドラッグ&ドロップ（C-91〜C-98）
  - ファイルダイアログ（C-102〜C-107）

## 6) レビュアーチェックリスト（最小）
- [ ] 各テストケースの入力値と期待結果が明確に定義されているか確認
- [ ] Win32 API呼び出しのモック化戦略が検討されているか確認
- [ ] 境界値テストが適切にカバーされているか確認
- [ ] 異常系テストで適切な例外処理が検証されているか確認
- [ ] リソース解放（Dispose）のテストが網羅されているか確認
- [ ] スレッドセーフティに関するテストが必要かどうか検討
- [ ] マルチモニター環境でのスクリーン関連テストの実行方法を確認
