Sha256: e172e05e7dec014476ef5e24df6b338aa690fe420006aab3d7728eb5ca9aac15

Contents?: true

Size: 1.77 KB

Versions: 4

Compression:

Stored size: 1.77 KB

Contents

require File.expand_path '../../test_helper', __dir__

# Test class for Check for Zone Request
class TestCheckForZone < Minitest::Test
  def setup
    @service = Fog::DNS::AzureRM.new(credentials)
    @zones = @service.zones
    @token_provider = Fog::Credentials::AzureRM.instance_variable_get(:@token_provider)
  end

  def test_check_for_zone_success
    response = ApiStub::Requests::DNS::Zone.zone_response
    @token_provider.stub :get_authentication_header, 'Bearer <some-token>' do
      RestClient.stub :get, response do
        assert @service.check_for_zone('fog-test-rg', 'fog-test-zone')
      end
    end
  end

  def test_check_for_zone_success_if_not_found
    response = -> { fail RestClient::Exception.new('{"error": {"code": "ResourceNotFound"}}') }
    @token_provider.stub :get_authentication_header, response do
      assert !@service.check_for_zone('fog-test-rg', 'fog-test-zone')
    end
  end

  def test_check_for_zone_success_if_not_found_failure
    response = -> { fail RestClient::Exception.new('{"error": {"code": "InvalidCode"}}') }
    @token_provider.stub :get_authentication_header, response do
      assert_raises Exception do
        @service.check_for_zone('fog-test-rg', 'fog-test-zone')
      end
    end
  end

  def test_check_for_zone_failure
    @token_provider.stub :get_authentication_header, 'Bearer <some-token>' do
      assert_raises ArgumentError do
        @service.check_for_zone('fog-test-rg')
      end
    end
  end

  def test_check_for_zone_exception
    response = -> { fail Exception.new('mocked exception') }
    @token_provider.stub :get_authentication_header, response do
      assert_raises Exception do
        @service.check_for_zone('fog-test-rg', 'fog-test-zone')
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fog-azure-rm-0.0.8 test/requests/dns/test_check_for_zone.rb
fog-azure-rm-0.0.6 test/requests/dns/test_check_for_zone.rb
fog-azure-rm-0.0.5 test/requests/dns/test_check_for_zone.rb
fog-azure-rm-0.0.4 test/requests/dns/test_check_for_zone.rb