mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
fdescribe / fit can be used to focus specs manually
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
nakedLoad 'jasmine'
|
||||
nakedLoad 'jasmine-html'
|
||||
nakedLoad 'jasmine-focused'
|
||||
|
||||
$ = require 'jquery'
|
||||
coffeekup = require 'coffeekup'
|
||||
@@ -16,8 +17,7 @@ trivialReporter = new jasmine.TrivialReporter(document, 'jasmine_runner')
|
||||
|
||||
jasmineEnv.addReporter(trivialReporter)
|
||||
|
||||
jasmineEnv.specFilter = (spec) ->
|
||||
return trivialReporter.specFilter(spec)
|
||||
jasmineEnv.specFilter = (spec) -> trivialReporter.specFilter(spec)
|
||||
|
||||
require 'spec-suite'
|
||||
jasmineEnv.execute()
|
||||
|
||||
38
vendor/jasmine-focused.js
vendored
Normal file
38
vendor/jasmine-focused.js
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
var fdescribe = function(description, specDefinitions) {
|
||||
jasmine.getEnv().focus = true
|
||||
var suite = describe(description, specDefinitions);
|
||||
suite.focus = true;
|
||||
return suite;
|
||||
};
|
||||
|
||||
var fit = function(description, definition) {
|
||||
jasmine.getEnv().focus = true
|
||||
var spec = it(description, definition);
|
||||
spec.focus = true;
|
||||
return spec;
|
||||
};
|
||||
|
||||
var fSpecFilter = function(specOrSuite) {
|
||||
if (!jasmine.getEnv().focus) return true;
|
||||
if (specOrSuite.focus) return true;
|
||||
|
||||
var parent = specOrSuite.parentSuite || specOrSuite.suite;
|
||||
if (!parent) return false;
|
||||
return fSpecFilter(parent);
|
||||
}
|
||||
|
||||
jasmine.TrivialReporter.prototype.specFilter = function(spec) {
|
||||
var paramMap = {};
|
||||
var params = this.getLocation().search.substring(1).split('&');
|
||||
for (var i = 0; i < params.length; i++) {
|
||||
var p = params[i].split('=');
|
||||
paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
|
||||
}
|
||||
|
||||
if (!paramMap.spec && !jasmine.getEnv().focus) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return (spec.getFullName().indexOf(paramMap.spec) === 0) || fSpecFilter(spec);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user