Sha256: dd0583a67a875c3a661fe40d8d255a6acb41f501d4352c5b94c631d79ffb8efa

Contents?: true

Size: 1.54 KB

Versions: 52

Compression:

Stored size: 1.54 KB

Contents

require_relative "./active_support_notifications/instrument_shared_examples"

describe Appsignal::Hooks::ActiveSupportNotificationsHook do
  if active_support_present?
    let(:notifier) { ActiveSupport::Notifications::Fanout.new }
    let(:as) { ActiveSupport::Notifications }
    let!(:transaction) do
      Appsignal::Transaction.create("uuid", Appsignal::Transaction::HTTP_REQUEST, "test")
    end
    before :context do
      start_agent
    end
    before do
      as.notifier = notifier
    end

    describe "#dependencies_present?" do
      subject { described_class.new.dependencies_present? }

      it { is_expected.to be_truthy }
    end

    it_behaves_like "activesupport instrument override"

    if defined?(::ActiveSupport::Notifications::Fanout::Handle)
      require_relative "./active_support_notifications/start_finish_shared_examples"

      it_behaves_like "activesupport start finish override"
    end

    if ::ActiveSupport::Notifications::Instrumenter.method_defined?(:start)
      require_relative "./active_support_notifications/start_finish_shared_examples"

      it_behaves_like "activesupport start finish override"
    end

    if ::ActiveSupport::Notifications::Instrumenter.method_defined?(:finish_with_state)
      require_relative "./active_support_notifications/finish_with_state_shared_examples"

      it_behaves_like "activesupport finish_with_state override"
    end
  else
    describe "#dependencies_present?" do
      subject { described_class.new.dependencies_present? }

      it { is_expected.to be_falsy }
    end
  end
end

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
appsignal-3.9.2-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.9.2 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.9.1-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.9.1 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.9.0-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.9.0 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.8.1-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.8.1 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.8.0-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.8.0 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.6-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.6 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.2-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.2 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.1-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.1 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.0-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.7.0 spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.6.5-java spec/lib/appsignal/hooks/active_support_notifications_spec.rb
appsignal-3.6.5 spec/lib/appsignal/hooks/active_support_notifications_spec.rb