Project

General

Profile

Download (2.09 KB) Statistics
| Branch: | Tag: | Revision:
b50ceaa2 Tom McKay
#!/usr/bin/env rake
ab134b85 Tom McKay
require 'bundler/gem_tasks'
b50ceaa2 Tom McKay
require 'rake/testtask'
ab134b85 Tom McKay
b50ceaa2 Tom McKay
def clear_cassettes
f370cc85 Tom McKay
`rm -rf test/fixtures/vcr_cassettes/setup/*.yml`
`rm -rf test/fixtures/vcr_cassettes/resources/*.yml`
b50ceaa2 Tom McKay
print "Cassettes cleared\n"
ab134b85 Tom McKay
end
98034f92 David Davis
b50ceaa2 Tom McKay
namespace :test do
c06f1783 Tom McKay
%w(setup resources).each do |task_name|
b50ceaa2 Tom McKay
desc "Runs the #{task_name} tests"
task task_name do
options = {}

options[:mode] = ENV['mode'] || 'none'
options[:test_name] = ENV['test']
options[:auth_type] = ENV['auth_type']
options[:logging] = ENV['logging']

if !%w(new_episodes all none once).include?(options[:mode])
puts 'Invalid test mode'
else
require './test/test_runner'

test_runner = CsvMiniTestRunner.new

if options[:test_name]
puts "Running tests for: #{options[:test_name]}"
else
puts "Running tests for: #{task_name}"
end

clear_cassettes if options[:mode] == 'all' && options[:test_name].nil? && ENV['record'] != 'false'
test_runner.run_tests(task_name, options)
end
end
end
end


98034f92 David Davis
begin
require 'rubocop/rake_task'
RuboCop::RakeTask.new
rescue
puts "Rubocop not loaded"
end

50ad777d Bryan Kearney
namespace :gettext do
desc "Update pot file"
a8ddf8e3 Bryan Kearney
task :setup do
50ad777d Bryan Kearney
require "hammer_cli_csv/version"
require "hammer_cli_csv/i18n"
a8ddf8e3 Bryan Kearney
require 'gettext/tools/task'
50ad777d Bryan Kearney
domain = HammerCLICsv::I18n::LocaleDomain.new
a8ddf8e3 Bryan Kearney
GetText::Tools::Task.define do |task|
task.package_name = domain.domain_name
task.package_version = HammerCLICsv.version.to_s
task.domain = domain.domain_name
task.mo_base_directory = domain.locale_dir
task.po_base_directory = domain.locale_dir
task.files = domain.translated_files
end
end

desc "Update pot file"
task :find => [:setup] do
Rake::Task["gettext:po:update"].invoke
50ad777d Bryan Kearney
end
end

b50ceaa2 Tom McKay
desc 'Clears out all cassette files'
task :clear_cassettes do
clear_cassettes
end

desc 'Runs all tests'
task :test do
c06f1783 Tom McKay
Rake::Task['test:setup'].invoke
b50ceaa2 Tom McKay
Rake::Task['test:resources'].invoke
end
50ad777d Bryan Kearney
98034f92 David Davis
task :default do
Rake::Task['rubocop'].execute
b50ceaa2 Tom McKay
Rake::Task['test'].execute
98034f92 David Davis
end