Rakefile in win32-security-0.1.2 vs Rakefile in win32-security-0.1.3
- old
+ new
@@ -1,37 +1,46 @@
require 'rake'
require 'rake/testtask'
require 'rbconfig'
-include Config
-desc 'Cleanup any temp files left over by Test::Unit'
-task :clean do
- Dir['*'].each{ |file|
- file = File.expand_path(file)
- next unless File.directory?(file)
- next if file =~ /CVS/
- Dir.chdir(file) do
- rm_rf '.test-result' if File.exists?('.test-result')
- end
- }
end
+namespace :gem do
+ desc "Remove any .gem files in the project"
+ task :clean do
+ Dir['*.gem'].each{ |f| File.delete(f) }
+ end
-desc 'Install the win32-security package (non-gem)'
-task :install do
- install_dir = File.join(CONFIG["sitelibdir"], 'win32', 'security')
- mkdir_p(install_dir) unless File.exists?(install_dir)
- cp 'lib/win32/security.rb', File.dirname(install_dir), :verbose => true
- cp 'lib/win32/security/acl.rb', install_dir, :verbose => true
- cp 'lib/win32/security/sid.rb', install_dir, :verbose => true
-end
+ desc "Create the win32-security gem"
+ task :create => [:clean] do
+ spec = eval(IO.read('win32-security.gemspec'))
+ Gem::Builder.new(spec).build
+ end
-task :install_gem do
- ruby 'win32-security.gemspec'
- file = Dir["*.gem"].first
- sh "gem install #{file}"
+ desc "Install the win32-security gem"
+ task :install => [:create] do
+ ruby 'win32-security.gemspec'
+ file = Dir["*.gem"].first
+ sh "gem install #{file}"
+ end
end
-# TODO: Add more test files as more classes are added.
-Rake::TestTask.new do |t|
- t.verbose = true
- t.warning = true
- t.test_files = Dir['test/test_sid.rb', 'test/test_security.rb']
+namespace :test do
+ Rake::TestTask.new(:security) do |t|
+ t.verbose = true
+ t.warning = true
+ t.test_files = Dir['test/test_security.rb']
+ end
+
+ Rake::TestTask.new(:sid) do |t|
+ t.verbose = true
+ t.warning = true
+ t.test_files = Dir['test/test_sid.rb']
+ end
+
+ # ACL class isn't ready yet
+ Rake::TestTask.new(:all) do |t|
+ t.verbose = true
+ t.warning = true
+ t.test_files = Dir['test/test_sid.rb', 'test/test_security.rb']
+ end
end
+
+task :default => 'test:all'