class Tryouts::TestBatch
def execute_single_test(test_case, before_test_hook = nil)
def execute_single_test(test_case, before_test_hook = nil) before_test_hook&.call(test_case) # Capture output during test execution result = nil captured_output = capture_output do result = case @options[:shared_context] when true execute_with_shared_context(test_case) when false, nil execute_with_fresh_context(test_case) else raise 'Invalid execution context configuration' end end # Add captured output to the result result[:captured_output] = captured_output if captured_output && !captured_output.empty? process_test_result(result) yield(test_case) if block_given? result end