Logo: Relish

  1. Sign in

Project: Aruba 0.9.0

before_cmd hooks

You can configure Aruba to run blocks of code before it runs
each command.

The command will be passed to the block.

Background
Given
I use a fixture named "cli-app"
Scenarios
Run a simple command with a "before(:command)"-hook
Given
a file named "spec/support/hooks.rb" with:
Aruba.configure do |config|
  config.before :command do |cmd|
    puts "before the run of #{cmd.commandline}"
  end
end
And
a file named "spec/hook_spec.rb" with:
require 'spec_helper'

RSpec.describe 'Hooks', :type => :aruba do
  before(:each) { run_simple 'echo running' }

  it { expect(last_command_started.stdout.chomp).to eq 'running' }
end
When
I run rspec
Then
the specs should all pass
And
the output should contain:
before the run of echo running
Run a simple command with a "before(:cmd)"-hook (deprecated)
Given
a file named "spec/support/hooks.rb" with:
Aruba.configure do |config|
  config.before :cmd do |cmd|
    puts "before the run of #{cmd}"
  end
end
And
a file named "spec/hook_spec.rb" with:
require 'spec_helper'

RSpec.describe 'Hooks', :type => :aruba do
  before(:each) { run_simple 'echo running' }

  it { expect(last_command_started.stdout.chomp).to eq 'running' }
end
When
I run rspec
Then
the specs should all pass
And
the output should contain:
before the run of echo running

Last published over 6 years ago by Max Meyer.