-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathRakefile
59 lines (49 loc) · 1.41 KB
/
Rakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
require 'rubygems'
Gem::manage_gems
require 'rake/gempackagetask'
require 'rake/rdoctask'
require 'rake/testtask'
require 'active_support'
gem_name = 'css_doc'
spec = eval(File.read("#{gem_name}.gemspec"))
Rake::GemPackageTask.new(spec) do |pkg|
pkg.need_tar = true
end
desc 'Test the gem.'
task :test => [:"test:units", :"test:functionals"]
desc "Run unit tests for #{gem_name} gem."
Rake::TestTask.new("test:units") do |t|
t.pattern = 'test/unit/**/*_test.rb'
t.verbose = true
end
desc "Run functional tests for #{gem_name} gem."
Rake::TestTask.new("test:functionals") do |t|
t.pattern = 'test/functional/**/*_test.rb'
t.verbose = true
end
file_name = "#{gem_name}-#{spec.version}.gem"
package = "pkg/#{file_name}"
desc "Build gem"
task :default => package do
puts "generated latest version"
end
desc "Install gem locally"
task :install => :default do
system "gem install #{package}"
end
desc "Generate documentation for #{gem_name}."
Rake::RDocTask.new(:rdoc) do |rdoc|
rdoc.rdoc_dir = 'rdoc'
rdoc.title = gem_name
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.rdoc_files.include('README.rdoc')
rdoc.rdoc_files.include('TODO.rdoc')
rdoc.rdoc_files.include('src/**/*.rb')
end
desc "Generate .gemspec file from .gemspec.erb file"
task :gemspec do
require 'erb'
File.open("#{gem_name}.gemspec", 'w') do |file|
file.puts ERB.new(File.read("#{gem_name}.gemspec.erb")).result
end
end