diff --git a/lib/jasmine-core/jasmine-html.js b/lib/jasmine-core/jasmine-html.js index 90407cc0..a33e6c17 100644 --- a/lib/jasmine-core/jasmine-html.js +++ b/lib/jasmine-core/jasmine-html.js @@ -210,7 +210,7 @@ jasmineRequire.HtmlReporter = function(j$) { if (specsExecuted < totalSpecsDefined) { var skippedMessage = 'Ran ' + specsExecuted + ' of ' + totalSpecsDefined + ' specs - run all'; - var skippedLink = order && order.random ? '?random=true' : '?'; + var skippedLink = addToExistingQueryString('spec', ''); alert.appendChild( createDom('span', {className: 'jasmine-bar jasmine-skipped'}, createDom('a', {href: skippedLink, title: 'Run all specs'}, skippedMessage) diff --git a/spec/html/HtmlReporterSpec.js b/spec/html/HtmlReporterSpec.js index 723ef8b7..7047ea56 100644 --- a/spec/html/HtmlReporterSpec.js +++ b/spec/html/HtmlReporterSpec.js @@ -691,14 +691,15 @@ describe("New HtmlReporter", function() { expect(seedBar).toBeNull(); }); - it("should include the random query param in the jasmine-skipped link when randomizing", function(){ + it("should include non-spec query params in the jasmine-skipped link when present", function(){ var env = new jasmineUnderTest.Env(), container = document.createElement("div"), reporter = new jasmineUnderTest.HtmlReporter({ env: env, getContainer: function() { return container; }, createElement: function() { return document.createElement.apply(document, arguments); }, - createTextNode: function() { return document.createTextNode.apply(document, arguments); } + createTextNode: function() { return document.createTextNode.apply(document, arguments); }, + addToExistingQueryString: function(key, value) { return "?foo=bar&" + key + "=" + value; } }); reporter.initialize(); @@ -706,25 +707,7 @@ describe("New HtmlReporter", function() { reporter.jasmineDone({ order: { random: true } }); var skippedLink = container.querySelector(".jasmine-skipped a"); - expect(skippedLink.getAttribute('href')).toEqual('?random=true'); - }); - - it("should not include the random query param in the jasmine-skipped link when not randomizing", function(){ - var env = new jasmineUnderTest.Env(), - container = document.createElement("div"), - reporter = new jasmineUnderTest.HtmlReporter({ - env: env, - getContainer: function() { return container; }, - createElement: function() { return document.createElement.apply(document, arguments); }, - createTextNode: function() { return document.createTextNode.apply(document, arguments); } - }); - - reporter.initialize(); - reporter.jasmineStarted({ totalSpecsDefined: 1 }); - reporter.jasmineDone(); - - var skippedLink = container.querySelector(".jasmine-skipped a"); - expect(skippedLink.getAttribute('href')).toEqual('?'); + expect(skippedLink.getAttribute('href')).toEqual('?foo=bar&spec='); }); }); diff --git a/src/html/HtmlReporter.js b/src/html/HtmlReporter.js index 80f68f26..02a9e1ce 100644 --- a/src/html/HtmlReporter.js +++ b/src/html/HtmlReporter.js @@ -181,7 +181,7 @@ jasmineRequire.HtmlReporter = function(j$) { if (specsExecuted < totalSpecsDefined) { var skippedMessage = 'Ran ' + specsExecuted + ' of ' + totalSpecsDefined + ' specs - run all'; - var skippedLink = order && order.random ? '?random=true' : '?'; + var skippedLink = addToExistingQueryString('spec', ''); alert.appendChild( createDom('span', {className: 'jasmine-bar jasmine-skipped'}, createDom('a', {href: skippedLink, title: 'Run all specs'}, skippedMessage)