jasmine-core
Advanced tools
Comparing version 2.3.4 to 2.4.0
{ | ||
"name": "jasmine-core", | ||
"version": "2.3.4", | ||
"homepage": "http://jasmine.github.io", | ||
@@ -5,0 +4,0 @@ "authors": [ |
# Developing for Jasmine Core | ||
We welcome your contributions! Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists before starting work. What you're looking for may already have been done. If it hasn't, the community can help make your contribution better. | ||
We welcome your contributions! Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists before starting work. What you're looking for may already have been done. If it hasn't, the community can help make your contribution better. If you want to contribute but don't know what to work on, [issues tagged ready for work](https://github.com/jasmine/jasmine/labels/ready%20for%20work) should have enough detail to get started. | ||
@@ -85,7 +85,7 @@ ## Links | ||
...will install all of the node modules locally. If when you run | ||
...will install all of the node modules locally. Now run | ||
$ grunt | ||
...you see that JSHint runs your system is ready. | ||
...if you see that JSHint runs, your system is ready. | ||
@@ -109,3 +109,3 @@ ### How to write new Jasmine code | ||
$ rake jasmine | ||
$ bundle exec rake jasmine | ||
@@ -112,0 +112,0 @@ ...and then visit `http://localhost:8888` to run specs. |
@@ -80,2 +80,10 @@ /* | ||
var random = queryString.getParam("random"); | ||
env.randomizeTests(random); | ||
var seed = queryString.getParam("seed"); | ||
if (seed) { | ||
env.seed(seed); | ||
} | ||
/** | ||
@@ -89,2 +97,3 @@ * ## Reporters | ||
onThrowExpectationsClick: function() { queryString.navigateWithNewParam("throwFailures", !env.throwingExpectationFailures()); }, | ||
onRandomClick: function() { queryString.navigateWithNewParam("random", !env.randomTests()); }, | ||
addToExistingQueryString: function(key, value) { return queryString.fullStringWithNewParam(key, value); }, | ||
@@ -91,0 +100,0 @@ getContainer: function() { return document.body; }, |
@@ -44,2 +44,3 @@ /* | ||
onThrowExpectationsClick = options.onThrowExpectationsClick || function() {}, | ||
onRandomClick = options.onRandomClick || function() {}, | ||
addToExistingQueryString = options.addToExistingQueryString || defaultQueryString, | ||
@@ -58,15 +59,13 @@ timer = options.timer || noopTimer, | ||
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'); | ||
}; | ||
@@ -80,3 +79,3 @@ | ||
var summary = createDom('div', {className: 'summary'}); | ||
var summary = createDom('div', {className: 'jasmine-summary'}); | ||
@@ -117,4 +116,8 @@ var topResults = new j$.ResultsNode({}, '', null), | ||
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, | ||
@@ -129,7 +132,7 @@ title: result.fullName | ||
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'}) | ||
); | ||
@@ -140,4 +143,4 @@ var messages = failure.childNodes[1]; | ||
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)); | ||
} | ||
@@ -153,29 +156,37 @@ | ||
this.jasmineDone = function() { | ||
var banner = find('.banner'); | ||
var alert = find('.alert'); | ||
alert.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: 'run-options' }, | ||
createDom('span', { className: 'trigger' }, 'Options'), | ||
createDom('div', { className: 'payload' }, | ||
createDom('div', { className: 'exceptions' }, | ||
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: 'raise', | ||
id: 'raise-exceptions', | ||
className: 'jasmine-raise', | ||
id: 'jasmine-raise-exceptions', | ||
type: 'checkbox' | ||
}), | ||
createDom('label', { className: 'label', 'for': 'raise-exceptions' }, 'raise exceptions')), | ||
createDom('div', { className: 'throw-failures' }, | ||
createDom('label', { className: 'jasmine-label', 'for': 'jasmine-raise-exceptions' }, 'raise exceptions')), | ||
createDom('div', { className: 'jasmine-throw-failures' }, | ||
createDom('input', { | ||
className: 'throw', | ||
id: 'throw-failures', | ||
className: 'jasmine-throw', | ||
id: 'jasmine-throw-failures', | ||
type: 'checkbox' | ||
}), | ||
createDom('label', { className: 'label', 'for': 'throw-failures' }, 'stop spec on expectation failure')) | ||
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('#raise-exceptions'); | ||
var raiseCheckbox = find('#jasmine-raise-exceptions'); | ||
@@ -185,11 +196,15 @@ raiseCheckbox.checked = !env.catchingExceptions(); | ||
var throwCheckbox = find('#throw-failures'); | ||
var throwCheckbox = find('#jasmine-throw-failures'); | ||
throwCheckbox.checked = env.throwingExpectationFailures(); | ||
throwCheckbox.onclick = onThrowExpectationsClick; | ||
var optionsMenu = find('.run-options'), | ||
optionsTrigger = optionsMenu.querySelector('.trigger'), | ||
optionsPayload = optionsMenu.querySelector('.payload'), | ||
isOpen = /\bopen\b/; | ||
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() { | ||
@@ -199,3 +214,3 @@ if (isOpen.test(optionsPayload.className)) { | ||
} else { | ||
optionsPayload.className += ' open'; | ||
optionsPayload.className += ' jasmine-open'; | ||
} | ||
@@ -207,3 +222,3 @@ }; | ||
alert.appendChild( | ||
createDom('span', {className: 'bar skipped'}, | ||
createDom('span', {className: 'jasmine-bar jasmine-skipped'}, | ||
createDom('a', {href: '?', title: 'Run all specs'}, skippedMessage) | ||
@@ -214,3 +229,3 @@ ) | ||
var statusBarMessage = ''; | ||
var statusBarClassName = 'bar '; | ||
var statusBarClassName = 'jasmine-bar '; | ||
@@ -220,10 +235,18 @@ if (totalSpecsDefined > 0) { | ||
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++) { | ||
@@ -233,3 +256,3 @@ var failedSuite = failedSuites[i]; | ||
var errorBarMessage = 'AfterAll ' + failedSuite.failedExpectations[j].message; | ||
var errorBarClassName = 'bar errored'; | ||
var errorBarClassName = 'jasmine-bar jasmine-errored'; | ||
alert.appendChild(createDom('span', {className: errorBarClassName}, errorBarMessage)); | ||
@@ -239,3 +262,3 @@ } | ||
var results = find('.results'); | ||
var results = find('.jasmine-results'); | ||
results.appendChild(summary); | ||
@@ -250,4 +273,4 @@ | ||
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) | ||
@@ -261,4 +284,4 @@ ) | ||
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); | ||
@@ -275,3 +298,3 @@ } | ||
createDom('li', { | ||
className: resultNode.result.status, | ||
className: 'jasmine-' + resultNode.result.status, | ||
id: 'spec-' + resultNode.result.id | ||
@@ -288,20 +311,20 @@ }, | ||
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++) { | ||
@@ -364,2 +387,6 @@ failureNode.appendChild(failures[i]); | ||
function seedHref(seed) { | ||
return addToExistingQueryString('seed', seed); | ||
} | ||
function defaultQueryString(key, value) { | ||
@@ -366,0 +393,0 @@ return '?' + key + '=' + value; |
{ | ||
"name": "jasmine-core", | ||
"license": "MIT", | ||
"version": "2.3.4", | ||
"version": "2.4.0", | ||
"repository": { | ||
@@ -22,3 +22,3 @@ "type": "git", | ||
"devDependencies": { | ||
"glob": "~3.2.9", | ||
"glob": "~5.0.13", | ||
"grunt": "~0.4.1", | ||
@@ -30,3 +30,3 @@ "grunt-cli": "^0.1.13", | ||
"grunt-contrib-jshint": "~0.7.0", | ||
"jasmine": "https://github.com/jasmine/jasmine-npm/archive/master.tar.gz", | ||
"jasmine": "git://github.com/jasmine/jasmine-npm.git", | ||
"load-grunt-tasks": "^0.4.0", | ||
@@ -33,0 +33,0 @@ "shelljs": "~0.1.4", |
<a name="README">[<img src="https://rawgithub.com/jasmine/jasmine/master/images/jasmine-horizontal.svg" width="400px" />](http://jasmine.github.io)</a> | ||
[![Build Status](https://travis-ci.org/jasmine/jasmine.png?branch=master)](https://travis-ci.org/jasmine/jasmine) [![Code Climate](https://codeclimate.com/github/pivotal/jasmine.png)](https://codeclimate.com/github/pivotal/jasmine) | ||
[![Build Status](https://travis-ci.org/jasmine/jasmine.svg?branch=master)](https://travis-ci.org/jasmine/jasmine) | ||
[![Code Climate](https://codeclimate.com/github/pivotal/jasmine.svg)](https://codeclimate.com/github/pivotal/jasmine) | ||
@@ -41,8 +42,10 @@ ======= | ||
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-2.0.0/jasmine_favicon.png"> | ||
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-2.0.0/jasmine.css"> | ||
```html | ||
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-2.0.0/jasmine_favicon.png"> | ||
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-2.0.0/jasmine.css"> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine.js"></script> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine-html.js"></script> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/boot.js"></script> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine.js"></script> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine-html.js"></script> | ||
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/boot.js"></script> | ||
``` | ||
@@ -49,0 +52,0 @@ ## Supported environments |
@@ -18,3 +18,3 @@ # How to work on a Jasmine Release | ||
The current version lives in the file `/package.json`. This version will be the version number that is currently released. When releasing a new version, update `package.json` and `bower.json` with the new version and `grunt build:copyVersionToGem` to update the gem version number. | ||
The current version lives in the file `/package.json`. This version will be the version number that is currently released. When releasing a new version, update `package.json` with the new version and `grunt build:copyVersionToGem` to update the gem version number. | ||
@@ -21,0 +21,0 @@ This version is used by both `jasmine.js` and the `jasmine-core` Ruby gem. |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
196740
33
4248
77