*** Settings ***
Documentation     Comprehensive integration test for cleveragents --version
Library           Process
Library           OperatingSystem
Library           String
Resource    ${CURDIR}/v2_paths.resource

*** Variables ***
${PYTHON}              python
${EXPECTED_VERSION}    0.1.0

*** Test Cases ***
Version Output Format Is Correct
    [Documentation]    Test that version output follows the expected format
    ${result} =    Run Process    ${PYTHON}    -m    cleveragents    --version    timeout=120s    on_timeout=kill
    Should Be Equal As Integers    ${result.rc}    0
    Should Match Regexp    ${result.stdout}    CleverAgents\\s+\\d+\\.\\d+\\.\\d+

Version Number Matches Expected
    [Documentation]    Test that version number matches expected value
    ${result} =    Run Process    ${PYTHON}    -m    cleveragents    --version    timeout=120s    on_timeout=kill
    Should Be Equal As Integers    ${result.rc}    0
    Should Contain    ${result.stdout}    1.0.0


Version Command Completes Successfully
    [Documentation]    Test that version command completes successfully
    ${result} =    Run Process    ${PYTHON}    -m    cleveragents    --version    timeout=120s    on_timeout=kill
    Should Be Equal As Integers    ${result.rc}    0

Version Works With Module Invocation
    [Documentation]    Test that version works when invoked as module
    ${result} =    Run Process    ${PYTHON}    -m    cleveragents    --version
    Should Be Equal As Integers    ${result.rc}    0
    Should Not Be Empty    ${result.stdout}
    Should Be Empty    ${result.stderr}
