Home / Class/ TestGrepSearch Class — langchain Architecture

TestGrepSearch Class — langchain Architecture

Architecture documentation for the TestGrepSearch class in test_file_search.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  04253b83_b0c4_093c_88ed_3a4808eaf00b["TestGrepSearch"]
  882602ab_3eb6_c4cf_b94d_d1eb905b93f5["test_file_search.py"]
  04253b83_b0c4_093c_88ed_3a4808eaf00b -->|defined in| 882602ab_3eb6_c4cf_b94d_d1eb905b93f5
  beb48a91_ab19_4b0b_9d64_95f563265515["test_grep_files_with_matches_mode()"]
  04253b83_b0c4_093c_88ed_3a4808eaf00b -->|method| beb48a91_ab19_4b0b_9d64_95f563265515
  157ccbf0_5862_7227_3d1e_66528337c76e["test_grep_invalid_include_pattern()"]
  04253b83_b0c4_093c_88ed_3a4808eaf00b -->|method| 157ccbf0_5862_7227_3d1e_66528337c76e

Relationship Graph

Source Code

libs/partners/anthropic/tests/unit_tests/middleware/test_file_search.py lines 172–237

class TestGrepSearch:
    """Test Grep content search."""

    def test_grep_files_with_matches_mode(self) -> None:
        """Test grep with files_with_matches output mode."""
        middleware = StateFileSearchMiddleware()

        state: AnthropicToolsState = {
            "messages": [],
            "text_editor_files": {
                "/src/main.py": {
                    "content": ["def foo():", "    pass"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/src/utils.py": {
                    "content": ["def bar():", "    return None"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/README.md": {
                    "content": ["# Documentation", "No code here"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
            },
        }

        result = middleware._handle_grep_search(
            pattern=r"def \w+\(\):",
            path="/",
            include=None,
            output_mode="files_with_matches",
            state=state,
        )

        assert isinstance(result, str)
        assert "/src/main.py" in result
        assert "/src/utils.py" in result
        assert "/README.md" not in result
        # Should only have file paths, not line content

    def test_grep_invalid_include_pattern(self) -> None:
        """Return error when include glob is invalid."""
        middleware = StateFileSearchMiddleware()

        state: AnthropicToolsState = {
            "messages": [],
            "text_editor_files": {
                "/src/main.py": {
                    "content": ["def foo():"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                }
            },
        }

        result = middleware._handle_grep_search(
            pattern=r"def",
            path="/",
            include="*.{py",
            output_mode="files_with_matches",
            state=state,
        )

        assert result == "Invalid include pattern"

Frequently Asked Questions

What is the TestGrepSearch class?
TestGrepSearch is a class in the langchain codebase, defined in libs/partners/anthropic/tests/unit_tests/middleware/test_file_search.py.
Where is TestGrepSearch defined?
TestGrepSearch is defined in libs/partners/anthropic/tests/unit_tests/middleware/test_file_search.py at line 172.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free