Sha256: 610ce074a494b5baa07fd3454c92c9133030e61a5b2c9dc8b27cfd2c42a9ae82
Contents?: true
Size: 1.7 KB
Versions: 1
Compression:
Stored size: 1.7 KB
Contents
SAMPLES_DIR = "samples" namespace :samples do def samples_from_file(filename) samples = File.read("#{SAMPLES_DIR}/#{filename}").lines samples.map {|s| s.sub(/#.*$/, '')}.map(&:strip).select {|s| s != ''}.map {|s| "#{SAMPLES_DIR}/#{s}"} end def working_samples samples = samples_from_file "README" puts "#{samples.size} samples are known to work" samples end def non_samples all_samples = Dir[File.join(SAMPLES_DIR, '*.rb')] result = all_samples - working_samples puts "#{result.size} samples are not known to work" result end def run_sample(sample_name, index, total) puts "Running #{sample_name} (#{index + 1} of #{total})...quit to run next sample" system "bin/shoes #{sample_name}" end def run_samples(samples) samples.each_with_index do |sample, index| run_sample(sample, index, samples.size) end end desc "Run all working samples in random order" task :random do |t| puts t.comment run_samples working_samples.shuffle end desc "Run all working samples in alphabetical order" task :good do |t| puts t.comment run_samples working_samples.sort end desc "Run all non-working samples in random order" task :bad do |t| puts t.comment run_samples non_samples.shuffle end desc "Create list of non-working samples" task :bad_list do |t| puts t.comment non_samples.each{|non_sample| puts non_sample} end desc "Run all samples listed in samples/filename" task :subset, [:filename] do |t, args| puts t.comment run_samples samples_from_file(args[:filename]) end end task :samples => ['samples:random'] task :non_samples => ['samples:bad'] task :list_non_samples => ['samples:bad_list']
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
shoes-4.0.0.pre2 | tasks/sample.rb |