#!/bin/bash

echo "Testing Query Builder Input Parsing"
echo "===================================="

# Test 1: Multiple simple parameters
echo -e "\nTest 1: Multiple simple parameters"
echo "Input: status=active limit=10 page=2"
echo "status=active limit=10 page=2" | ./target/release/mrapids run listPets --build-query 2>/dev/null | grep -A3 "Command:"

# Test 2: Complex parameters with brackets
echo -e "\nTest 2: Complex parameters with brackets"
echo "Input: created[gte]=1704067200 created[lt]=1735689600 limit=50"
echo "created[gte]=1704067200 created[lt]=1735689600 limit=50" | ./target/release/mrapids run GetCustomers --build-query 2>/dev/null | grep -A5 "Command:"

# Test 3: Search query with other parameters
echo -e "\nTest 3: Search query with other parameters"
echo 'Input: query="status:'"'"'open'"'"'" limit=20 page=abc123'
echo 'query="status:'"'"'open'"'"'" limit=20 page=abc123' | ./target/release/mrapids run GetInvoicesSearch --build-query 2>/dev/null | grep -A4 "Command:"

# Test 4: Array parameters
echo -e "\nTest 4: Array parameters"
echo "Input: expand[]=customer expand[]=invoice status=open"
echo "expand[]=customer expand[]=invoice status=open" | ./target/release/mrapids run GetInvoices --build-query 2>/dev/null | grep -A4 "Command:"

echo -e "\n===================================="
echo "Test Complete!"