diff --git a/lib/rack/livereload.rb b/lib/rack/livereload.rb index 803c4c5..38b2ef0 100644 --- a/lib/rack/livereload.rb +++ b/lib/rack/livereload.rb @@ -77,7 +77,7 @@ module Rack template = ERB.new(::File.read(::File.expand_path('../../../skel/livereload.html.erb', __FILE__))) if line[']*>/) { |match| %{#{match}#{template.result(binding)}} } + line.gsub!(/]*>/) { |match| %{#{match}#{template.result(binding)}} } end headers["X-Rack-LiveReload"] = '1' diff --git a/spec/rack/livereload_spec.rb b/spec/rack/livereload_spec.rb index 179a5ec..4652732 100644 --- a/spec/rack/livereload_spec.rb +++ b/spec/rack/livereload_spec.rb @@ -107,6 +107,17 @@ describe Rack::LiveReload do end end + context 'in header tags' do + let(:page_html) { "

Just a normal header tag

" } + + let(:body_dom) { Nokogiri::XML(body) } + + it 'should not add the livereload js' do + body_dom.at_css("header")[:class].should == 'hero' + body_dom.css('script').should be_empty + end + end + context 'not vendored' do before do middleware.stubs(:use_vendored?).returns(false)