Home / Class/ TestGlobSearch Class — langchain Architecture

TestGlobSearch Class — langchain Architecture

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

Entity Profile

Dependency Diagram

graph TD
  44d048e9_39db_934c_80d9_55e1bf38366c["TestGlobSearch"]
  882602ab_3eb6_c4cf_b94d_d1eb905b93f5["test_file_search.py"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|defined in| 882602ab_3eb6_c4cf_b94d_d1eb905b93f5
  8510e14d_9ebe_f812_a235_ee16b760e403["test_glob_basic_pattern()"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|method| 8510e14d_9ebe_f812_a235_ee16b760e403
  7589ec00_0741_44f0_14f6_d735f882bc1e["test_glob_recursive_pattern()"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|method| 7589ec00_0741_44f0_14f6_d735f882bc1e
  e2735d64_0279_3da3_95ac_bf01500b0926["test_glob_with_base_path()"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|method| e2735d64_0279_3da3_95ac_bf01500b0926
  296b098b_6f0c_be9e_895a_60f9222724d3["test_glob_no_matches()"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|method| 296b098b_6f0c_be9e_895a_60f9222724d3
  6ee37276_b4c9_b687_1ee0_2285ffbb0b13["test_glob_sorts_by_modified_time()"]
  44d048e9_39db_934c_80d9_55e1bf38366c -->|method| 6ee37276_b4c9_b687_1ee0_2285ffbb0b13

Relationship Graph

Source Code

libs/partners/anthropic/tests/unit_tests/middleware/test_file_search.py lines 24–169

class TestGlobSearch:
    """Test Glob file pattern matching."""

    def test_glob_basic_pattern(self) -> None:
        """Test basic glob pattern matching."""
        middleware = StateFileSearchMiddleware()

        test_state: AnthropicToolsState = {
            "messages": [],
            "text_editor_files": {
                "/src/main.py": {
                    "content": ["print('hello')"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/src/utils.py": {
                    "content": ["def helper(): pass"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/README.md": {
                    "content": ["# Project"],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
            },
        }

        # Call internal handler method directly
        result = middleware._handle_glob_search(
            pattern="*.py", path="/", state=test_state
        )

        assert isinstance(result, str)
        assert "/src/main.py" in result
        assert "/src/utils.py" in result
        assert "/README.md" not in result

    def test_glob_recursive_pattern(self) -> None:
        """Test recursive glob pattern matching."""
        middleware = StateFileSearchMiddleware()

        state: AnthropicToolsState = {
            "messages": [],
            "text_editor_files": {
                "/src/main.py": {
                    "content": [],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/src/utils/helper.py": {
                    "content": [],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
                "/tests/test_main.py": {
                    "content": [],
                    "created_at": "2025-01-01T00:00:00",
                    "modified_at": "2025-01-01T00:00:00",
                },
            },
        }

        result = middleware._handle_glob_search(
            pattern="**/*.py", path="/", state=state
        )

        assert isinstance(result, str)
        lines = result.split("\n")
        assert len(lines) == 3
        assert all(".py" in line for line in lines)

    def test_glob_with_base_path(self) -> None:
        """Test glob with base path restriction."""
        middleware = StateFileSearchMiddleware()

        state: AnthropicToolsState = {
            "messages": [],
            "text_editor_files": {
                "/src/main.py": {
                    "content": [],

Frequently Asked Questions

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

Analyze Your Own Codebase

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

Try Supermodel Free