Files
letta-server/tests/test_redis_client.py
Kian Jones f5c4ab50f4 chore: add ty + pre-commit hook and repeal even more ruff rules (#9504)
* auto fixes

* auto fix pt2 and transitive deps and undefined var checking locals()

* manual fixes (ignored or letta-code fixed)

* fix circular import

* remove all ignores, add FastAPI rules and Ruff rules

* add ty and precommit

* ruff stuff

* ty check fixes

* ty check fixes pt 2

* error on invalid
2026-02-24 10:55:11 -08:00

27 lines
921 B
Python

import pytest
from letta.data_sources.redis_client import get_redis_client
@pytest.mark.asyncio
async def test_redis_client():
test_values = {"LETTA_TEST_0": [1, 2, 3], "LETTA_TEST_1": ["apple", "pear", "banana"], "LETTA_TEST_2": ["{}", 3.2, "cat"]}
redis_client = await get_redis_client()
# Clear out keys
await redis_client.delete(*test_values.keys())
# Add items
for k, v in test_values.items():
assert await redis_client.sadd(k, *v) == 3
# Check Membership
for k, v in test_values.items():
assert await redis_client.smembers(k) == set(str(val) for val in v)
for k, v in test_values.items():
assert await redis_client.smismember(k, "invalid") == 0
assert await redis_client.smismember(k, v[0]) == 1
assert await redis_client.smismember(k, v[:2]) == [1, 1]
assert await redis_client.smismember(k, [*v[2:], "invalid"]) == [1, 0]