Rakefile in aub-machine-1.0.2 vs Rakefile in aub-machine-1.0.3
- old
+ new
@@ -1,61 +1,50 @@
require 'rubygems'
require 'rake'
require 'rake/testtask'
-require 'rake/rdoctask'
-require 'rake/gempackagetask'
-require 'date'
+begin
+ require 'jeweler'
+ Jeweler::Tasks.new do |gemspec|
+ gemspec.name = "machine"
+ gemspec.summary = "machine is an implementation of the factory pattern for creating model objects when testing Ruby apps"
+ gemspec.description = "machine is an implementation of the factory pattern for creating model objects when testing Ruby apps. It borrows concepts from factory_girl, but has a different implementation for associations."
+ gemspec.email = "aubreyholland@gmail.com"
+ gemspec.homepage = "http://github.com/aub/machine"
+ gemspec.authors = ["Aubrey Holland"]
+ end
+rescue LoadError
+ puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
+end
+
desc 'Default: run unit tests.'
task :default => :test
desc 'Test the machine.'
Rake::TestTask.new(:test) do |t|
t.libs << 'lib'
t.pattern = 'test/**/*_test.rb'
t.verbose = true
end
-desc 'Generate documentation for the machine.'
-Rake::RDocTask.new(:rdoc) do |rdoc|
- rdoc.rdoc_dir = 'rdoc'
- rdoc.title = 'Machine'
- rdoc.options << '--line-numbers' << '--inline-source' << "--main" << "README.textile"
- rdoc.rdoc_files.include('README.textile')
- rdoc.rdoc_files.include('lib/**/*.rb')
+# Try to use hanna to create spiffier docs.
+begin
+ require 'hanna/rdoctask'
+rescue LoadError
+ require 'rake/rdoctask'
end
-spec = Gem::Specification.new do |s|
- s.name = %q{machine}
- s.version = "1.0.2"
- s.summary = %q{machine defines a factory system for creating model objects to replace fixtures in Ruby apps.}
- s.description = %q{machine defines a factory system for creating model objects to replace fixtures in Ruby apps.}
+Rake::RDocTask.new do |rdoc|
+ if File.exist?('VERSION.yml')
+ config = YAML.load(File.read('VERSION.yml'))
+ version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
+ else
+ version = ""
+ end
- s.files = FileList['[A-Z]*', 'lib/**/*.rb', 'test/**/*.rb']
- s.require_path = 'lib'
- s.test_files = Dir[*['test/**/*_test.rb']]
-
- s.has_rdoc = true
- s.extra_rdoc_files = ["README.textile"]
- s.rdoc_options = ['--line-numbers', '--inline-source', "--main", "README.textile"]
-
- s.authors = ["Aubrey Holland"]
- s.email = %q{aubrey@patch.com}
-
- s.platform = Gem::Platform::RUBY
- s.add_dependency(%q<activesupport>, [">= 1.0"])
+ rdoc.rdoc_dir = 'rdoc'
+ rdoc.title = "machine #{version}"
+ rdoc.rdoc_files.include('README*')
+ rdoc.rdoc_files.include('lib/**/*.rb')
+ rdoc.options << '--webcvs=http://github.com/aub/machine/tree/master/'
end
-Rake::GemPackageTask.new spec do |pkg|
- pkg.need_tar = true
- pkg.need_zip = true
-end
-
-desc "Clean files generated by rake tasks"
-task :clobber => [:clobber_rdoc, :clobber_package]
-
-desc "Generate a gemspec file"
-task :gemspec do
- File.open("#{spec.name}.gemspec", 'w') do |f|
- f.write spec.to_ruby
- end
-end