require "rails_helper" describe Budgets::Investments::ContentBlocksComponent do it "is not rendered without a heading" do render_inline Budgets::Investments::ContentBlocksComponent.new(nil) expect(page).not_to be_rendered end it "is not rendered with a heading without custom blocks" do heading = Budget::Heading.new(allow_custom_content: true) render_inline Budgets::Investments::ContentBlocksComponent.new(heading) expect(page).not_to be_rendered end it "is not rendered with a heading with custom blocks in other languages" do heading = create(:budget_heading, allow_custom_content: true) create(:heading_content_block, heading: heading, locale: :es) render_inline Budgets::Investments::ContentBlocksComponent.new(heading) expect(page).not_to be_rendered end it "is not rendered with a heading not allowing custom content" do heading = create(:budget_heading, allow_custom_content: false) create(:heading_content_block, heading: heading, locale: :en) render_inline Budgets::Investments::ContentBlocksComponent.new(heading) expect(page).not_to be_rendered end it "renders content blocks for the current language" do heading = create(:budget_heading, allow_custom_content: true) create(:heading_content_block, heading: heading, locale: :en, body: "
  • Heading block
  • ") render_inline Budgets::Investments::ContentBlocksComponent.new(heading) page.find("ul") do |list| expect(page).to have_css "li", exact_text: "Heading block" end end end