fix(tools): preserve empty content in ReadResult.to_dict()
This commit is contained in:
@@ -67,10 +67,18 @@ class TestReadResult:
|
||||
def test_to_dict_omits_defaults(self):
|
||||
r = ReadResult()
|
||||
d = r.to_dict()
|
||||
assert "content" not in d # empty string omitted
|
||||
assert "error" not in d # None omitted
|
||||
assert "similar_files" not in d # empty list omitted
|
||||
|
||||
def test_to_dict_preserves_empty_content(self):
|
||||
"""Empty file should still have content key in the dict."""
|
||||
r = ReadResult(content="", total_lines=0, file_size=0)
|
||||
d = r.to_dict()
|
||||
assert "content" in d
|
||||
assert d["content"] == ""
|
||||
assert d["total_lines"] == 0
|
||||
assert d["file_size"] == 0
|
||||
|
||||
def test_to_dict_includes_values(self):
|
||||
r = ReadResult(content="hello", total_lines=10, file_size=50, truncated=True)
|
||||
d = r.to_dict()
|
||||
|
||||
@@ -107,7 +107,7 @@ class ReadResult:
|
||||
similar_files: List[str] = field(default_factory=list)
|
||||
|
||||
def to_dict(self) -> dict:
|
||||
return {k: v for k, v in self.__dict__.items() if v is not None and v != [] and v != ""}
|
||||
return {k: v for k, v in self.__dict__.items() if v is not None and v != []}
|
||||
|
||||
|
||||
@dataclass
|
||||
|
||||
Reference in New Issue
Block a user