tree-sitter-analyzer 0.4.0__tar.gz → 0.6.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of tree-sitter-analyzer might be problematic. Click here for more details.

Files changed (101) hide show
  1. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/CHANGELOG.md +150 -0
  2. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/CODE_STYLE_GUIDE.md +13 -12
  3. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/DEPLOYMENT_GUIDE.md +278 -278
  4. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/PKG-INFO +10 -10
  5. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/README.md +8 -8
  6. tree_sitter_analyzer-0.6.1/README_ja.md +214 -0
  7. tree_sitter_analyzer-0.6.1/README_zh.md +214 -0
  8. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/build_standalone.py +136 -136
  9. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/BigService.java +102 -103
  10. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/BigService.json +3 -3
  11. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/BigService.summary.json +3 -3
  12. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/Sample.java +36 -36
  13. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/calculate_token_comparison.py +76 -70
  14. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/pyproject.toml +2 -2
  15. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/__init__.py +1 -3
  16. tree_sitter_analyzer-0.6.1/tree_sitter_analyzer/__main__.py +11 -0
  17. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/default_command.py +1 -1
  18. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/query_command.py +5 -5
  19. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/table_command.py +3 -3
  20. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/info_commands.py +14 -13
  21. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli_main.py +49 -30
  22. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/analysis_engine.py +21 -21
  23. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/cache_service.py +31 -31
  24. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/query.py +502 -502
  25. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/encoding_utils.py +5 -2
  26. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/file_handler.py +3 -3
  27. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/formatters/base_formatter.py +18 -18
  28. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/formatters/formatter_factory.py +15 -15
  29. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/formatters/java_formatter.py +291 -291
  30. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/formatters/python_formatter.py +259 -259
  31. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/interfaces/cli_adapter.py +32 -32
  32. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/interfaces/mcp_adapter.py +2 -2
  33. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/language_detector.py +398 -398
  34. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/language_loader.py +224 -224
  35. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/languages/java_plugin.py +1174 -1174
  36. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/languages/python_plugin.py +10 -2
  37. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/resources/project_stats_resource.py +555 -555
  38. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/models.py +470 -470
  39. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/output_manager.py +8 -10
  40. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/plugins/base.py +33 -0
  41. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/queries/java.py +78 -78
  42. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/queries/javascript.py +7 -7
  43. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/queries/python.py +18 -18
  44. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/queries/typescript.py +12 -12
  45. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/query_loader.py +13 -13
  46. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/table_formatter.py +20 -18
  47. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/utils.py +1 -1
  48. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/upload_to_pypi.py +13 -13
  49. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/uv.lock +135 -108
  50. tree_sitter_analyzer-0.6.1/verify_release.py +178 -0
  51. tree_sitter_analyzer-0.4.0/tree_sitter_analyzer/__main__.py +0 -11
  52. tree_sitter_analyzer-0.4.0/tree_sitter_analyzer/java_analyzer.py +0 -187
  53. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/.gitignore +0 -0
  54. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/.pre-commit-config.yaml +0 -0
  55. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/AI_COLLABORATION_GUIDE.md +0 -0
  56. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/CONTRIBUTING.md +0 -0
  57. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/LLM_CODING_GUIDELINES.md +0 -0
  58. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/MCP_SETUP_DEVELOPERS.md +0 -0
  59. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/MCP_SETUP_USERS.md +0 -0
  60. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/check_quality.py +0 -0
  61. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/docs/api.md +0 -0
  62. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/JavaDocTest.java +0 -0
  63. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/MultiClass.java +0 -0
  64. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/examples/sample.py +0 -0
  65. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/llm_code_checker.py +0 -0
  66. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/pytest.ini +0 -0
  67. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/api.py +0 -0
  68. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/__init__.py +0 -0
  69. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/__main__.py +0 -0
  70. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/__init__.py +0 -0
  71. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/advanced_command.py +0 -0
  72. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/base_command.py +0 -0
  73. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/partial_read_command.py +0 -0
  74. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/structure_command.py +0 -0
  75. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/cli/commands/summary_command.py +0 -0
  76. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/__init__.py +0 -0
  77. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/engine.py +0 -0
  78. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/core/parser.py +0 -0
  79. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/exceptions.py +0 -0
  80. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/formatters/__init__.py +0 -0
  81. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/interfaces/__init__.py +0 -0
  82. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/interfaces/cli.py +0 -0
  83. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/interfaces/mcp_server.py +0 -0
  84. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/languages/__init__.py +0 -0
  85. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/languages/javascript_plugin.py +0 -0
  86. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/__init__.py +0 -0
  87. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/resources/__init__.py +0 -0
  88. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/resources/code_file_resource.py +0 -0
  89. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/server.py +0 -0
  90. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/__init__.py +0 -0
  91. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool.py +0 -0
  92. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/analyze_scale_tool_cli_compatible.py +0 -0
  93. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/base_tool.py +0 -0
  94. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/read_partial_tool.py +0 -0
  95. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/table_format_tool.py +0 -0
  96. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/tools/universal_analyze_tool.py +0 -0
  97. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/utils/__init__.py +0 -0
  98. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/mcp/utils/error_handler.py +0 -0
  99. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/plugins/__init__.py +0 -0
  100. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/plugins/manager.py +0 -0
  101. {tree_sitter_analyzer-0.4.0 → tree_sitter_analyzer-0.6.1}/tree_sitter_analyzer/queries/__init__.py +0 -0
