lib/ggem/template.rb in ggem-1.9.1 vs lib/ggem/template.rb in ggem-1.9.2

- old
+ new

@@ -1,70 +1,62 @@ require "erb" require "fileutils" -module GGem +module GGem; end +class GGem::Template + def initialize(ggem) + @ggem = ggem + end - class Template + def save + save_folder # (gem root path) + save_folder "lib/#{@ggem.ruby_name}" + save_folder "test/support" + save_folder "test/system" + save_folder "test/unit" + save_folder "log" + save_folder "tmp" - def initialize(ggem) - @gem = ggem - end + save_file("ruby-version.erb", ".ruby-version") + save_file("gitignore.erb", ".gitignore") + save_file("Gemfile.erb", "Gemfile") + save_file("gemspec.erb", "#{@ggem.name}.gemspec") + save_file("README.md.erb", "README.md") + save_file("LICENSE.erb", "LICENSE") - def save - save_folder # (gem root path) - save_folder ".circleci" - save_folder "lib/#{@gem.ruby_name}" - save_folder "test/support" - save_folder "test/system" - save_folder "test/unit" - save_folder "log" - save_folder "tmp" + save_file("lib.rb.erb", "lib/#{@ggem.ruby_name}.rb") + save_file("lib_version.rb.erb", "lib/#{@ggem.ruby_name}/version.rb") - save_file("circleci_config.yml.erb", ".circleci/config.yml") + save_file("test_helper.rb.erb", "test/helper.rb") + save_file("test_support_factory.rb.erb", "test/support/factory.rb") - save_file("ruby-version.erb", ".ruby-version") - save_file("gitignore.erb", ".gitignore") - save_file("Gemfile.erb", "Gemfile") - save_file("gemspec.erb", "#{@gem.name}.gemspec") - save_file("README.md.erb", "README.md") - save_file("LICENSE.erb", "LICENSE") + save_empty_file("log/.keep") + save_empty_file("test/system/.keep") + save_empty_file("test/unit/.keep") + save_empty_file("tmp/.keep") + end - save_file("lib.rb.erb", "lib/#{@gem.ruby_name}.rb") - save_file("lib_version.rb.erb", "lib/#{@gem.ruby_name}/version.rb") + private - save_file("test_helper.rb.erb", "test/helper.rb") - save_file("test_support_factory.rb.erb", "test/support/factory.rb") + def save_folder(relative_path=nil) + path = File.join([@ggem.path, relative_path].compact) + FileUtils.mkdir_p(path) + end - save_empty_file("log/.gitkeep") - save_empty_file("test/system/.gitkeep") - save_empty_file("test/unit/.gitkeep") - save_empty_file("tmp/.gitkeep") - end + def save_empty_file(relative_path) + path = File.join(@ggem.path, relative_path) + FileUtils.touch(path) + end - private + def save_file(source, output) + source_file = File.join(File.dirname(__FILE__), "template_file", source) + output_file = File.join(@ggem.root_path, @ggem.name, output) - def save_folder(relative_path=nil) - path = File.join([@gem.path, relative_path].compact) - FileUtils.mkdir_p(path) + if File.exists?(source_file) + FileUtils.mkdir_p(File.dirname(output_file)) + erb = ERB.new(File.read(source_file)) + File.open(output_file, "w") {|f| f << erb.result(binding) } + else + raise ArgumentError, "the source file `#{source_file}` does not exist" end - - def save_empty_file(relative_path) - path = File.join(@gem.path, relative_path) - FileUtils.touch(path) - end - - def save_file(source, output) - source_file = File.join(File.dirname(__FILE__), "template_file", source) - output_file = File.join(@gem.root_path, @gem.name, output) - - if File.exists?(source_file) - FileUtils.mkdir_p(File.dirname(output_file)) - erb = ERB.new(File.read(source_file)) - File.open(output_file, "w") {|f| f << erb.result(binding) } - else - raise ArgumentError, "the source file `#{source_file}` does not exist" - end - end - end - end