test(odetovibe): close extract domain test gaps#65
Conversation
…externalTypeKeys, multi-error, validateYaml orchestration) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Reviewed. Checked: (1) multiple-error test correctly uses both unknown types against the same index — exactly 2 errors, no false extras from dispatch; (2) externalTypeKeys test constructs the index correctly to match how parseYaml populates both maps simultaneously; (3) validateYaml orchestration test count of 8 is correct (2 subjectTypes + 3 plainTypes + 1 command + 1 abstractTemplate + 1 strategy, no concreteTemplates); (4) all three parseYaml error paths (ENOENT, malformed, empty) are expected to throw for different reasons — all verified; (5) no source changes. |
…test Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Follow-up commit: added |
…ndValidator Two command keys that normalize to the same file name (e.g. "AccessBuildingCommand" and "AccessBuilding" both → "access-building.ts") would silently collide at emit time. The new rule detects this at validate time, before any files are written. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Follow-up commit: added |
Summary
key: [unclosed), and empty file (yaml.load returns null/undefined); all expected to throwimportsfield at parse level: verifiesparseYamlcorrectly captures theimportsmap from YAML and defaults to{}when absentexternalTypeKeysvalidation compatibility: proves that commands whosebaseType/objectType/returnType/subjectUnionreference external types pass*-refvalidation — external types land insubjectTypes/plainTypesat parse time sofindDomainType()finds themCommandValidatoraccumulates all rule violations without short-circuiting (bothbaseType-refandobjectType-refreported for one command)validateYamlorchestration: exercises theabstractTemplates(line 190) andstrategies(line 196) loops — the two previously uncovered loops invalidateYamlTest plan
pnpm --filter odetovibe test)🤖 Generated with Claude Code