3eecb79003
CI / lint (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 46s
CI / typecheck (pull_request) Successful in 56s
CI / security (pull_request) Successful in 56s
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 29s
CI / e2e_tests (pull_request) Successful in 2m7s
CI / unit_tests (pull_request) Successful in 3m8s
CI / docker (pull_request) Successful in 9s
CI / integration_tests (pull_request) Successful in 3m57s
CI / coverage (pull_request) Successful in 7m48s
CI / benchmark-regression (pull_request) Successful in 40m48s
TDD expected-fail tests proving bug #822 exists: CheckpointService.rollback_to_checkpoint() returns a successful RollbackResult but does not execute git reset --hard. Files modified after the checkpoint remain unchanged after rollback. Also fixes Robot Framework timeout robustness across the entire test suite: all Run Process calls now use on_timeout=kill (prevents SIGTERM-induced -15 exit codes under CI load) and timeouts increased to 120s (prevents premature kills during heavy parallel execution). ISSUES CLOSED: #839
53 lines
2.9 KiB
Plaintext
53 lines
2.9 KiB
Plaintext
*** Settings ***
|
|
Documentation E2E integration tests for plan persistence: full lifecycle,
|
|
... restart persistence, and concurrent CLI access patterns.
|
|
... Covers subtask 5 of A5.tests.
|
|
Resource ${CURDIR}/common.resource
|
|
Suite Setup Setup Test Environment
|
|
Suite Teardown Cleanup Test Environment
|
|
|
|
*** Variables ***
|
|
${HELPER_SCRIPT} robot/helper_plan_persistence_e2e.py
|
|
|
|
*** Test Cases ***
|
|
Plan Full Lifecycle Persistence
|
|
[Documentation] Create action, create plan, transition through all phases,
|
|
... reach applied terminal state, and verify persistence at each step.
|
|
[Tags] database plan lifecycle persistence
|
|
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} full-lifecycle cwd=${WORKSPACE} timeout=120s on_timeout=kill
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} full-lifecycle-ok
|
|
|
|
Plan Restart Persistence
|
|
[Documentation] Create a plan, close the database, reopen it, and verify
|
|
... all plan fields survive the reconnection.
|
|
[Tags] database plan restart persistence
|
|
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} restart-persistence cwd=${WORKSPACE} timeout=120s on_timeout=kill
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} restart-persistence-ok
|
|
|
|
Plan Concurrent Session Access
|
|
[Documentation] Open two independent sessions against the same database
|
|
... and verify that plans created in one session are visible
|
|
... in the other after commit.
|
|
[Tags] database plan concurrent persistence
|
|
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} concurrent-access cwd=${WORKSPACE} timeout=120s on_timeout=kill
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} concurrent-access-ok
|
|
|
|
Action CRUD Persistence E2E
|
|
[Documentation] Create, read, update, and delete an action via repository,
|
|
... verifying persistence at each step.
|
|
[Tags] database action crud persistence
|
|
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} action-crud cwd=${WORKSPACE} timeout=120s on_timeout=kill
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} action-crud-ok
|
|
|
|
Plan Tree Hierarchy Persistence E2E
|
|
[Documentation] Create a parent plan and child plan, verify hierarchy
|
|
... links are persisted correctly including root_plan_id.
|
|
[Tags] database plan hierarchy persistence
|
|
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} plan-tree cwd=${WORKSPACE} timeout=120s on_timeout=kill
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-tree-ok
|