Sha256: 9d6ae3b3ed2cd8cf5a5e65b49ee907439ffb4850b8f900021fb9af406b399ef8

Contents?: true

Size: 1.42 KB

Versions: 42

Compression:

Stored size: 1.42 KB

Contents

require 'spec_helper'

describe Locomotive::Steam::Liquid::Drops::Page do

  describe '#editable_elements' do

    let(:source) { <<-EOF
  <h1>{{ page.editable_elements.content.header.title }}</h1>
  {% block content %}
    {% block header %}
      {% editable_text title %}Hello world{% endeditable_text %}
    {% endblock %}
  {% endblock %}
  EOF
    }

    let(:elements)  { nil }
    let(:page)      { instance_double('Page', localized_attributes: [], fullpath: 'index', editable_elements: elements) }
    let(:drop)      { described_class.new(page) }
    let(:services)  { Locomotive::Steam::Services.build_instance }
    let(:context)   { ::Liquid::Context.new({ 'page' => drop }, {}, { page: page, services: services }, true) }

    subject { render_template(source, context, { page: page, default_editable_content: {} }) }

    it { is_expected.to match /<h1>Hello world<\/h1>/ }

    context 'content updated by an user' do

      let(:elements) { [instance_double('EditableText', block: 'content/header', slug: 'title', content: 'Bonjour le monde', :base_url= => nil, localized_attributes: [], format: 'raw')] }

      before do
        services.locale = :en
        services.repositories.current_site = instance_double('Site', default_locale: :en)
        allow(services.repositories.page).to receive(:editable_elements_of).and_return(elements)
      end

      it { is_expected.to match /<h1>Bonjour le monde<\/h1>/ }

    end

  end

end

Version data entries

42 entries across 42 versions & 1 rubygems

Version Path
locomotivecms_steam-1.8.0.alpha2 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.8.0.alpha1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.7.1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.7.0 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.6.1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.6.0 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.6.0.rc1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.6.0.beta1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.3 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.2 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0.rc1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0.rc0 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0.beta3 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0.beta2 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.5.0.beta1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.4.1 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.4.0 spec/integration/liquid/drops/page_spec.rb
locomotivecms_steam-1.4.0.rc2 spec/integration/liquid/drops/page_spec.rb