Sha256: f176a4b6f981611187cc93d4f9f48ff2914a39b2bfffba795bb157bb07e6adfd

Contents?: true

Size: 1.9 KB

Versions: 120

Compression:

Stored size: 1.9 KB

Contents

describe Appsignal::EventFormatter::ActionView::RenderFormatter do
  let(:klass) { Appsignal::EventFormatter::ActionView::RenderFormatter }

  if DependencyHelper.rails_present?
    require "action_view"

    context "when in a Rails app" do
      let(:formatter) { klass.new }
      before { allow(Rails.root).to receive(:to_s).and_return("/var/www/app/20130101") }

      it "registers render_partial.action_view and render_template.action_view" do
        expect(Appsignal::EventFormatter.registered?("render_partial.action_view",
          klass)).to be_truthy
        expect(Appsignal::EventFormatter.registered?("render_template.action_view",
          klass)).to be_truthy
      end

      describe "#root_path" do
        subject { formatter.root_path }

        it "returns Rails root path" do
          is_expected.to eq "/var/www/app/20130101/"
        end
      end

      describe "#format" do
        subject { formatter.format(payload) }

        context "with an identifier" do
          let(:payload) { { :identifier => "/var/www/app/20130101/app/views/home/index/html.erb" } }

          it { is_expected.to eq ["app/views/home/index/html.erb", nil] }
        end

        context "with a frozen identifier" do
          let(:payload) do
            { :identifier => "/var/www/app/20130101/app/views/home/index/html.erb".freeze }
          end

          it { is_expected.to eq ["app/views/home/index/html.erb", nil] }
        end

        context "without an identifier" do
          let(:payload) { {} }

          it { is_expected.to be_nil }
        end
      end
    end
  else
    context "when not in a Rails app" do
      it "does not register the event formatter" do
        expect(Appsignal::EventFormatter.registered?("render_partial.action_view",
          klass)).to be_falsy
        expect(Appsignal::EventFormatter.registered?("render_template.action_view",
          klass)).to be_falsy
      end
    end
  end
end

Version data entries

120 entries across 120 versions & 1 rubygems

Version Path
appsignal-4.0.6-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.6 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.5-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.5 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.4-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.4 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.3-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.3 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.2-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.2 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.1-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.1 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.0-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.0 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-3.13.1-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-3.13.1 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-3.13.1.alpha.1-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-3.13.1.alpha.1 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.0.beta.2-java spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb
appsignal-4.0.0.beta.2 spec/lib/appsignal/event_formatter/action_view/render_formatter_spec.rb