Sha256: c97361c801131dd7384c0f45e6bada635f7608994ac9222e0f31fb63795c9e60

Contents?: true

Size: 1.3 KB

Versions: 5

Compression:

Stored size: 1.3 KB

Contents

require 'spec_helper'

require 'cloud_shaped/sns_methods'

describe CloudShaped::SnsMethods do

  include described_class

  describe "#sns_topic" do

    context "with an email address" do

      it "generates an email resource" do
        output = sns_topic("root@example.com")
        expect(output).to eq(
          "Type" => "AWS::SNS::Topic",
          "Properties" => {
            "Subscription" => [
              { "Protocol" => "email", "Endpoint" => "root@example.com" }
            ]
          }
        )
      end

    end

    context "with an HTTP URL" do

      it "generates a webhook" do
        output = sns_topic("http://example.com/hitme")
        expect(output).to eq(
          "Type" => "AWS::SNS::Topic",
          "Properties" => {
            "Subscription" => [
              { "Protocol" => "HTTP", "Endpoint" => "http://example.com/hitme" }
            ]
          }
        )
      end

    end

    context "with an HTTPS URL" do

      it "generates a webhook" do
        output = sns_topic("https://example.com/hitme")
        expect(output).to eq(
          "Type" => "AWS::SNS::Topic",
          "Properties" => {
            "Subscription" => [
              { "Protocol" => "HTTPS", "Endpoint" => "https://example.com/hitme" }
            ]
          }
        )
      end

    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
cloud_shaped-0.1.2 spec/cloud_shaped/sns_methods_spec.rb
cloud_shaped-0.1.1 spec/cloud_shaped/sns_methods_spec.rb
cloud_shaped-0.1.0 spec/cloud_shaped/sns_methods_spec.rb
cloud_shaped-0.0.2 spec/cloud_shaped/sns_methods_spec.rb
cloud_shaped-0.0.1 spec/cloud_shaped/sns_methods_spec.rb