@@ -5,6 +5,156 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.6.1] - 2025-08-04
9
+
10
+ ### 🔧 Fixed
11
+
12
+ #### Documentation
13
+ - **Fixed**: Updated all GitHub URLs from `aisheng-yu` to `aimasteracc` in README files
14
+ - **Fixed**: Corrected clone URLs in installation instructions
15
+ - **Fixed**: Updated documentation links to point to correct repository
16
+ - **Fixed**: Fixed contribution guide links in all language versions
17
+
18
+ #### Files Updated
19
+ - `README.md` - English documentation
20
+ - `README_zh.md` - Chinese documentation
21
+ - `README_ja.md` - Japanese documentation
22
+
23
+ ### 📦 Package Updates
24
+
25
+ - **Updated**: Package metadata now includes correct repository URLs
26
+ - **Updated**: All documentation links point to the correct GitHub repository
27
+
28
+ ---
29
+
30
+ ## [0.6.0] - 2025-08-03
31
+
32
+ ### 💥 Breaking Changes - Legacy Code Removal
33
+
34
+ This release removes deprecated legacy code to streamline the codebase and improve maintainability.
35
+
36
+ ### 🗑️ Removed
37
+
38
+ #### Legacy Components
39
+ - **BREAKING**: Removed `java_analyzer.py` module and `CodeAnalyzer` class
40
+ - **BREAKING**: Removed legacy test files (`test_java_analyzer.py`, `test_java_analyzer_extended.py`)
41
+ - **BREAKING**: Removed `CodeAnalyzer` from public API exports
42
+
43
+ #### Migration Guide
44
+ Users previously using the legacy `CodeAnalyzer` should migrate to the new plugin system:
45
+
46
+ **Old Code (No longer works):**
47
+ ```python
48
+ from tree_sitter_analyzer import CodeAnalyzer
49
+ analyzer = CodeAnalyzer()
50
+ result = analyzer.analyze_file("file.java")
51
+ ```
52
+
53
+ **New Code:**
54
+ ```python
55
+ from tree_sitter_analyzer.core.analysis_engine import get_analysis_engine
56
+ engine = get_analysis_engine()
57
+ result = await engine.analyze_file("file.java")
58
+ ```
59
+
60
+ **Or use the CLI:**
61
+ ```bash
62
+ tree-sitter-analyzer file.java --advanced
63
+ ```
64
+
65
+ ### 🔄 Changed
66
+
67
+ #### Test Suite
68
+ - **Updated**: Test count reduced from 1216 to 1126 tests (removed 29 legacy tests)
69
+ - **Updated**: All README files updated with new test count
70
+ - **Updated**: Documentation examples updated to use new plugin system
71
+
72
+ #### Documentation
73
+ - **Updated**: `CODE_STYLE_GUIDE.md` examples updated to use new plugin system
74
+ - **Updated**: All language-specific README files updated
75
+
76
+
77
+
78
+ ### ✅ Benefits
79
+
80
+ - **Cleaner Codebase**: Removed duplicate functionality and legacy code
81
+ - **Reduced Maintenance**: No longer maintaining two separate analysis systems
82
+ - **Unified Experience**: All users now use the modern plugin system
83
+ - **Better Performance**: New plugin system is more efficient and feature-rich
84
+
85
+ ---
86
+
87
+ ## [0.5.0] - 2025-08-03
88
+
89
+ ### 🌐 Complete Internationalization Release
90
+
91
+ This release celebrates the completion of comprehensive internationalization support, making Tree-sitter Analyzer accessible to a global audience.
92
+
93
+ ### ✨ Added
94
+
95
+ #### 🌍 Internationalization Support
96
+ - **NEW**: Complete internationalization framework implementation
97
+ - **NEW**: Chinese (Simplified) README ([README_zh.md](README_zh.md))
98
+ - **NEW**: Japanese README ([README_ja.md](README_ja.md))
99
+ - **NEW**: Full URL links for PyPI compatibility and better accessibility
100
+ - **NEW**: Multi-language documentation support structure
101
+
102
+ #### 📚 Documentation Enhancements
103
+ - **NEW**: Comprehensive language-specific documentation
104
+ - **NEW**: International user guides and examples
105
+ - **NEW**: Cross-language code examples and usage patterns
106
+ - **NEW**: Global accessibility improvements
107
+
108
+ ### 🔄 Changed
109
+
110
+ #### 🌐 Language Standardization
111
+ - **ENHANCED**: All Japanese and Chinese text translated to English for consistency
112
+ - **ENHANCED**: CLI messages, error messages, and help text now in English
113
+ - **ENHANCED**: Query descriptions and comments translated to English
114
+ - **ENHANCED**: Code examples and documentation translated to English
115
+ - **ENHANCED**: Improved code quality and consistency across all modules
116
+
117
+ #### 🔗 Link Improvements
118
+ - **ENHANCED**: Relative links converted to absolute URLs for PyPI compatibility
119
+ - **ENHANCED**: Better cross-platform documentation accessibility
120
+ - **ENHANCED**: Improved navigation between different language versions
121
+
122
+ ### 🔧 Fixed
123
+
124
+ #### 🐛 Quality & Compatibility Issues
125
+ - **FIXED**: Multiple test failures and compatibility issues resolved
126
+ - **FIXED**: Plugin architecture improvements and stability enhancements
127
+ - **FIXED**: Code formatting and linting issues across the codebase
128
+ - **FIXED**: Documentation consistency and formatting improvements
129
+
130
+ #### 🧪 Testing & Validation
131
+ - **FIXED**: Enhanced test coverage and reliability
132
+ - **FIXED**: Cross-language compatibility validation
133
+ - **FIXED**: Documentation link validation and accessibility
134
+
135
+ ### 📊 Technical Achievements
136
+
137
+ #### 🎯 Translation Metrics
138
+ - **COMPLETED**: 368 translation targets successfully processed
139
+ - **ACHIEVED**: 100% English language consistency across codebase
140
+ - **VALIDATED**: All documentation links and references updated
141
+
142
+ #### ✅ Quality Metrics
143
+ - **PASSING**: 222 tests with improved coverage and stability
144
+ - **ACHIEVED**: 4/4 quality checks passing (Ruff, Black, MyPy, Tests)
145
+ - **ENHANCED**: Plugin system compatibility and reliability
146
+ - **IMPROVED**: Code maintainability and international accessibility
147
+
148
+ ### 🌟 Impact
149
+
150
+ This release establishes Tree-sitter Analyzer as a **truly international, accessible tool** that serves developers worldwide while maintaining the highest standards of code quality and documentation excellence.
151
+
152
+ **Key Benefits:**
153
+ - 🌍 **Global Accessibility**: Multi-language documentation for international users
154
+ - 🔧 **Enhanced Quality**: Improved code consistency and maintainability
155
+ - 📚 **Better Documentation**: Comprehensive guides in multiple languages
156
+ - 🚀 **PyPI Ready**: Optimized for package distribution and discovery
157
+
8
158
  ## [0.4.0] - 2025-08-02
9
159
 
10
160
  ### 🎯 Perfect Type Safety & Architecture Unification Release
@@ -76,11 +76,11 @@ def analyze_file(file_path: str, language: Optional[str] = None) -> AnalysisResu
76
76
  """Analyze a code file and return results."""
77
77
  pass
78
78
 
79
- class CodeAnalyzer:
79
+ class JavaElementExtractor:
80
80
  def __init__(self, config: Dict[str, Any]) -> None:
81
81
  self.config = config
82
-
83
- def process(self, content: str) -> List[CodeElement]:
82
+
83
+ def extract_functions(self, tree: Tree, source_code: str) -> List[Function]:
84
84
  return []
85
85
  ```
86
86
 
@@ -133,18 +133,19 @@ def extract_functions(source_code: str, language: str) -> List[Function]:
133
133
  ### Test Structure
134
134
 
135
135
  ```python
136
- class TestCodeAnalyzer:
137
- """Test suite for CodeAnalyzer class."""
138
-
139
- def test_analyze_java_file_success(self):
140
- """Test successful analysis of Java file."""
136
+ class TestJavaPlugin:
137
+ """Test suite for Java plugin analysis."""
138
+
139
+ async def test_analyze_java_file_success(self):
140
+ """Test successful analysis of Java file using new plugin system."""
141
141
  # Arrange
142
- analyzer = CodeAnalyzer()
142
+ from tree_sitter_analyzer.core.analysis_engine import get_analysis_engine
143
+ engine = get_analysis_engine()
143
144
  file_path = "examples/Sample.java"
144
-
145
+
145
146
  # Act
146
- result = analyzer.analyze_file(file_path)
147
-
147
+ result = await engine.analyze_file(file_path)
148
+
148
149
  # Assert
149
150
  assert result is not None
150
151
  assert result.language == "java"