Method: PluginManagerCliInstall#test_install_from_gemfile

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

#test_install_from_gemfileObject



401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
# File 'lib/plugins/inspec-plugin-manager-cli/test/functional/inspec-plugin_test.rb', line 401

def test_install_from_gemfile
  fixture_gemfile_path = File.join(core_fixture_plugins_path, "inspec-test-fixture", "pkg", "inspec-test-fixture-0.1.0.gem")
  install_result = run_inspec_process_with_this_plugin("plugin install #{fixture_gemfile_path}", post_run: list_after_run)

  assert_empty install_result.stderr
  assert_equal 0, install_result.exit_status, "Exit status should be 0"

  success_message = install_result.stdout.split("\n").grep(/installed/).last
  refute_nil success_message, "Should find a success message at the end"
  assert_includes success_message, "inspec-test-fixture"
  assert_includes success_message, "0.1.0"
  assert_includes success_message, "installed from local .gem file"

  list_result = install_result.payload.list_result
  itf_line = list_result.stdout.split("\n").grep(/inspec-test-fixture/).first
  refute_nil itf_line, "inspec-test-fixture should now appear in the output of inspec list"
  assert_match(/\s*inspec-test-fixture\s+0.1.0\s+gem\s+/, itf_line, "list output should show that it is a gem installation with version")
end