cucumber.yml
1.48 KB
<%
base_requires = '-r features/support -r features/step_definitions'
default_options = "--format progress --strict --tags ~@selenium --tags ~@selenium-fixme --tags ~@fixme --exclude features/support/selenium.rb #{base_requires}"
default_options << ' --color' if $stdout.isatty
selenium_options = "--strict --tags @selenium #{base_requires}"
core_features = Dir.glob "features/**/*.feature"
if slice = ENV['SLICE']
sel,size = slice.split '/'
size = (core_features.size / size.to_f).ceil
core_features = core_features.each_slice(size).to_a[sel.to_i - 1]
end
core_features = core_features.join ' '
%>
default: <%= default_options %> <%= core_features %>
selenium: <%= selenium_options %> <%= core_features %>
<%
enabled_plugins = Dir.glob(File.join('config', 'plugins', '*')).map do |path|
plugin = File.basename(path)
plugin if File.exist? File.join('features', 'plugins', plugin)
end.compact
enabled_plugins.each do |plugin|
plugin_features_path = File.join('features', 'plugins', plugin)
plugin_base_requires = ''
plugin_base_requires << " -r features/plugins/#{plugin}/support" if File.exist? File.join(plugin_features_path, 'support')
plugin_base_requires << " -r features/plugins/#{plugin}/step_definitions" if File.exist? File.join(plugin_features_path, 'step_definitions')
%>
<%= "#{plugin}: #{default_options} #{plugin_base_requires}" %>
<%= "#{plugin}_selenium: #{selenium_options} #{plugin_base_requires}" %>
<% end %>