summaryrefslogtreecommitdiff
path: root/xstatic/pkg/jasmine/data/jasmine-html.js
diff options
context:
space:
mode:
Diffstat (limited to 'xstatic/pkg/jasmine/data/jasmine-html.js')
-rw-r--r--[-rwxr-xr-x]xstatic/pkg/jasmine/data/jasmine-html.js163
1 files changed, 110 insertions, 53 deletions
diff --git a/xstatic/pkg/jasmine/data/jasmine-html.js b/xstatic/pkg/jasmine/data/jasmine-html.js
index bee5a04..da23532 100755..100644
--- a/xstatic/pkg/jasmine/data/jasmine-html.js
+++ b/xstatic/pkg/jasmine/data/jasmine-html.js
@@ -40,6 +40,8 @@ jasmineRequire.HtmlReporter = function(j$) {
createElement = options.createElement,
createTextNode = options.createTextNode,
onRaiseExceptionsClick = options.onRaiseExceptionsClick || function() {},
+ onThrowExpectationsClick = options.onThrowExpectationsClick || function() {},
+ onRandomClick = options.onRandomClick || function() {},
addToExistingQueryString = options.addToExistingQueryString || defaultQueryString,
timer = options.timer || noopTimer,
results = [],
@@ -53,19 +55,17 @@ jasmineRequire.HtmlReporter = function(j$) {
this.initialize = function() {
clearPrior();
htmlReporterMain = createDom('div', {className: 'jasmine_html-reporter'},
- createDom('div', {className: 'banner'},
- createDom('a', {className: 'title', href: 'http://jasmine.github.io/', target: '_blank'}),
- createDom('span', {className: 'version'}, j$.version)
+ createDom('div', {className: 'jasmine-banner'},
+ createDom('a', {className: 'jasmine-title', href: 'http://jasmine.github.io/', target: '_blank'}),
+ createDom('span', {className: 'jasmine-version'}, j$.version)
),
- createDom('ul', {className: 'symbol-summary'}),
- createDom('div', {className: 'alert'}),
- createDom('div', {className: 'results'},
- createDom('div', {className: 'failures'})
+ createDom('ul', {className: 'jasmine-symbol-summary'}),
+ createDom('div', {className: 'jasmine-alert'}),
+ createDom('div', {className: 'jasmine-results'},
+ createDom('div', {className: 'jasmine-failures'})
)
);
getContainer().appendChild(htmlReporterMain);
-
- symbols = find('.symbol-summary');
};
var totalSpecsDefined;
@@ -74,7 +74,7 @@ jasmineRequire.HtmlReporter = function(j$) {
timer.start();
};
- var summary = createDom('div', {className: 'summary'});
+ var summary = createDom('div', {className: 'jasmine-summary'});
var topResults = new j$.ResultsNode({}, '', null),
currentParent = topResults;
@@ -110,8 +110,12 @@ jasmineRequire.HtmlReporter = function(j$) {
specsExecuted++;
}
+ if (!symbols){
+ symbols = find('.jasmine-symbol-summary');
+ }
+
symbols.appendChild(createDom('li', {
- className: noExpectations(result) ? 'empty' : result.status,
+ className: noExpectations(result) ? 'jasmine-empty' : 'jasmine-' + result.status,
id: 'spec_' + result.id,
title: result.fullName
}
@@ -121,18 +125,18 @@ jasmineRequire.HtmlReporter = function(j$) {
failureCount++;
var failure =
- createDom('div', {className: 'spec-detail failed'},
- createDom('div', {className: 'description'},
+ createDom('div', {className: 'jasmine-spec-detail jasmine-failed'},
+ createDom('div', {className: 'jasmine-description'},
createDom('a', {title: result.fullName, href: specHref(result)}, result.fullName)
),
- createDom('div', {className: 'messages'})
+ createDom('div', {className: 'jasmine-messages'})
);
var messages = failure.childNodes[1];
for (var i = 0; i < result.failedExpectations.length; i++) {
var expectation = result.failedExpectations[i];
- messages.appendChild(createDom('div', {className: 'result-message'}, expectation.message));
- messages.appendChild(createDom('div', {className: 'stack-trace'}, expectation.stack));
+ messages.appendChild(createDom('div', {className: 'jasmine-result-message'}, expectation.message));
+ messages.appendChild(createDom('div', {className: 'jasmine-stack-trace'}, expectation.stack));
}
failures.push(failure);
@@ -143,57 +147,106 @@ jasmineRequire.HtmlReporter = function(j$) {
}
};
- this.jasmineDone = function() {
- var banner = find('.banner');
- banner.appendChild(createDom('span', {className: 'duration'}, 'finished in ' + timer.elapsed() / 1000 + 's'));
+ this.jasmineDone = function(doneResult) {
+ var banner = find('.jasmine-banner');
+ var alert = find('.jasmine-alert');
+ var order = doneResult && doneResult.order;
+ alert.appendChild(createDom('span', {className: 'jasmine-duration'}, 'finished in ' + timer.elapsed() / 1000 + 's'));
+
+ banner.appendChild(
+ createDom('div', { className: 'jasmine-run-options' },
+ createDom('span', { className: 'jasmine-trigger' }, 'Options'),
+ createDom('div', { className: 'jasmine-payload' },
+ createDom('div', { className: 'jasmine-exceptions' },
+ createDom('input', {
+ className: 'jasmine-raise',
+ id: 'jasmine-raise-exceptions',
+ type: 'checkbox'
+ }),
+ createDom('label', { className: 'jasmine-label', 'for': 'jasmine-raise-exceptions' }, 'raise exceptions')),
+ createDom('div', { className: 'jasmine-throw-failures' },
+ createDom('input', {
+ className: 'jasmine-throw',
+ id: 'jasmine-throw-failures',
+ type: 'checkbox'
+ }),
+ createDom('label', { className: 'jasmine-label', 'for': 'jasmine-throw-failures' }, 'stop spec on expectation failure')),
+ createDom('div', { className: 'jasmine-random-order' },
+ createDom('input', {
+ className: 'jasmine-random',
+ id: 'jasmine-random-order',
+ type: 'checkbox'
+ }),
+ createDom('label', { className: 'jasmine-label', 'for': 'jasmine-random-order' }, 'run tests in random order'))
+ )
+ ));
+
+ var raiseCheckbox = find('#jasmine-raise-exceptions');
- var alert = find('.alert');
+ raiseCheckbox.checked = !env.catchingExceptions();
+ raiseCheckbox.onclick = onRaiseExceptionsClick;
- alert.appendChild(createDom('span', { className: 'exceptions' },
- createDom('label', { className: 'label', 'for': 'raise-exceptions' }, 'raise exceptions'),
- createDom('input', {
- className: 'raise',
- id: 'raise-exceptions',
- type: 'checkbox'
- })
- ));
- var checkbox = find('#raise-exceptions');
+ var throwCheckbox = find('#jasmine-throw-failures');
+ throwCheckbox.checked = env.throwingExpectationFailures();
+ throwCheckbox.onclick = onThrowExpectationsClick;
- checkbox.checked = !env.catchingExceptions();
- checkbox.onclick = onRaiseExceptionsClick;
+ var randomCheckbox = find('#jasmine-random-order');
+ randomCheckbox.checked = env.randomTests();
+ randomCheckbox.onclick = onRandomClick;
+
+ var optionsMenu = find('.jasmine-run-options'),
+ optionsTrigger = optionsMenu.querySelector('.jasmine-trigger'),
+ optionsPayload = optionsMenu.querySelector('.jasmine-payload'),
+ isOpen = /\bjasmine-open\b/;
+
+ optionsTrigger.onclick = function() {
+ if (isOpen.test(optionsPayload.className)) {
+ optionsPayload.className = optionsPayload.className.replace(isOpen, '');
+ } else {
+ optionsPayload.className += ' jasmine-open';
+ }
+ };
if (specsExecuted < totalSpecsDefined) {
var skippedMessage = 'Ran ' + specsExecuted + ' of ' + totalSpecsDefined + ' specs - run all';
alert.appendChild(
- createDom('span', {className: 'bar skipped'},
+ createDom('span', {className: 'jasmine-bar jasmine-skipped'},
createDom('a', {href: '?', title: 'Run all specs'}, skippedMessage)
)
);
}
var statusBarMessage = '';
- var statusBarClassName = 'bar ';
+ var statusBarClassName = 'jasmine-bar ';
if (totalSpecsDefined > 0) {
statusBarMessage += pluralize('spec', specsExecuted) + ', ' + pluralize('failure', failureCount);
if (pendingSpecCount) { statusBarMessage += ', ' + pluralize('pending spec', pendingSpecCount); }
- statusBarClassName += (failureCount > 0) ? 'failed' : 'passed';
+ statusBarClassName += (failureCount > 0) ? 'jasmine-failed' : 'jasmine-passed';
} else {
- statusBarClassName += 'skipped';
+ statusBarClassName += 'jasmine-skipped';
statusBarMessage += 'No specs found';
}
- alert.appendChild(createDom('span', {className: statusBarClassName}, statusBarMessage));
+ var seedBar;
+ if (order && order.random) {
+ seedBar = createDom('span', {className: 'jasmine-seed-bar'},
+ ', randomized with seed ',
+ createDom('a', {title: 'randomized with seed ' + order.seed, href: seedHref(order.seed)}, order.seed)
+ );
+ }
+
+ alert.appendChild(createDom('span', {className: statusBarClassName}, statusBarMessage, seedBar));
for(i = 0; i < failedSuites.length; i++) {
var failedSuite = failedSuites[i];
for(var j = 0; j < failedSuite.failedExpectations.length; j++) {
var errorBarMessage = 'AfterAll ' + failedSuite.failedExpectations[j].message;
- var errorBarClassName = 'bar errored';
+ var errorBarClassName = 'jasmine-bar jasmine-errored';
alert.appendChild(createDom('span', {className: errorBarClassName}, errorBarMessage));
}
}
- var results = find('.results');
+ var results = find('.jasmine-results');
results.appendChild(summary);
summaryList(topResults, summary);
@@ -203,8 +256,8 @@ jasmineRequire.HtmlReporter = function(j$) {
for (var i = 0; i < resultsTree.children.length; i++) {
var resultNode = resultsTree.children[i];
if (resultNode.type == 'suite') {
- var suiteListNode = createDom('ul', {className: 'suite', id: 'suite-' + resultNode.result.id},
- createDom('li', {className: 'suite-detail'},
+ var suiteListNode = createDom('ul', {className: 'jasmine-suite', id: 'suite-' + resultNode.result.id},
+ createDom('li', {className: 'jasmine-suite-detail'},
createDom('a', {href: specHref(resultNode.result)}, resultNode.result.description)
)
);
@@ -213,8 +266,8 @@ jasmineRequire.HtmlReporter = function(j$) {
domParent.appendChild(suiteListNode);
}
if (resultNode.type == 'spec') {
- if (domParent.getAttribute('class') != 'specs') {
- specListNode = createDom('ul', {className: 'specs'});
+ if (domParent.getAttribute('class') != 'jasmine-specs') {
+ specListNode = createDom('ul', {className: 'jasmine-specs'});
domParent.appendChild(specListNode);
}
var specDescription = resultNode.result.description;
@@ -226,7 +279,7 @@ jasmineRequire.HtmlReporter = function(j$) {
}
specListNode.appendChild(
createDom('li', {
- className: resultNode.result.status,
+ className: 'jasmine-' + resultNode.result.status,
id: 'spec-' + resultNode.result.id
},
createDom('a', {href: specHref(resultNode.result)}, specDescription)
@@ -238,24 +291,24 @@ jasmineRequire.HtmlReporter = function(j$) {
if (failures.length) {
alert.appendChild(
- createDom('span', {className: 'menu bar spec-list'},
+ createDom('span', {className: 'jasmine-menu jasmine-bar jasmine-spec-list'},
createDom('span', {}, 'Spec List | '),
- createDom('a', {className: 'failures-menu', href: '#'}, 'Failures')));
+ createDom('a', {className: 'jasmine-failures-menu', href: '#'}, 'Failures')));
alert.appendChild(
- createDom('span', {className: 'menu bar failure-list'},
- createDom('a', {className: 'spec-list-menu', href: '#'}, 'Spec List'),
+ createDom('span', {className: 'jasmine-menu jasmine-bar jasmine-failure-list'},
+ createDom('a', {className: 'jasmine-spec-list-menu', href: '#'}, 'Spec List'),
createDom('span', {}, ' | Failures ')));
- find('.failures-menu').onclick = function() {
- setMenuModeTo('failure-list');
+ find('.jasmine-failures-menu').onclick = function() {
+ setMenuModeTo('jasmine-failure-list');
};
- find('.spec-list-menu').onclick = function() {
- setMenuModeTo('spec-list');
+ find('.jasmine-spec-list-menu').onclick = function() {
+ setMenuModeTo('jasmine-spec-list');
};
- setMenuModeTo('failure-list');
+ setMenuModeTo('jasmine-failure-list');
- var failureNode = find('.failures');
+ var failureNode = find('.jasmine-failures');
for (var i = 0; i < failures.length; i++) {
failureNode.appendChild(failures[i]);
}
@@ -313,6 +366,10 @@ jasmineRequire.HtmlReporter = function(j$) {
return addToExistingQueryString('spec', result.fullName);
}
+ function seedHref(seed) {
+ return addToExistingQueryString('seed', seed);
+ }
+
function defaultQueryString(key, value) {
return '?' + key + '=' + value;
}