Sha256: 49f7b3243eee755fabb5ffbc529706b2218a5013aa76a547099aa3cc06f9d1ac

Contents?: true

Size: 1.25 KB

Versions: 6

Compression:

Stored size: 1.25 KB

Contents

require File.expand_path("../../../../../base", __FILE__)

require Vagrant.source_root.join("plugins/guests/windows/cap/change_host_name")

describe "VagrantPlugins::GuestWindows::Cap::ChangeHostName" do
  let(:described_class) do
    VagrantPlugins::GuestWindows::Plugin.components.guest_capabilities[:windows].get(:change_host_name)
  end
  let(:machine) { double("machine") }
  let(:communicator) { VagrantTests::DummyCommunicator::Communicator.new(machine) }

  before do
    allow(machine).to receive(:communicate).and_return(communicator)
  end

  after do
    communicator.verify_expectations!
  end

  describe ".change_host_name" do

    let(:rename_script) { <<-EOH
        $computer = Get-WmiObject -Class Win32_ComputerSystem
        $retval = $computer.rename("newhostname").returnvalue
        if ($retval -eq 0) {
          shutdown /r /t 5 /f /d p:4:1 /c "Vagrant Rename Computer"
        }
        exit $retval
      EOH
      }

    it "changes the hostname" do
      communicator.stub_command(
        'if (!([System.Net.Dns]::GetHostName() -eq \'newhostname\')) { exit 0 } exit 1',
        exit_code: 0)
      communicator.stub_command(rename_script, exit_code: 0)
      described_class.change_host_name_and_wait(machine, 'newhostname', 0)
    end

  end
end

Version data entries

6 entries across 3 versions & 2 rubygems

Version Path
vagrant-unbundled-1.8.1.2 test/unit/plugins/guests/windows/cap/change_host_name_test.rb
vagrant-unbundled-1.8.1.1 test/unit/plugins/guests/windows/cap/change_host_name_test.rb
vagrant-cloudstack-1.1.0 vendor/bundle/bundler/gems/vagrant-1cf2a8db4ccb/test/unit/plugins/guests/windows/cap/change_host_name_test.rb
vagrant-cloudstack-1.1.0 vendor/bundle/bundler/gems/vagrant-272fb27e0536/test/unit/plugins/guests/windows/cap/change_host_name_test.rb
vagrant-cloudstack-1.1.0 vendor/bundle/bundler/gems/vagrant-309e896975d1/test/unit/plugins/guests/windows/cap/change_host_name_test.rb
vagrant-cloudstack-1.1.0 vendor/bundle/bundler/gems/vagrant-b421af58e8b3/test/unit/plugins/guests/windows/cap/change_host_name_test.rb