Only injects code into the first occurrence of <head> tags
This commit is contained in:
parent
952ea670dd
commit
3c58d4b0c0
|
@ -71,7 +71,7 @@ module Rack
|
|||
|
||||
@new_body.each do |line|
|
||||
if !@livereload_added && line['<head']
|
||||
line.gsub!(HEAD_TAG_REGEX) { |match| %{#{match}#{template.result(binding)}} }
|
||||
line.sub!(HEAD_TAG_REGEX) { |match| %{#{match}#{template.result(binding)}} }
|
||||
|
||||
@livereload_added = true
|
||||
end
|
||||
|
@ -109,4 +109,3 @@ module Rack
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -21,6 +21,7 @@ Gem::Specification.new do |s|
|
|||
|
||||
# specify any dependencies here; for example:
|
||||
s.add_development_dependency "rspec"
|
||||
s.add_development_dependency "rspec-its"
|
||||
s.add_development_dependency "cucumber"
|
||||
s.add_development_dependency "httparty"
|
||||
s.add_development_dependency "sinatra"
|
||||
|
|
|
@ -15,7 +15,7 @@ describe Rack::LiveReload::BodyProcessor do
|
|||
end
|
||||
|
||||
it 'responds false when no head tag' do
|
||||
regex.match("<header></header>").should be_false
|
||||
regex.match("<header></header>").should be_falsey
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -143,6 +143,14 @@ describe Rack::LiveReload::BodyProcessor do
|
|||
end
|
||||
end
|
||||
|
||||
context 'in document with more than one reference to a head tag' do
|
||||
let(:page_html) { "<head><head><!-- <head></head> -->" }
|
||||
|
||||
it 'should not add the livereload js' do
|
||||
processed_body.should include == "<!-- <head></head> -->"
|
||||
end
|
||||
end
|
||||
|
||||
context 'not vendored' do
|
||||
before do
|
||||
processor.stubs(:use_vendored?).returns(false)
|
||||
|
|
|
@ -14,7 +14,7 @@ describe Rack::LiveReload::ProcessingSkipAnalyzer do
|
|||
|
||||
describe '#skip_processing?' do
|
||||
it "should skip processing" do
|
||||
subject.skip_processing?.should be_true
|
||||
subject.skip_processing?.should be_truthy
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ describe Rack::LiveReload do
|
|||
end
|
||||
|
||||
it 'should return the js file' do
|
||||
middleware._call(env).should be_true
|
||||
middleware._call(env).should be_truthy
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,9 +1,14 @@
|
|||
require 'mocha/api'
|
||||
require 'webmock/rspec'
|
||||
require 'rspec/its'
|
||||
|
||||
require 'rack-livereload'
|
||||
|
||||
RSpec.configure do |c|
|
||||
c.expect_with :rspec do |config|
|
||||
config.syntax = :should
|
||||
end
|
||||
|
||||
c.mock_with :mocha
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue