Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

65 lines (55 sloc) 2.109 kB
require 'bundler'
include Rake::DSL
Bundler::GemHelper.install_tasks
task :default => ['spec', 'test:conformance']
task :test => :spec
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new(:spec)
def conformance_version(dir)
require 'digest'
Dir[File.join(dir, '*')].inject(Digest::SHA1.new){|digest, file| digest.update(Digest::SHA1.file(file).hexdigest) }
end
namespace :test do
namespace :conformance do
desc "Update conformance testing data"
task :update do
puts "Updating conformance data ... "
system("git submodule init") || raise("Failed to init submodule")
system("git submodule update") || raise("Failed to update submodule")
puts "Updating conformance data ... DONE"
end
desc "Change conformance test data to the lastest version"
task :latest => ['conformance:update'] do
current_dir = File.dirname(__FILE__)
submodule_dir = File.join(File.dirname(__FILE__), "test", "twitter-text-conformance")
version_before = conformance_version(submodule_dir)
system("cd #{submodule_dir} && git pull origin master") || raise("Failed to pull submodule version")
system("cd #{current_dir}")
if conformance_version(submodule_dir) != version_before
system("cd #{current_dir} && git add #{submodule_dir}") || raise("Failed to add upgrade files")
system("git commit -m \"Upgraded to the latest conformance suite\" #{submodule_dir}") || raise("Failed to commit upgraded conformacne data")
puts "Upgraded conformance suite."
else
puts "No conformance suite changes."
end
end
desc "Run conformance test suite"
task :run do
ruby '-rubygems', "test/conformance_test.rb"
end
end
desc "Run conformance test suite"
task :conformance => ['conformance:latest', 'conformance:run'] do
end
end
require 'rdoc/task'
namespace :doc do
RDoc::Task.new do |rd|
rd.main = "README.rdoc"
rd.rdoc_dir = 'doc'
rd.rdoc_files.include("README.rdoc", "lib/**/*.rb")
end
end
desc "Run cruise control build"
task :cruise => [:spec, 'test:conformance'] do
end
Jump to Line
Something went wrong with that request. Please try again.