fix: v0.9.3 plan usage instead of API-price cost; larger footer
- Footer shows "5h N%" when Claude sends rate_limits (Pro/Max); the dollar figure is an API-price estimate, so it is kept only for API-key billing. Sessions tooltip follows suit. Closes #40 - Bottom row: 40px, larger hints, bold 1rem usage meters with wider bars; narrow windows drop hints instead of clipping the meters. Closes #41 - bats setup unsets inherited DevDesk env so tests pass inside DevDesk Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WHRLCCdXYm41Qx5kNhehaP
This commit is contained in:
@@ -5,6 +5,7 @@ REPO=$(cd "$(dirname "$BATS_TEST_FILENAME")/.." && pwd)
|
||||
|
||||
setup() {
|
||||
TMP=$(mktemp -d /tmp/devdesk-test.XXXXXX) # short path: unix socket limit
|
||||
unset DEVDESK_REMOTE_CONTROL CLAUDE_ARGS DEVDESK_SESSION TMUX TMUX_PANE # when run from inside DevDesk
|
||||
export DEVDESK_ENV=/dev/null
|
||||
export DEVDESK_PROJECTS_ROOT="$TMP/projects"
|
||||
export DEVDESK_STATE_DIR="$TMP/state"
|
||||
@@ -200,6 +201,17 @@ claude_args() {
|
||||
[ "$(jq -r '.sessions[] | select(.name=="alpha") | .context.model' <<<"$output")" = Opus ]
|
||||
}
|
||||
|
||||
@test "statusline footer shows plan use on a subscription and dollars only on API billing" {
|
||||
sub='{"model":{"display_name":"Opus"},"context_window":{"used_percentage":10},
|
||||
"cost":{"total_cost_usd":1186.99},"rate_limits":{"five_hour":{"used_percentage":8.4}}}'
|
||||
run bash -c "echo '$sub' | '$REPO/libexec/devdesk-statusline'"
|
||||
[[ $output == *"5h 8%"* ]]
|
||||
[[ $output != *'$'* ]]
|
||||
api='{"model":{"display_name":"Opus"},"context_window":{"used_percentage":10},"cost":{"total_cost_usd":1.5}}'
|
||||
run bash -c "echo '$api' | '$REPO/libexec/devdesk-statusline'"
|
||||
[[ $output == *'$1.5'* ]]
|
||||
}
|
||||
|
||||
@test "hooks ignore Claude running in some other tmux server" {
|
||||
start_server
|
||||
other="$TMP/other.sock"
|
||||
|
||||
Reference in New Issue
Block a user