40 lines
1.8 KiB
Plaintext
40 lines
1.8 KiB
Plaintext
*** Settings ***
|
|
Library Process
|
|
Library OperatingSystem
|
|
Library String
|
|
Suite Setup Set Environment Variables
|
|
Suite Teardown Clean Up Test Database
|
|
Test Tags resource_cli
|
|
|
|
*** Variables ***
|
|
${PYTHON} python
|
|
${DB_URL} sqlite:///build/test_resource_cli.db
|
|
|
|
*** Keywords ***
|
|
Set Environment Variables
|
|
Set Environment Variable CLEVERAGENTS_DATABASE_URL ${DB_URL}
|
|
Set Environment Variable CLEVERAGENTS_TESTING_USE_MOCK_AI true
|
|
${script}= Set Variable from cleveragents.infrastructure.database.models import Base; from sqlalchemy import create_engine; e \= create_engine("${DB_URL}"); Base.metadata.create_all(e)
|
|
Run Process ${PYTHON} -c ${script}
|
|
... env:PYTHONPATH=src timeout=30s
|
|
|
|
Clean Up Test Database
|
|
Remove File build/test_resource_cli.db
|
|
|
|
*** Test Cases ***
|
|
Resource Type List Returns Output
|
|
[Documentation] Verify resource type list command runs without error
|
|
${result}= Run Process ${PYTHON} -m cleveragents resource type list
|
|
... env:PYTHONPATH=src env:CLEVERAGENTS_DATABASE_URL=${DB_URL} env:CLEVERAGENTS_TESTING_USE_MOCK_AI=true
|
|
... timeout=30s stderr=STDOUT
|
|
Log ${result.stdout}
|
|
Should Be True ${result.rc} == 0 or ${result.rc} == 1
|
|
|
|
Resource Show Non Existent Returns Error
|
|
[Documentation] Verify resource show for non-existent resource fails gracefully
|
|
${result}= Run Process ${PYTHON} -m cleveragents resource show nonexistent
|
|
... env:PYTHONPATH=src env:CLEVERAGENTS_DATABASE_URL=${DB_URL} env:CLEVERAGENTS_TESTING_USE_MOCK_AI=true
|
|
... timeout=30s stderr=STDOUT
|
|
Log ${result.stdout}
|
|
Should Not Be Equal As Integers ${result.rc} 0
|