spec/spec_helper.rb in temp-0.0.2 vs spec/spec_helper.rb in temp-0.0.3
- old
+ new
@@ -1,3 +1,36 @@
require 'fileutils'
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib',
'temp.rb'))
+
+# Create a template and return a hash with all the template's information
+def create_template(path, name, desc, files, ignore, erb)
+ path = File.expand_path(path)
+ Dir.mkdir(path)
+
+ files.each do |file|
+ file = File.join(path, file)
+ if file =~ /.*\..*/
+ File.open(file, 'w') { |f| f.write("Hello, World!\n") }
+ else
+ Dir.mkdir(file)
+ end
+ end
+
+ tempfile = "name '#{name}'\ndesc '#{desc}'\n\n"
+ ignore.each { |f| tempfile << "ignore '#{f}'\n" }
+ erb.each { |f| tempfile << "use_erb '#{f}'\n" }
+ tempfile << "\n@foo = 'Foo'\n"
+ File.open(File.join(path, 'Tempfile'), 'w') { |f| f.write(tempfile) }
+
+ {
+ :path => path,
+ :filename => File.basename(path),
+ :name => name,
+ :desc => desc,
+ :files => (['Tempfile'] + files).sort,
+ :ignore => ignore.map { |f| Dir.glob(File.join(path, f)) }.flatten.
+ map { |f| f.sub(path + '/', '') },
+ :erb => erb.map { |f| Dir.glob(File.join(path, f)) }.flatten.
+ map { |f| f.sub(path + '/', '') },
+ }
+end