Sha256: 359027db99307dcf65a9790131fb932f8f506c892df9fbf850202e66b72c92ea

Contents?: true

Size: 1.76 KB

Versions: 8

Compression:

Stored size: 1.76 KB

Contents

require 'rails_helper'

RSpec.describe 'Element management', type: :feature do
  before(:each) do
    @design = import_design
    @newsletter = FactoryGirl.create(:newsletter, design: @design)
  end

  it "creates an element with valid attributes", js: true do
    #visit newsletter.edit_design_path(@design)
    ['Text','Textarea','Inlineasset'].each do |type|
      visit "/newsletter/designs/#{@design.id}/edit"
      click_link "Manage Elements", match: :first
      click_link "New Newsletter Element", match: :first
      fill_in "Name", with: "Bobo's #{type} Element"
      fill_in "HTML code", with: "<%= bobo_text %>"
      click_link "Add Field"
      within(:css, ".fields") do
        fill_in "Name", with: "bobo_text"
        fill_in "Label", with: "Bobo Text"
        select type, from: "Type"
      end
      check @design.areas.first.name
      click_button "Submit"
      Debugging::wait_until_success do
        @design.reload
        element = @design.elements.detect{|e| e.name.eql?("Bobo's #{type} Element")}
        expect(element.html_text).to eq("<%= bobo_text %>")
        expect(element.fields.length).to eq(1)
        expect(element.areas.length).to eq(1)
        text_field = element.fields.first
        expect(text_field.name).to eq 'bobo_text'
        expect(text_field.label).to eq 'Bobo Text'
      end
    end
  end

  it "has javascript on the editor" do
    visit "/newsletters/#{@newsletter.id}/editor" 
    expect(page.body).to include('<script')
  end

  it "has javascript available in public" do
    visit "/newsletters/#{@newsletter.id}/editor" 
    expect(page.body).to include('<script')
  end
  
  it "does not have javascript available in email" do
    visit "/newsletters/#{@newsletter.id}/email" 
    expect(page.body).not_to include('<script')
  end
  
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
newsletter-3.2.22.0 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.7 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.6 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.5 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.4 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.2 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.1 spec/test_app/spec/features/newsletter/element_spec.rb
newsletter-3.2.0 spec/test_app/spec/features/newsletter/element_spec.rb