Class: Testgenai::Generator::Base
- Inherits:
-
Object
- Object
- Testgenai::Generator::Base
show all
- Defined in:
- lib/testgenai/generator/base.rb
Instance Method Summary
collapse
Constructor Details
#initialize(config) ⇒ Base
Returns a new instance of Base.
6
7
8
9
|
# File 'lib/testgenai/generator/base.rb', line 6
def initialize(config)
@config = config
configure_llm
end
|
Instance Method Details
#generate(method_info, context, feedback: nil) ⇒ Object
11
12
13
14
15
|
# File 'lib/testgenai/generator/base.rb', line 11
def generate(method_info, context, feedback: nil)
prompt = build_prompt(method_info, context, feedback: feedback)
response = call_llm(prompt)
CodeExtractor.(response)
end
|
#injection_fallback_path_for(method_info) ⇒ Object
21
22
23
24
25
|
# File 'lib/testgenai/generator/base.rb', line 21
def injection_fallback_path_for(method_info)
primary = output_path_for(method_info)
method_part = method_info[:method].to_s.gsub(/\Aself\./, "").tr(".", "_")
primary.sub(/_(spec|test)\.rb\z/, "_#{method_part}_\\1.rb")
end
|
#output_path_for(method_info) ⇒ Object
17
18
19
|
# File 'lib/testgenai/generator/base.rb', line 17
def output_path_for(method_info)
raise NotImplementedError, "#{self.class} must implement #output_path_for"
end
|