- Add ChatLayoutFixtureGenerator.cs (Skip-by-default) to regenerate
chat_21000006.json from the live portal.dat via LayoutImporter.ImportInfos
- Commit generated fixture chat_21000006.json (13 KB, 400 lines) — dat-free,
auto-copied to test output via existing *.json csproj glob
- Refactor FixtureLoader: extract shared LoadInfos(fileName) helper; add
LoadChat() + LoadChatInfos() mirroring the vitals pattern; LoadVitalsInfos()
now delegates to the shared loader (behavior unchanged, vitals tests green)
- Add ChatLayoutConformanceTests: ResolvesKnownElements + ResolvedTypes_MatchRetailRegistry
Confirmed resolved Types from live dat:
0x10000011 (transcript) → Type 12 (style-prototype, skipped by factory)
0x10000016 (input) → Type 12 (style-prototype, skipped by factory)
0x10000014 (menu) → Type 6
0x10000012 (scrollbar) → Type 11
0x10000019 (send) → Type 1
0x1000046F (max/min) → Type 1
Also fix pre-existing build break: UiChatInput.MoveCaret(int delta) was made
private in
|
||
|---|---|---|
| .. | ||
| Layout | ||
| ControlsIniTests.cs | ||
| MarkupDocumentTests.cs | ||
| UiChannelMenuTests.cs | ||
| UiChatInputTests.cs | ||
| UiChatScrollbarTests.cs | ||
| UiChatViewDatFontTests.cs | ||
| UiChatViewTests.cs | ||
| UiDatFontTests.cs | ||
| UiMeterTests.cs | ||
| UiNineSlicePanelTests.cs | ||
| UiRootInputTests.cs | ||
| UiScrollableTests.cs | ||