Skip to content

test: trim implementation-coupled bats tests, strengthen statusline (DOT-45)#72

Merged
edwinhern merged 1 commit into
mainfrom
feature/dot-45-test-trims
Jul 1, 2026
Merged

test: trim implementation-coupled bats tests, strengthen statusline (DOT-45)#72
edwinhern merged 1 commit into
mainfrom
feature/dot-45-test-trims

Conversation

@edwinhern

Copy link
Copy Markdown
Owner

Summary

QA pass on the bats suite. Cut tests that assert implementation details (template source strings, already-removed config) where behavior is separately covered, and strengthened one weak conditional. Net -7 tests; 115 remaining all pass.

Removed (implementation-coupled / redundant)

  • claude-settings.bats — dropped absence checks for removed ANTHROPIC_DEFAULT_*_MODEL env vars (guard for gone code); kept the positive "model": "best" assertion.
  • log.bats — dropped empty-message-newline edge case (exercises echo, not our logic).
  • agent-instructions.bats, mise-config.bats — dropped assert_file_contains '{{ template ... }}' source-string checks; the render tests already prove the output.
  • darwin-install-scripts.bats — dropped 4 single injection source-string checks (graphify / ai-skills / ai-plugins / ai-mcp). Each lib's *_install_main call is asserted in the render tests, which fail if injection breaks.

Deliberately kept (QA agent flagged, verified NOT weak)

  • mise-config APM-for-work test — same assertion, different input (WORK_DATA), so it verifies APM is context-independent. Not a tautology.
  • darwin batched library check + both prelude checks — no behavior-level equivalent, so they stay.
  • vscode-settings — already asserts presence (L22-25) AND absence (L26-27); balanced, left as-is.

Strengthened

  • statusline.bats — positive test now asserts the 💪 max segment (not a bare max substring); minimal-payload test now refutes 💪 (with CLAUDE_CODE_EFFORT_LEVEL unset) so both branches of the effort conditional are covered.

Verification

  • mise test — 115/115 pass.
  • mise lint — clean.

Fixes DOT-45

Remove tests that assert template source strings or already-removed
config, where behavior is covered elsewhere:
- claude-settings: drop absence checks for removed ANTHROPIC_DEFAULT_*
  env vars; keep the positive model-alias assertion.
- log: drop empty-message-newline edge case (exercises echo, not our code).
- agent-instructions, mise-config: drop template-source-string checks;
  the render tests already prove the output.
- darwin-install-scripts: drop 4 single injection source-string checks
  for graphify/ai-skills/ai-plugins/ai-mcp; each libs install_main call
  is asserted in the render tests, which fail if injection breaks. Keep
  the batched library check and both prelude checks, which have no
  behavior-level equivalent.

Strengthen statusline effort coverage: assert the '💪 max' segment
instead of a bare 'max' substring, and refute the effort segment in the
minimal-payload test (with the env fallback unset) so both branches of
the conditional are covered.

Fixes DOT-45
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@edwinhern edwinhern merged commit 4a682b6 into main Jul 1, 2026
6 checks passed
@edwinhern edwinhern deleted the feature/dot-45-test-trims branch July 1, 2026 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant