Files
cleveragents-core/robot/output_rendering.robot

74 lines
3.3 KiB
Plaintext

*** Settings ***
Documentation End-to-end output rendering framework verification
Resource ${CURDIR}/common.resource
Suite Setup Setup Test Environment
Suite Teardown Cleanup Test Environment
*** Variables ***
${HELPER} ${CURDIR}/helper_output_rendering.py
*** Test Cases ***
Plain Format Renders Panel Without ANSI Codes
[Documentation] Verify plain format produces ASCII-only panel output
${result}= Run Process ${PYTHON} ${HELPER} plain-panel cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-plain-panel-ok
JSON Format Produces Valid JSON With Elements
[Documentation] Verify JSON format serialises elements as valid JSON
${result}= Run Process ${PYTHON} ${HELPER} json-output cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-json-output-ok
YAML Format Produces Valid YAML With Elements
[Documentation] Verify YAML format serialises elements as valid YAML
${result}= Run Process ${PYTHON} ${HELPER} yaml-output cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-yaml-output-ok
Table Format Renders Box Drawing Characters
[Documentation] Verify table format uses ASCII box-drawing for tables
${result}= Run Process ${PYTHON} ${HELPER} table-boxdraw cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-table-boxdraw-ok
Color Format Includes ANSI Codes
[Documentation] Verify color format includes ANSI escape codes
${result}= Run Process ${PYTHON} ${HELPER} color-ansi cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-color-ansi-ok
Error Envelope In JSON Mode
[Documentation] Verify error envelope structure in JSON mode
${result}= Run Process ${PYTHON} ${HELPER} json-error cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-json-error-ok
Format Output Backward Compatibility
[Documentation] Verify format_output still works for all formats
${result}= Run Process ${PYTHON} ${HELPER} backward-compat cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-backward-compat-ok
Materializer Selection Fallback
[Documentation] Verify materializer selection with fallback logic
${result}= Run Process ${PYTHON} ${HELPER} selection-fallback cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} output-rendering-selection-fallback-ok