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.

forked_spec.rb 1.6 kB

2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # frozen_string_literal: true
  2. require 'spec_helper'
  3. require 'cucumber/rake/task'
  4. require 'rake'
  5. module Cucumber
  6. module Rake
  7. describe Task::ForkedCucumberRunner do
  8. let(:libs) { ['lib'] }
  9. let(:binary) { Cucumber::BINARY }
  10. let(:cucumber_opts) { ['--cuke-option'] }
  11. let(:feature_files) { ['./some.feature'] }
  12. context 'when running with bundler' do
  13. let(:bundler) { true }
  14. subject { Task::ForkedCucumberRunner.new(libs, binary, cucumber_opts, bundler, feature_files) }
  15. it 'does use bundler if bundler is set to true' do
  16. expect(subject.use_bundler).to be true
  17. end
  18. it 'uses bundle exec to find cucumber and libraries' do
  19. expect(subject.cmd).to eq [
  20. Cucumber::RUBY_BINARY,
  21. '-S',
  22. 'bundle',
  23. 'exec',
  24. 'cucumber',
  25. '--cuke-option'
  26. ] + feature_files
  27. end
  28. end
  29. context 'when running without bundler' do
  30. let(:bundler) { false }
  31. subject { Task::ForkedCucumberRunner.new(libs, binary, cucumber_opts, bundler, feature_files) }
  32. it 'does not use bundler if bundler is set to false' do
  33. expect(subject.use_bundler).to be false
  34. end
  35. it 'uses well known cucumber location and specified libraries' do
  36. expect(subject.cmd).to eq [
  37. Cucumber::RUBY_BINARY,
  38. '-I',
  39. '"lib"',
  40. "\"#{Cucumber::BINARY}\"",
  41. '--cuke-option'
  42. ] + feature_files
  43. end
  44. end
  45. end
  46. end
  47. end

No Description

Contributors (1)