• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hpi-swa-teaching / TabletopUI / 26471631242
73%
develop: 70%

Build:
Build:
LAST BUILD BRANCH: ci_repair
DEFAULT BRANCH: develop
Ran 26 May 2026 07:56PM UTC
Jobs 2
Files 988
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 May 2026 07:53PM UTC coverage: 73.439% (+1.6%) from 71.824%
26471631242

push

github

IvayloSta
Centralize state schema in TTGameStateKeys and make get/loadState JSON-safe

Introduce TTGameStateKeys in TabletopUI-Core as a class-side vocabulary
holding every state-serialization key as a named accessor. Route all
getState/loadState: methods across the state tree through it instead of
inline symbol literals, and finish the previously half-done loadState
restoration for fight and initiative contexts.

Production
- New TTGameStateKeys class with 17 schema-key accessors
- TTCharacter, TTActionLog, TTToken, TTMap, TTInputField, TTCommandParser,
  TTDefaultContext, TTFightContext, TTInitiativeContext all route
  get/loadState: through TTGameStateKeys instead of inline literals
- TTFightContext>>getState emits keyFightingPlayerNames as an Array of
  String (was emitting raw TTCharacter Morph objects under #fightingPlayers,
  which could not survive JSON serialization)
- TTInitiativeContext>>getState keys the rolls Dictionary by character
  name String instead of raw TTCharacter, for the same JSON-safety reason
- TTCommandParser>>loadState: restores fight order and initiative rolls
  (previously flagged as 'doesn't load real state'); characters are
  reconstructed from names with a default #player role - documented in
  the method's flag as a known follow-up

Tests
- State-related tests now reference TTGameStateKeys; previously commented
  or no-op bodies replaced with real value and round-trip assertions
- TTContextTestBase>>test01GetState renamed to assertContextHasGameStateKey
  (a Custom Assertion per Swt_05 p.59/p.85) so SUnit no longer attempts to
  run an abstract base method that fails with MessageNotUnderstood: #CUT
- TTDefaultContextTest>>test04GetState restored
- TTFightContextTest, TTInitiativeContextTest, TTCharacterTest,
  TTActionLogTest, TTTokenTest, TTMapTest all updated to call the helper
  or assert real values
- TTMapTest>>mapInstantiationDict (115-line literal fixture, Long-Setup
  smell from Swt_05 p.119) removed; the rewritten test... (continued)

96 of 137 new or added lines in 31 files covered. (70.07%)

2 existing lines in 2 files now uncovered.

4305 of 5862 relevant lines covered (73.44%)

2.89 hits per line

Uncovered Changes

Lines Coverage ∆ File
17
0.0
0.0% packages/TabletopUI-CommandProcessing.package/TTCommandParser.class/instance/loadState..st
4
0.0
packages/TabletopUI-Core.package/TTGameStateKeys.class/class/keyActionLog.st
4
0.0
packages/TabletopUI-Core.package/TTGameStateKeys.class/class/keyContext.st
4
0.0
packages/TabletopUI-Core.package/TTGameStateKeys.class/class/keyInputField.st
4
0.0
packages/TabletopUI-Core.package/TTGameStateKeys.class/class/keyMap.st
4
0.0
packages/TabletopUI-Core.package/TTGameStateKeys.class/class/keyParser.st
2
0.0
0.0% packages/TabletopUI-CommandProcessing.package/TTCommandParser.class/instance/getState.st
2
0.0
0.0% packages/TabletopUI-CommandProcessing.package/TTInputField.class/instance/getState.st

Coverage Regressions

Lines Coverage ∆ File
1
0.0
0.0% packages/TabletopUI-CommandProcessing.package/TTCommandParser.class/instance/getState.st
1
0.0
0.0% packages/TabletopUI-CommandProcessing.package/TTInputField.class/instance/getState.st
Jobs
ID Job ID Ran Files Coverage
1 26471631242.1 26 May 2026 07:56PM UTC 991
73.13
2 26471631242.2 26 May 2026 07:57PM UTC 991
73.13
Source Files on build 26471631242
  • Tree
  • List 988
  • Changed 19
  • Source Changed 15
  • Coverage Changed 14
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 3cc14ae7 on github
  • Prev Build on ci_repair (#26228991235)
  • Next Build on ci_repair (#26472226495)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc