#!/usr/bin/env bash
# mock curl for tests: reads JSON body from stdin and returns canned Railway GraphQL responses
body=$(cat)
case "${MOCK_MODE:-ok}" in fail) echo '{"errors":[{"message":"Not Authorized"}]}'; exit 22;; esac
if grep -q 'projects' <<<"$body"; then
  echo '{"data":{"projects":{"edges":[{"node":{"id":"p1","name":"demo","services":{"edges":[{"node":{"id":"s1","name":"api"}}]},"environments":{"edges":[{"node":{"id":"e1","name":"production"}}]}}}]}}}'
else
  if [ "${MOCK_MODE}" = clean ]; then echo '{"data":{"variables":{"PORT":"8080","NODE_ENV":"production"}}}'
  else echo '{"data":{"variables":{"PORT":"8080","OPENAI_API_KEY":"sk-MOCKSECRETVALUE","DATABASE_URL":"postgres://u:MOCKSECRETVALUE@h/db","AWS_SECRET_ACCESS_KEY":"MOCKSECRETVALUE"}}}'; fi
fi
