mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-05 02:41:56 +00:00
Merge 930b45bd57 into abc85c2651
This commit is contained in:
commit
f1af0d2a0d
2 changed files with 12 additions and 1 deletions
|
|
@ -66,7 +66,10 @@ def safe_json_structure(
|
|||
seen.remove(id(obj))
|
||||
return result
|
||||
elif isinstance(obj, set):
|
||||
result = sorted([_serialize(item, seen, depth + 1, key) for item in obj])
|
||||
result = sorted(
|
||||
[_serialize(item, seen, depth + 1, key) for item in obj],
|
||||
key=lambda item: json.dumps(item, sort_keys=True, default=str),
|
||||
)
|
||||
seen.remove(id(obj))
|
||||
return result
|
||||
elif isinstance(obj, BaseModel):
|
||||
|
|
|
|||
|
|
@ -64,6 +64,14 @@ def test_complex_types():
|
|||
assert result["tuple"] == [4, 5, 6] # Tuples are converted to lists
|
||||
|
||||
|
||||
def test_set_with_mixed_types():
|
||||
data = {"metadata": {"labels": {"beta", 7, None}}}
|
||||
|
||||
result = json.loads(safe_dumps(data))
|
||||
|
||||
assert result["metadata"]["labels"] == ["beta", 7, None]
|
||||
|
||||
|
||||
def test_unserializable_object():
|
||||
# Test handling of unserializable objects
|
||||
class TestClass:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue