Class: RailsAiContext::Tools::GenerateTest
- Defined in:
- lib/rails_ai_context/tools/generate_test.rb
Constant Summary
Constants inherited from BaseTool
BaseTool::SESSION_CONTEXT, BaseTool::SHARED_CACHE
Class Method Summary collapse
Methods inherited from BaseTool
abstract!, abstract?, cache_key, cached_context, config, extract_method_source_from_file, extract_method_source_from_string, find_closest_match, fuzzy_find_key, inherited, not_found_response, paginate, rails_app, registered_tools, reset_all_caches!, reset_cache!, session_queries, session_record, session_reset!, set_call_params, text_response
Class Method Details
.call(model: nil, controller: nil, file: nil, type: "unit", server_context: nil) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/rails_ai_context/tools/generate_test.rb', line 35 def self.call(model: nil, controller: nil, file: nil, type: "unit", server_context: nil) unless model || controller || file return text_response("Provide at least one of: `model`, `controller`, or `file`.") end tests_data = cached_context[:tests] || {} framework = tests_data[:framework] || detect_framework patterns = detect_patterns(framework) if model generate_model_test(model.strip, framework, patterns, tests_data) elsif controller generate_controller_test(controller.strip, framework, patterns, tests_data) elsif file generate_file_test(file.strip, framework, patterns, tests_data, type) end rescue => e text_response("Generate test error: #{e.}") end |