Sha256: 093fd31afdae9a37a2acbc7cd74b69d95c82d97127dc583dc6cf6a907b41f895

Contents?: true

Size: 1.29 KB

Versions: 17

Compression:

Stored size: 1.29 KB

Contents

module Fog
  class Vcloud
    module Terremark
      class Ecloud

        class Real
          basic_request :get_network_extensions
        end

        class Mock

          def get_network_extensions(network_uri)
            network_uri = ensure_unparsed(network_uri)
            type = "application/vnd.vmware.vcloud.network+xml"
            response = Excon::Response.new
            if network = mock_data[:organizations].map { |org| org[:vdcs].map { |vdc| vdc[:networks] } }.flatten.detect { |network| network[:extension_href] == network_uri }
              xml = Builder::XmlMarkup.new
              mock_it 200,
                xml.Network(:xmlns => "urn:tmrk:eCloudExtensions-2.3", :"xmlns:i" => "http://www.w3.org/2001/XMLSchema-instance") {
                  xml.Address(network[:name].split("/")[0])
                  xml.RnatAddress(network[:rnat])
                  xml.Href(network[:extension_href])
                  xml.Id(network[:id])
                  xml.Name(network[:name])
                  xml.GatewayAddress(network[:gateway])
                  xml.BroadcastAddress(IPAddr.new(network[:subnet]).to_range.last.to_s)
                }, { 'Content-Type' => type }
            else
              mock_error 200, "401 Unauthorized"
            end
          end
        end
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
fog-0.3.16 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.15 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.14 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.13 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.12 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.11 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.10 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.9 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.8 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.7 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.6 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.5 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.4 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.3 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.2 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.1 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb
fog-0.3.0 lib/fog/vcloud/terremark/ecloud/requests/get_network_extensions.rb