#!/bin/bash echo "๐Ÿงช Simple rawk v2.0.0 Test Runner" echo "==================================" # Test 1: Basic functionality echo "" echo "๐Ÿ“‹ Test 1: Basic Functionality" echo "Running: test_basic.rawk" output=$(echo "test input" | awk -f ../rawk_block_based.awk test_basic.rawk | awk -f - 2>&1) exit_code=$? echo "Exit code: $exit_code" echo "Output:" echo "$output" echo "" # Test 2: Simple standard library echo "๐Ÿ“š Test 2: Simple Standard Library" echo "Running: simple_stdlib_test.rawk" output=$(echo "test input" | awk -f ../rawk_block_based.awk simple_stdlib_test.rawk | awk -f - 2>&1) exit_code=$? echo "Exit code: $exit_code" echo "Output:" echo "$output" echo "" # Test 3: Standard library (the problematic one) echo "๐Ÿ”ง Test 3: Full Standard Library" echo "Running: test_stdlib.rawk" output=$(echo "test input" | awk -f ../rawk_block_based.awk test_stdlib.rawk | awk -f - 2>&1) exit_code=$? echo "Exit code: $exit_code" echo "Output:" echo "$output" echo "" # Test 4: Error handling echo "โŒ Test 4: Error Handling" echo "Running: test_errors.rawk (should fail)" output=$(awk -f ../rawk_block_based.awk test_errors.rawk 2>&1) exit_code=$? echo "Exit code: $exit_code" echo "Output:" echo "$output" echo "" echo "==================================" echo "Test runner completed!"