Class: Pretentious::FileWriter
- Inherits:
-
Object
- Object
- Pretentious::FileWriter
- Defined in:
- lib/pretentious/utils/file_writer.rb
Overview
Utility function for saving pretentious test artifacts to a file.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ FileWriter
constructor
options for the file writer.
- #write(klass, result) ⇒ Object
- #write_results(results) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ FileWriter
options for the file writer
5 6 7 8 |
# File 'lib/pretentious/utils/file_writer.rb', line 5 def initialize( = {}) @spec_output_folder ||= ([:spec_output_folder] || 'generated') @output_folder = [:output_folder] || nil end |
Instance Method Details
#write(klass, result) ⇒ Object
10 11 12 13 14 15 16 17 18 19 |
# File 'lib/pretentious/utils/file_writer.rb', line 10 def write(klass, result) output_folder = result[:generator].location(@output_folder) spec_output_folder = File.join(output_folder, @spec_output_folder) FileUtils.mkdir_p result[:generator].location(@output_folder) FileUtils.mkdir_p spec_output_folder result[:generator].helper(output_folder) filename = result[:generator].naming(spec_output_folder, klass) File.open(filename, 'w') { |f| f.write(result[:output]) } filename end |
#write_results(results) ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/pretentious/utils/file_writer.rb', line 21 def write_results(results) results.each do |g, result_per_generator| puts "#{g}:" result_per_generator.each do |klass, result| puts write(klass, result) end if result_per_generator end end |