hgmnz/truncate_html

View on GitHub
Rakefile

Summary

Maintainability
Test Coverage
require 'rake'

begin
  require 'rspec/core'
  require 'rspec/core/rake_task'
rescue MissingSourceFile
  module RSpec
    module Core
      class RakeTask
        def initialize(name)
          task name do
            # if rspec-rails is a configured gem, this will output helpful material and exit ...
            require File.expand_path(File.dirname(__FILE__) + "/../../config/environment")
            # ... otherwise, do this:
            raise <<-MSG
#{"*" * 80}
*  You are trying to run an rspec rake task defined in
*  #{__FILE__},
*  but rspec can not be found in vendor/gems, vendor/plugins or system gems.
#{"*" * 80}
MSG
          end
        end
      end
    end
  end
end

task :default => :spec
task :stats => "spec:statsetup"

desc "Run RSpec code examples"
RSpec::Core::RakeTask.new(:spec) do |t|
  t.pattern   = "./spec/**/*_spec.rb"
end

namespace :gem do
  desc "Release to rubygems"
  task :release do
    require File.expand_path('lib/truncate_html/version', File.dirname(__FILE__))
    version = TruncateHtml::VERSION
    message = "Bump to version #{version}"
    system "git tag -a -m '#{message}' v#{version}"
    system "git push origin master"
    system "git push origin $(git tag | tail -1)"
    system "gem build truncate_html.gemspec"
    system "gem push truncate_html-#{version}.gem"
    system "rm truncate_html-#{version}.gem"
  end
end