51a6e76e9e
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 28s
CI / security (pull_request) Successful in 21s
CI / quality (pull_request) Successful in 14s
CI / integration_tests (pull_request) Failing after 6m34s
CI / unit_tests (pull_request) Successful in 6m46s
CI / build (pull_request) Successful in 15s
CI / docker (pull_request) Successful in 8s
CI / coverage (pull_request) Successful in 5m8s
Three fixes targeting CI integration_tests failures (18 failures on e8aa5ac):
1. Merge duplicate *** Settings *** blocks in 14 robot files into single
blocks. Multiple Settings sections are non-standard RF practice and
may cause resource import failures in certain Robot Framework versions
or CI environments.
2. Replace bare 'python' with ${PYTHON} variable in all Run Process
calls (14 files). Noxfile now passes --variable PYTHON:<venv-path>
to robot so tests use the venv interpreter regardless of PATH. This
fixes '/usr/local/bin/python: No module named cleveragents' on CI.
3. Add comprehensive CI debug output in noxfile.py: file existence
checks for .resource files, PATH/Python resolution, fixture dir
checks, and RF version. This will diagnose any remaining resource
import issues.
Also: remove hardcoded '/app/src' sys.path.insert in
system_prompt_template_rendering.robot (not portable to CI), and
add trailing newline to common.resource.
All 204 tests pass locally (4 excluded: 2 slow, 2 discovery).
76 lines
2.7 KiB
Plaintext
76 lines
2.7 KiB
Plaintext
*** Settings ***
|
|
Documentation Test !next command with fresh context (writing_stage: null)
|
|
Library Process
|
|
Library OperatingSystem
|
|
Library String
|
|
Resource ${CURDIR}/v2_paths.resource
|
|
Suite Setup Setup Test Environment
|
|
Suite Teardown Cleanup Test Environment
|
|
|
|
*** Variables ***
|
|
${PYTHON} python
|
|
${CONFIG_FILE} ${CURDIR}/../examples/scientific_paper_writer.yaml
|
|
${CONTEXT_DIR} ${TEMPDIR}/initial_next_test_contexts
|
|
${TEST_ID} ${EMPTY}
|
|
|
|
|
|
*** Test Cases ***
|
|
Test Next Command With Null Writing Stage
|
|
[Documentation] Test that !next works when writing_stage is null (fresh context)
|
|
[Tags] integration bugfix commands slow
|
|
[Timeout] 1 minute
|
|
|
|
${ctx}= Set Variable initial_next_${TEST_ID}
|
|
|
|
# Run !next as the very first command with a fresh context
|
|
# This should advance from null (default intro) to discovery stage
|
|
Log Running !next command with fresh context...
|
|
${result}= Run Process ${PYTHON} -m cleveragents actor run
|
|
... -c ${CONFIG_FILE}
|
|
... --context ${ctx}
|
|
... --context-dir ${CONTEXT_DIR}
|
|
... --unsafe
|
|
... --allow-rxpy-in-run-mode
|
|
... -p !next discovery
|
|
... stderr=STDOUT
|
|
... timeout=20s
|
|
|
|
# Should not produce an error
|
|
Should Not Contain ${result.stdout} Error: Current stage 'None' is invalid
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
|
|
# Verify stage was updated in the context by checking !stage command
|
|
${result}= Run Process ${PYTHON} -m cleveragents actor run
|
|
... -c ${CONFIG_FILE}
|
|
... --context ${ctx}
|
|
... --context-dir ${CONTEXT_DIR}
|
|
... --unsafe
|
|
... --allow-rxpy-in-run-mode
|
|
... -p !stage
|
|
... stderr=STDOUT
|
|
... timeout=20s
|
|
|
|
Should Contain ${result.stdout} discovery
|
|
|
|
Log Test completed successfully
|
|
|
|
*** Keywords ***
|
|
Setup Test Environment
|
|
${timestamp}= Get Time epoch
|
|
Set Suite Variable ${TEST_ID} ${timestamp}
|
|
Create Directory ${CONTEXT_DIR}
|
|
Log Test environment setup complete with ID: ${TEST_ID}
|
|
|
|
Cleanup Test Environment
|
|
Run Keyword And Ignore Error Remove Directory ${CONTEXT_DIR} recursive=True
|
|
Log Test environment cleaned up
|
|
|
|
Should Contain Any
|
|
[Arguments] ${text} @{patterns}
|
|
[Documentation] Check if text contains at least one of the patterns
|
|
FOR ${pattern} IN @{patterns}
|
|
${status}= Run Keyword And Return Status Should Contain ${text} ${pattern} ignore_case=True
|
|
IF ${status} RETURN
|
|
END
|
|
Fail Text does not contain any of: @{patterns}
|