You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Rakefile 996 B

2 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. desc 'Run features for all languages'
  2. task :cucumber do
  3. dir = File.dirname(__FILE__)
  4. Dir["#{dir}/*"].sort.each do |f|
  5. next unless File.directory?(f)
  6. lang = f[dir.length + 1..]
  7. message = examples_disabled?(lang)
  8. unless message.nil?
  9. $stderr.puts(message)
  10. next
  11. end
  12. Dir.chdir(f) do
  13. puts "DIR: #{f}"
  14. rake('cucumber')
  15. end
  16. end
  17. end
  18. task default: :cucumber
  19. def examples_disabled?(lang)
  20. return make_warning("SKIPPING #{lang} (The examples are out of date - please help update them)") unless examples_working?(lang)
  21. return make_warning("SKIPPING #{lang}: examples have been disabled for JRuby.") if jruby_disabled_examples?(lang)
  22. end
  23. def jruby_disabled_examples?(lang)
  24. return unless RUBY_PLATFORM == 'java'
  25. %w[ru uk uz].include?(lang)
  26. end
  27. def examples_working?(lang)
  28. !%w[ar].index(lang)
  29. end
  30. def make_warning(msg)
  31. %(
  32. !!!!!
  33. !!!!!
  34. !!!!! #{msg}
  35. !!!!!
  36. !!!!!
  37. )
  38. end
  39. def rake(args)
  40. ruby($PROGRAM_NAME, args)
  41. end

No Description

Contributors (1)