Sha256: 7b0e7c95440d96b2f965fcb6fa946137db9adaa59a04cb5401d448b59eccb9c8

Contents?: true

Size: 1.2 KB

Versions: 1

Compression:

Stored size: 1.2 KB

Contents

require 'spec_helper'

describe VagrantPlugins::ShellCommander::Plugin do
  it 'should have a name' do
    expect(described_class.name).not_to be_nil
  end

  it "should define a command of type Command" do
    default_command = described_class.command.
      to_hash[:"sh"]
    expect(default_command).to be(VagrantPlugins::ShellCommander::Command)
  end

  it "should define a config of type Config" do
    default_config = described_class.components.configs[:top].to_hash[:"sh"]
    expect(default_config).to be(VagrantPlugins::ShellCommander::Config)
  end

  context 'action hooks' do
    let(:hook) {double(append: true, prepend: true)}

    it "should define an action hook for machine_action_up" do
      hook_proc = described_class.components.action_hooks[:machine_action_up][0]
      hook = double
      expect(hook).to receive(:append).with(VagrantPlugins::ShellCommander::Action)
      hook_proc.call(hook)
    end

    it "should define an action hook for machine_action_reload" do
      hook_proc = described_class.components.action_hooks[:machine_action_reload][0]
      hook = double
      expect(hook).to receive(:append).with(VagrantPlugins::ShellCommander::Action)
      hook_proc.call(hook)
    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vagrant-shell-commander-0.3.0 spec/plugin_spec.rb