Sha256: 136b5d877283941ea62d4a39535fca56f1abe801711f30c5a4b50d1d471e6e03

Contents?: true

Size: 1.98 KB

Versions: 30

Compression:

Stored size: 1.98 KB

Contents

require_relative 'test_helper'

describe 'ping' do
  let(:standard_response_services) do
    {
      'katello_agent' =>
        {'status' => 'ok', 'message' => '0 Processed, 0 Failed', 'duration_ms' => '34'},
      'foreman_tasks' =>
        {'status' => 'ok', 'duration_ms' => '34'},
      'candlepin' => {'status' => 'ok', 'duration_ms' => '34'},
      'candlepin_events' =>
        {'status' => 'ok', 'message' => '0 Processed, 0 Failed', 'duration_ms' => '34'},
      'candlepin_auth' =>
        {'status' => 'ok', 'duration_ms' => '34'},
      'katello_events' =>
        {'status' => 'ok', 'message' => '0 Processed, 0 Failed', 'duration_ms' => '34'},
      'pulp3' =>
        {'status' => 'ok', 'duration_ms' => '34'},
      'pulp3_content' =>
        {'status' => 'ok', 'duration_ms' => '34'}
    }
  end
  let(:standard_response) do
    {
      'status' => 'ok',
      'services' => standard_response_services
    }
  end
  let(:standard_response_keys) do
    %w(katello_agent foreman_tasks candlepin candlepin_events
       candlepin_auth katello_events pulp3 pulp3_content).sort
  end
  let(:hammer_ping) { %w(ping katello) }

  it 'does not require authentication' do
    api_expects(:ping, :index).returns(standard_response)

    run_cmd(hammer_ping)
  end

  it "includes all keys" do
    api_expects(:ping, :index).returns(standard_response)

    result = JSON.parse(run_cmd(%w(--output=json ping katello))&.out)&.first&.keys&.sort
    expected = standard_response_keys

    assert_equal result, expected
  end

  it "skips katello_agent if not included in API response" do
    response_without_katello_agent = {
      'status' => 'ok',
      'services' => standard_response_services.select { |k, _v| k != 'katello_agent' }
    }
    api_expects(:ping, :index).returns(response_without_katello_agent)
    result = JSON.parse(run_cmd(%w(--output=json ping katello))&.out)&.first&.keys&.sort
    expected = standard_response_keys.select { |k| k != 'katello_agent' }

    assert_equal result, expected
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
hammer_cli_katello-1.16.1 test/functional/ping_test.rb
hammer_cli_katello-1.15.0 test/functional/ping_test.rb
hammer_cli_katello-1.14.3 test/functional/ping_test.rb
hammer_cli_katello-1.14.2 test/functional/ping_test.rb
hammer_cli_katello-1.14.0 test/functional/ping_test.rb
hammer_cli_katello-1.14.1 test/functional/ping_test.rb
hammer_cli_katello-1.12.0 test/functional/ping_test.rb
hammer_cli_katello-1.11.2 test/functional/ping_test.rb
hammer_cli_katello-1.11.1 test/functional/ping_test.rb
hammer_cli_katello-1.11.0 test/functional/ping_test.rb
hammer_cli_katello-1.10.1 test/functional/ping_test.rb
hammer_cli_katello-1.10.0 test/functional/ping_test.rb
hammer_cli_katello-1.8.3 test/functional/ping_test.rb
hammer_cli_katello-1.8.2 test/functional/ping_test.rb
hammer_cli_katello-1.9.1 test/functional/ping_test.rb
hammer_cli_katello-1.9.0 test/functional/ping_test.rb
hammer_cli_katello-1.8.1 test/functional/ping_test.rb
hammer_cli_katello-1.7.3 test/functional/ping_test.rb
hammer_cli_katello-1.8.0 test/functional/ping_test.rb
hammer_cli_katello-1.7.2 test/functional/ping_test.rb