Sha256: 8e6380680877523e2ac6449f6afbc5fc2e4204156112d51bbb5ad7b8b0fd78ad
Contents?: true
Size: 1.34 KB
Versions: 3
Compression:
Stored size: 1.34 KB
Contents
# frozen_string_literal: true require 'spec_helper' describe Gurke::Scenario do let(:reporter) { Gurke::Reporters::NullReporter.new } let(:runner) { double 'runner' } let(:feature) { double 'feature' } let(:backgrounds) { double('backgrounds') } before do allow(feature).to receive(:backgrounds).and_return(backgrounds) allow(backgrounds).to receive(:run) allow(runner).to receive(:hook) {|_, _, &block| block.call } end let(:scenario) do Gurke::Scenario.new(feature, nil, nil, nil, nil) end describe '#run' do subject { scenario.run(runner, reporter) } it 'runs all backgrounds' do expect(backgrounds).to receive(:run) .with(runner, reporter, scenario, scenario.send(:world)) subject end it 'runs hook in scenario world' do expect(runner).to receive(:hook) do |scope, context, world| expect(scope).to eq :scenario expect(context).to eq scenario expect(world).to eq scenario.send(:world) end subject end it 'runs reporter callbacks in correct order' do expect(reporter).to receive(:invoke).exactly(4).times do |*args| @scopes ||= [] @scopes << args.first end subject expect(@scopes).to eq %i[before_scenario start_scenario end_scenario after_scenario] end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gurke-3.2.0 | spec/gurke/scenario_spec.rb |
gurke-3.1.0 | spec/gurke/scenario_spec.rb |
gurke-3.0.0 | spec/gurke/scenario_spec.rb |