Explorer
/proc/2012/task/2113/root/tmp/aa050_regression.py
← Zurück ↓ Download
import asyncio
from graphiti_core.utils.maintenance import node_operations as n
from graphiti_core.nodes import EpisodeType

class E:
    source=EpisodeType.text
    group_id='test'

async def run_case(label, data):
    old=n.extract_text_nodes
    async def fake(*args, **kwargs): return data
    n.extract_text_nodes=fake
    try:
        result=await n.extract_nodes(None,E(),[])
        print(label, 'PASS', [{'name':x.name,'summary':x.summary} for x in result])
    except Exception as exc:
        print(label, 'FAIL', type(exc).__name__, repr(exc))
    finally: n.extract_text_nodes=old

async def main():
    await run_case('with_summary',[{'name':'A','labels':['Entity'],'summary':'ok'}])
    await run_case('missing_summary',[{'name':'A','labels':['Entity']}])
    await run_case('null_summary',[{'name':'A','labels':['Entity'],'summary':None}])
asyncio.run(main())