Compass/compass

View on GitHub
Rakefile

Summary

Maintainability
Test Coverage

GEMS = ['core', 'cli', 'import-once']


task :default => %w[test]

desc "Run all tests"
task :test do
  sh %{./test_all.sh} do |ok, res|
     Rake::Task["test_cleanup"].invoke if ok
  end
end

desc "build gems"
task :build_gems => [:test] do
  GEMS.each do |gem|
    chdir gem do
      if gem == 'cli'
        sh "gem build compass.gemspec"
      else
        sh "gem build compass-#{gem}.gemspec"
      end
    end
  end
end

desc "publish gems"
task :publish_gems => [:build_gems] do
  GEMS.each do |gem|
    chdir gem do
      if gem == 'cli'
        sh "gem push compass.gemspec"
      else
        sh "gem push compass-#{gem}.gemspec"
      end
    end
  end
end

desc "Clean up all test files"
task :test_cleanup do
  dirs = [
    'core/devbin/',
    'core/.sass-cache/',
    'core/test/integrations/projects/busted_font_urls/tmp/',
    'core/test/integrations/projects/busted_image_urls/tmp/',
    'core/test/integrations/projects/compass/tmp/',
    'core/test/integrations/projects/envtest/tmp/',
    'core/test/integrations/projects/image_urls/tmp/',
    'core/test/integrations/projects/relative/tmp/',
    'core/test/integrations/projects/uses_only_stylesheets_ext/tmp/',
    'core/test/integrations/projects/valid/tmp/',
    'import-once/.sass-cache/'
  ]
  dirs.each { |dir| rm_rf dir }
end


desc "Bundle Update"
task :bundle_update do
  GEMS.each do |gem|
    chdir gem do
      sh "bundle update"
    end
  end
end