Class: PatternGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- PatternGenerator
- Defined in:
- lib/generators/pattern/pattern_generator.rb
Overview
Generate template files and tests with a patten name
Instance Method Summary collapse
- #create_app_pattern_file ⇒ Object
- #create_application_pattern_file ⇒ Object
- #create_test_application_pattern_file ⇒ Object
- #create_test_pattern_file ⇒ Object
Instance Method Details
#create_app_pattern_file ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/generators/pattern/pattern_generator.rb', line 21 def create_app_pattern_file create_file "app/#{@pattern_value_object.directory_name}/#{@pattern_value_object.file_name}.rb", <<~FILE # frozen_string_literal: true class #{@pattern_value_object.klass_name} < Application#{@pattern_value_object.pattern_klass_name} end FILE end |
#create_application_pattern_file ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/generators/pattern/pattern_generator.rb', line 7 def create_application_pattern_file @pattern_value_object = PatternValueObject.new(file_name) application_file_name = "app/#{@pattern_value_object.directory_name}/application_#{@pattern_value_object.pattern_name}.rb" return if File.exist?(application_file_name) create_file application_file_name, <<~FILE # frozen_string_literal: true class Application#{@pattern_value_object.pattern_klass_name} end FILE end |
#create_test_application_pattern_file ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/generators/pattern/pattern_generator.rb', line 30 def create_test_application_pattern_file application_file_name = "test/#{@pattern_value_object.directory_name}/application_#{@pattern_value_object.pattern_name}_test.rb" return if File.exist?(application_file_name) create_file application_file_name, <<~FILE # frozen_string_literal: true require 'test_helper' class Application#{@pattern_value_object.pattern_klass_name}Test < ActiveSupport::TestCase end FILE end |
#create_test_pattern_file ⇒ Object
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/generators/pattern/pattern_generator.rb', line 45 def create_test_pattern_file create_file "test/#{@pattern_value_object.directory_name}/#{@pattern_value_object.file_name}_test.rb", <<~FILE # frozen_string_literal: true require 'test_helper' class #{@pattern_value_object.klass_name}Test < ActiveSupport::TestCase end FILE end |