Sha256: 158d24caa2a378943177e04338333d8c473f7472ba58e23e95c9f3e866bcddb0

Contents?: true

Size: 1.02 KB

Versions: 2

Compression:

Stored size: 1.02 KB

Contents

# frozen_string_literal: true
require 'spec_helper'

RSpec.describe 'JavaScript filter rendering', type: :render do
  it 'renders javascript filter' do
    expect(render_string(<<HAML)).to eq("<div>\n<script>\n  alert('hello');\n</script>\n<span>world</span>\n</div>\n")
%div
  :javascript
    alert('hello');
  %span world
HAML
  end

  it 'keeps indent' do
    expect(render_string(<<HAML)).to eq("<div>\n<script>\n  alert('hello');\n  \n      alert('world');\n</script>\n</div>\n")
%div
  :javascript
    alert('hello');

        alert('world');
HAML
  end

  it 'ignores empty filter' do
    expect(render_string(<<HAML)).to eq("<div>\n<span>world</span>\n</div>\n")
%div
  :javascript
  %span world
HAML
  end

  it 'parses string interpolation' do
    expect(render_string(<<'HAML')).to eq("<script>\n  var x = 3;\n</script>\n")
:javascript
  var x = #{1 + 2};
HAML
  end

  it "doesn't escape in string interpolation" do
    expect(render_string(<<'HAML')).to eq("<script>\n  <span/>\n</script>\n")
:javascript
  #{'<span/>'}
HAML
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
faml-0.8.1 spec/render/filters/javascript_spec.rb
faml-0.8.0 spec/render/filters/javascript_spec.rb