Files
freemo d990fc1b41
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 15s
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 19s
CI / typecheck (pull_request) Successful in 37s
CI / security (pull_request) Successful in 37s
CI / unit_tests (pull_request) Successful in 2m30s
CI / integration_tests (pull_request) Successful in 2m57s
CI / docker (pull_request) Successful in 38s
CI / coverage (pull_request) Successful in 4m22s
CI / lint (push) Successful in 12s
CI / build (push) Successful in 15s
CI / quality (push) Successful in 16s
CI / security (push) Successful in 33s
CI / typecheck (push) Successful in 33s
CI / benchmark-regression (push) Has been skipped
CI / unit_tests (push) Successful in 2m8s
CI / docker (push) Successful in 39s
CI / integration_tests (push) Successful in 3m9s
CI / coverage (push) Successful in 4m35s
CI / benchmark-publish (push) Successful in 15m41s
CI / benchmark-regression (pull_request) Successful in 28m58s
feat(uko): add analyzer plugin framework and initial domain analyzers
Implemented the analyzer plugin framework with AnalyzerProtocol,
AnalyzerRegistry for registration/discovery by file extension,
PythonAnalyzer (AST-based extraction of modules, classes, functions,
imports, docstrings), and MarkdownAnalyzer (section, code block, and
link extraction). Both analyzers produce well-formed UKO triples with
proper URI schemes.

ISSUES CLOSED: #551
2026-03-05 19:20:39 +00:00

66 lines
2.9 KiB
Plaintext

*** Settings ***
Documentation Smoke tests for UKO Analyzer Plugin Framework
Resource ${CURDIR}/common.resource
Suite Setup Setup Test Environment
Suite Teardown Cleanup Test Environment
*** Variables ***
${HELPER} ${CURDIR}/helper_uko_analyzers.py
*** Test Cases ***
AnalyzerProtocol Compliance For PythonAnalyzer
[Documentation] Verify PythonAnalyzer satisfies AnalyzerProtocol
${result}= Run Process ${PYTHON} ${HELPER} python-protocol cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-python-protocol-ok
AnalyzerProtocol Compliance For MarkdownAnalyzer
[Documentation] Verify MarkdownAnalyzer satisfies AnalyzerProtocol
${result}= Run Process ${PYTHON} ${HELPER} markdown-protocol cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-markdown-protocol-ok
AnalyzerRegistry Registration And Lookup
[Documentation] Verify registry registers and looks up analyzers
${result}= Run Process ${PYTHON} ${HELPER} registry cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-registry-ok
PythonAnalyzer Produces Triples
[Documentation] Verify PythonAnalyzer produces valid UKO triples from Python source
${result}= Run Process ${PYTHON} ${HELPER} python-analyze cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-python-analyze-ok
MarkdownAnalyzer Produces Triples
[Documentation] Verify MarkdownAnalyzer produces valid UKO triples from Markdown
${result}= Run Process ${PYTHON} ${HELPER} markdown-analyze cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-markdown-analyze-ok
UKOTriple Construction
[Documentation] Verify UKOTriple model construction and validation
${result}= Run Process ${PYTHON} ${HELPER} triple-model cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-triple-model-ok
Malformed Input Handling
[Documentation] Verify graceful handling of malformed inputs
${result}= Run Process ${PYTHON} ${HELPER} malformed cwd=${WORKSPACE}
Log ${result.stdout}
Log ${result.stderr}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} uko-malformed-ok