root/mrblog/trunk/Rakefile

Revision 1316, 3.1 kB (checked in by jon.egil.stra..@gmail.com, 9 months ago)

Updated to 0.5.2

Line 
1 require 'rubygems'
2 Gem.clear_paths
3 Gem.path.unshift(File.join(File.dirname(__FILE__), "gems"))
4
5 require 'rake'
6 require 'rake/rdoctask'
7 require 'rake/testtask'
8 require 'spec/rake/spectask'
9 require 'fileutils'
10
11 require File.dirname(__FILE__)+'/config/boot.rb'
12 require Merb::framework_root+'/tasks'
13 include FileUtils
14
15 # Set these before any dependencies load
16 # otherwise the ORM may connect to the wrong env
17 Merb.root = File.dirname(__FILE__)
18 Merb.environment = ENV['MERB_ENV'] if ENV['MERB_ENV']
19
20 # Get Merb plugins and dependencies
21 require File.dirname(__FILE__)+'/config/dependencies.rb'
22 Merb::Plugins.rakefiles.each {|r| require r }
23
24 #desc "Packages up Merb."
25 #task :default => [:package]
26
27 desc "load merb_init.rb"
28 task :merb_init do
29   # deprecated - here for BC
30   Rake::Task['merb_env'].invoke
31 end
32
33 task :uninstall => [:clean] do
34   sh %{sudo gem uninstall #{NAME}}
35 end
36
37 desc 'Run unit tests'
38 Rake::TestTask.new('test_unit') do |t|
39   t.libs << 'test'
40   t.pattern = 'test/unit/*_test.rb'
41   t.verbose = true
42 end
43
44 desc 'Run functional tests'
45 Rake::TestTask.new('test_functional') do |t|
46   t.libs << 'test'
47   t.pattern = 'test/functional/*_test.rb'
48   t.verbose = true
49 end
50
51 desc 'Run all tests'
52 Rake::TestTask.new('test') do |t|
53   t.libs << 'test'
54   t.pattern = 'test/**/*_test.rb'
55   t.verbose = true
56 end
57
58 desc "Run all specs"
59 Spec::Rake::SpecTask.new('specs') do |t|
60   t.spec_opts = ["--format", "specdoc", "--colour"]
61   t.spec_files = Dir['spec/**/*_spec.rb'].sort
62 end
63
64 desc "Run all model specs"
65 Spec::Rake::SpecTask.new('model_specs') do |t|
66   t.spec_opts = ["--format", "specdoc", "--colour"]
67   t.spec_files = Dir['spec/models/**/*_spec.rb'].sort
68 end
69
70 desc "Run all controller specs"
71 Spec::Rake::SpecTask.new('controller_specs') do |t|
72   t.spec_opts = ["--format", "specdoc", "--colour"]
73   t.spec_files = Dir['spec/controllers/**/*_spec.rb'].sort
74 end
75
76 desc "Run a specific spec with TASK=xxxx"
77 Spec::Rake::SpecTask.new('spec') do |t|
78   t.spec_opts = ["--format", "specdoc", "--colour"]
79   t.libs = ['lib', 'server/lib' ]
80   t.spec_files = ["spec/merb/#{ENV['TASK']}_spec.rb"]
81 end
82
83 desc "Run all specs output html"
84 Spec::Rake::SpecTask.new('specs_html') do |t|
85   t.spec_opts = ["--format", "html"]
86   t.libs = ['lib', 'server/lib' ]
87   t.spec_files = Dir['spec/**/*_spec.rb'].sort
88 end
89
90 desc "RCov"
91 Spec::Rake::SpecTask.new('rcov') do |t|
92   t.spec_opts = ["--format", "specdoc", "--colour"]
93   t.spec_files = Dir['spec/**/*_spec.rb'].sort
94   t.libs = ['lib', 'server/lib' ]
95   t.rcov = true
96 end
97
98 desc 'Run all tests, specs and finish with rcov'
99 task :aok do
100   sh %{rake rcov}
101   sh %{rake spec}
102 end
103
104 unless Gem.cache.search("haml").empty?
105   namespace :haml do
106     desc "Compiles all sass files into CSS"
107     task :compile_sass do
108       gem 'haml'
109       require 'sass'
110       puts "*** Updating stylesheets"
111       Sass::Plugin.update_stylesheets
112       puts "*** Done"     
113     end
114   end
115 end
116
117 ##############################################################################
118 # SVN
119 ##############################################################################
120
121 desc "Add new files to subversion"
122 task :svn_add do
123    system "svn status | grep '^\?' | sed -e 's/? *//' | sed -e 's/ /\ /g' | xargs svn add"
124 end
Note: See TracBrowser for help on using the browser.