Commit 0c639b24 authored by Ash McKenzie's avatar Ash McKenzie

Merge branch 'sh-fix-piwik-template' into 'master'

Fix Piwik not working

Closes #66627

See merge request gitlab-org/gitlab-ce!32234
parents 452b5d60 f6058981
...@@ -11,5 +11,5 @@ ...@@ -11,5 +11,5 @@
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s); g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})(); })();
<noscript><p><img src="//#{extra_config.piwik_url}/piwik.php?idsite=#{extra_config.piwik_site_id}" style="border:0;" alt="" /></p></noscript> <noscript><p><img src="//#{extra_config.piwik_url}/piwik.php?idsite=#{extra_config.piwik_site_id}" style="border:0;" alt="" /></p></noscript>
<!-- End Piwik Code --> <!-- End Piwik Code -->
---
title: Fix Piwik not working
merge_request: 32234
author:
type: fixed
require 'spec_helper' require 'spec_helper'
describe 'layouts/_head' do describe 'layouts/_head' do
include StubConfiguration
before do before do
allow(view).to receive(:current_application_settings).and_return(Gitlab::CurrentSettings.current_application_settings) allow(view).to receive(:current_application_settings).and_return(Gitlab::CurrentSettings.current_application_settings)
end end
...@@ -87,6 +89,24 @@ describe 'layouts/_head' do ...@@ -87,6 +89,24 @@ describe 'layouts/_head' do
end end
end end
context 'when a Piwik config is set' do
let(:piwik_host) { 'piwik.example.com' }
before do
stub_config(extra: {
piwik_url: piwik_host,
piwik_site_id: 12345
})
end
it 'add a Piwik Javascript' do
render
expect(rendered).to match(/<script.*>.*var u="\/\/#{piwik_host}\/".*<\/script>/m)
expect(rendered).to match(%r(<noscript>.*<img src="//#{piwik_host}/piwik.php.*</noscript>))
end
end
def stub_helper_with_safe_string(method) def stub_helper_with_safe_string(method)
allow_any_instance_of(PageLayoutHelper).to receive(method) allow_any_instance_of(PageLayoutHelper).to receive(method)
.and_return(%q{foo" http-equiv="refresh}.html_safe) .and_return(%q{foo" http-equiv="refresh}.html_safe)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment