Method: PluginManagerCliInstall#test_fail_install_from_path_when_it_is_already_installed

Defined in:
lib/plugins/inspec-plugin-manager-cli/test/functional/inspec-plugin_test.rb

#test_fail_install_from_path_when_it_is_already_installedObject



366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
# File 'lib/plugins/inspec-plugin-manager-cli/test/functional/inspec-plugin_test.rb', line 366

def test_fail_install_from_path_when_it_is_already_installed
  plugin_path = File.join(core_fixture_plugins_path, "inspec-test-fixture", "lib", "inspec-test-fixture.rb")
  pre_block = Proc.new do |plugin_data, _tmp_dir|
    plugin_data["plugins"] << {
      "name" => "inspec-test-fixture",
      "installation_type" => "path",
      "installation_path" => plugin_path,
    }
  end

  install_result = run_inspec_process_with_this_plugin("plugin install #{plugin_path}", pre_run: pre_block)
  assert_empty install_result.stderr
  assert_equal 2, install_result.exit_status, "Exit status on second install should be 2"

  error_message = install_result.stdout.split("\n").last
  assert_includes error_message, "Plugin already installed"
  assert_includes error_message, "inspec-test-fixture"
  assert_includes error_message, "Use 'inspec plugin list' to see previously installed plugin"
  assert_includes error_message, "installation failed"
end