Class: Alonzo::Generator::RbClassGenerator
- Inherits:
-
Object
- Object
- Alonzo::Generator::RbClassGenerator
- Defined in:
- lib/alonzo/generator.rb
Instance Attribute Summary collapse
-
#files ⇒ Object
readonly
Returns the value of attribute files.
-
#klass_names ⇒ Object
Returns the value of attribute klass_names.
-
#root ⇒ Object
Returns the value of attribute root.
Instance Method Summary collapse
-
#initialize(klass_names, root) ⇒ RbClassGenerator
constructor
A new instance of RbClassGenerator.
- #klass_file(klass_name) ⇒ Object
- #klass_file_path(klass_name) ⇒ Object
- #klass_file_template(klass_name) ⇒ Object
- #spec_file(klass_name) ⇒ Object
- #spec_file_path(klass_name) ⇒ Object
- #spec_file_template(klass_name) ⇒ Object
Constructor Details
#initialize(klass_names, root) ⇒ RbClassGenerator
Returns a new instance of RbClassGenerator.
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/alonzo/generator.rb', line 11 def initialize(klass_names, root) self.klass_names = klass_names self.root = root @files = [] klass_names.each do |klass_name| @files << klass_file(klass_name) @files << spec_file(klass_name) end end |
Instance Attribute Details
#files ⇒ Object (readonly)
Returns the value of attribute files.
9 10 11 |
# File 'lib/alonzo/generator.rb', line 9 def files @files end |
#klass_names ⇒ Object
Returns the value of attribute klass_names.
8 9 10 |
# File 'lib/alonzo/generator.rb', line 8 def klass_names @klass_names end |
#root ⇒ Object
Returns the value of attribute root.
8 9 10 |
# File 'lib/alonzo/generator.rb', line 8 def root @root end |
Instance Method Details
#klass_file(klass_name) ⇒ Object
23 24 25 26 |
# File 'lib/alonzo/generator.rb', line 23 def klass_file(klass_name) { name: klass_file_path(klass_name), content: klass_file_template(klass_name) } end |
#klass_file_path(klass_name) ⇒ Object
28 29 30 |
# File 'lib/alonzo/generator.rb', line 28 def klass_file_path(klass_name) File.join(root, "lib", "#{klass_name.underscore}.rb") end |
#klass_file_template(klass_name) ⇒ Object
32 33 34 35 36 |
# File 'lib/alonzo/generator.rb', line 32 def klass_file_template(klass_name) template = "" wrap_modules(template, klass_name.split("::")) template end |
#spec_file(klass_name) ⇒ Object
38 39 40 41 |
# File 'lib/alonzo/generator.rb', line 38 def spec_file(klass_name) { name: spec_file_path(klass_name), content: spec_file_template(klass_name) } end |
#spec_file_path(klass_name) ⇒ Object
43 44 45 |
# File 'lib/alonzo/generator.rb', line 43 def spec_file_path(klass_name) File.join(root, "spec", "#{klass_name.underscore}_spec.rb") end |
#spec_file_template(klass_name) ⇒ Object
47 48 49 50 51 |
# File 'lib/alonzo/generator.rb', line 47 def spec_file_template(klass_name) template = "require 'spec_helper'\n\n" wrap_modules(template, klass_name.split("::"), 0, true) template end |