Files
cleveragents-core/robot/resource_cli.robot

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