Add jasmine.Reporter no-op base class for reporters.
This commit is contained in:
2
Rakefile
2
Rakefile
@@ -2,7 +2,7 @@ desc 'Builds lib/jasmine from source'
|
|||||||
task :build do
|
task :build do
|
||||||
|
|
||||||
# these files must be better
|
# these files must be better
|
||||||
sources = ["src/base.js", "src/util.js", "src/Env.js"]
|
sources = ["src/base.js", "src/util.js", "src/Env.js", "src/ActionCollection.js", "src/Reporter.js"]
|
||||||
|
|
||||||
sources += Dir.glob('src/*.js').reject{|f| sources.include?(f)}
|
sources += Dir.glob('src/*.js').reject{|f| sources.include?(f)}
|
||||||
|
|
||||||
|
|||||||
@@ -569,7 +569,8 @@ jasmine.util.argsToArray = function(args) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Environment for Jasmine
|
* Environment for Jasmine
|
||||||
* @
|
*
|
||||||
|
* @constructor
|
||||||
*/
|
*/
|
||||||
jasmine.Env = function() {
|
jasmine.Env = function() {
|
||||||
this.currentSpec = null;
|
this.currentSpec = null;
|
||||||
@@ -597,7 +598,7 @@ jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a reporter to receive status updates from Jasmine.
|
* Register a reporter to receive status updates from Jasmine.
|
||||||
* @param {Object} reporter An object which will receive status updates.
|
* @param {jasmine.Reporter} reporter An object which will receive status updates.
|
||||||
*/
|
*/
|
||||||
jasmine.Env.prototype.addReporter = function(reporter) {
|
jasmine.Env.prototype.addReporter = function(reporter) {
|
||||||
this.reporter.addReporter(reporter);
|
this.reporter.addReporter(reporter);
|
||||||
@@ -844,6 +845,29 @@ jasmine.ActionCollection.prototype.waitForDone = function(action) {
|
|||||||
}
|
}
|
||||||
}, 150);
|
}, 150);
|
||||||
};
|
};
|
||||||
|
/** No-op base class for Jasmine reporters.
|
||||||
|
*
|
||||||
|
* @constructor
|
||||||
|
*/
|
||||||
|
jasmine.Reporter = function() {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportRunnerResults = function(runner) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportSuiteResults = function(suite) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportSpecResults = function(spec) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.log = function (str) {
|
||||||
|
};
|
||||||
|
|
||||||
jasmine.Matchers = function(env, actual, results) {
|
jasmine.Matchers = function(env, actual, results) {
|
||||||
this.env = env;
|
this.env = env;
|
||||||
this.actual = actual;
|
this.actual = actual;
|
||||||
@@ -1280,6 +1304,7 @@ window.clearInterval = function(timeoutKey) {
|
|||||||
jasmine.MultiReporter = function() {
|
jasmine.MultiReporter = function() {
|
||||||
this.subReporters_ = [];
|
this.subReporters_ = [];
|
||||||
};
|
};
|
||||||
|
jasmine.util.inherit(jasmine.MultiReporter, jasmine.Reporter);
|
||||||
|
|
||||||
jasmine.MultiReporter.prototype.addReporter = function(reporter) {
|
jasmine.MultiReporter.prototype.addReporter = function(reporter) {
|
||||||
this.subReporters_.push(reporter);
|
this.subReporters_.push(reporter);
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
<script type="text/javascript" src="../src/util.js"></script>
|
<script type="text/javascript" src="../src/util.js"></script>
|
||||||
<script type="text/javascript" src="../src/Env.js"></script>
|
<script type="text/javascript" src="../src/Env.js"></script>
|
||||||
<script type="text/javascript" src="../src/ActionCollection.js"></script>
|
<script type="text/javascript" src="../src/ActionCollection.js"></script>
|
||||||
|
<script type="text/javascript" src="../src/Reporter.js"></script>
|
||||||
<script type="text/javascript" src="../src/Matchers.js"></script>
|
<script type="text/javascript" src="../src/Matchers.js"></script>
|
||||||
<script type="text/javascript" src="../src/MultiReporter.js"></script>
|
<script type="text/javascript" src="../src/MultiReporter.js"></script>
|
||||||
<script type="text/javascript" src="../src/NestedResults.js"></script>
|
<script type="text/javascript" src="../src/NestedResults.js"></script>
|
||||||
@@ -22,11 +23,11 @@
|
|||||||
<script type="text/javascript" src="../src/mock-timeout.js"></script>
|
<script type="text/javascript" src="../src/mock-timeout.js"></script>
|
||||||
|
|
||||||
<script type="text/javascript" src="../lib/TrivialReporter.js"></script>
|
<script type="text/javascript" src="../lib/TrivialReporter.js"></script>
|
||||||
<script type="text/javascript" src="../lib/json_reporter.js"></script>
|
|
||||||
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
jasmine.include('suites/ExceptionsTest.js', true);
|
jasmine.include('suites/ExceptionsTest.js', true);
|
||||||
|
jasmine.include('suites/EnvTest.js', true);
|
||||||
jasmine.include('suites/JsonReporterTest.js', true);
|
jasmine.include('suites/JsonReporterTest.js', true);
|
||||||
jasmine.include('suites/MatchersTest.js', true);
|
jasmine.include('suites/MatchersTest.js', true);
|
||||||
jasmine.include('suites/MultiReporterTest.js', true);
|
jasmine.include('suites/MultiReporterTest.js', true);
|
||||||
|
|||||||
21
spec/suites/EnvTest.js
Normal file
21
spec/suites/EnvTest.js
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
describe("jasmine.Env", function() {
|
||||||
|
describe("reporting", function() {
|
||||||
|
var env;
|
||||||
|
var fakeReporter;
|
||||||
|
|
||||||
|
beforeEach(function() {
|
||||||
|
env = new jasmine.Env();
|
||||||
|
fakeReporter = jasmine.createSpyObj("fakeReporter", ["log"]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it("should allow reporters to be registered", function() {
|
||||||
|
env.addReporter(fakeReporter);
|
||||||
|
env.reporter.log("message");
|
||||||
|
expect(fakeReporter.log).wasCalledWith("message");
|
||||||
|
});
|
||||||
|
|
||||||
|
xit("should report when the tests start running", function() {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
describe("MultiReporter", function() {
|
describe("jasmine.MultiReporter", function() {
|
||||||
it("should delegate to any and all subreporters", function() {
|
it("should delegate to any and all subreporters", function() {
|
||||||
var multiReporter = new jasmine.MultiReporter();
|
var multiReporter = new jasmine.MultiReporter();
|
||||||
var fakeReporter1 = jasmine.createSpyObj("fakeReporter1", ["reportSpecResults"]);
|
var fakeReporter1 = jasmine.createSpyObj("fakeReporter1", ["reportSpecResults"]);
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
/**
|
/**
|
||||||
* Environment for Jasmine
|
* Environment for Jasmine
|
||||||
* @
|
*
|
||||||
|
* @constructor
|
||||||
*/
|
*/
|
||||||
jasmine.Env = function() {
|
jasmine.Env = function() {
|
||||||
this.currentSpec = null;
|
this.currentSpec = null;
|
||||||
@@ -28,7 +29,7 @@ jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a reporter to receive status updates from Jasmine.
|
* Register a reporter to receive status updates from Jasmine.
|
||||||
* @param {Object} reporter An object which will receive status updates.
|
* @param {jasmine.Reporter} reporter An object which will receive status updates.
|
||||||
*/
|
*/
|
||||||
jasmine.Env.prototype.addReporter = function(reporter) {
|
jasmine.Env.prototype.addReporter = function(reporter) {
|
||||||
this.reporter.addReporter(reporter);
|
this.reporter.addReporter(reporter);
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
jasmine.MultiReporter = function() {
|
jasmine.MultiReporter = function() {
|
||||||
this.subReporters_ = [];
|
this.subReporters_ = [];
|
||||||
};
|
};
|
||||||
|
jasmine.util.inherit(jasmine.MultiReporter, jasmine.Reporter);
|
||||||
|
|
||||||
jasmine.MultiReporter.prototype.addReporter = function(reporter) {
|
jasmine.MultiReporter.prototype.addReporter = function(reporter) {
|
||||||
this.subReporters_.push(reporter);
|
this.subReporters_.push(reporter);
|
||||||
|
|||||||
23
src/Reporter.js
Normal file
23
src/Reporter.js
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
/** No-op base class for Jasmine reporters.
|
||||||
|
*
|
||||||
|
* @constructor
|
||||||
|
*/
|
||||||
|
jasmine.Reporter = function() {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportRunnerResults = function(runner) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportSuiteResults = function(suite) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.reportSpecResults = function(spec) {
|
||||||
|
};
|
||||||
|
|
||||||
|
//noinspection JSUnusedLocalSymbols
|
||||||
|
jasmine.Reporter.prototype.log = function (str) {
|
||||||
|
};
|
||||||
|
|
||||||
Reference in New Issue
Block a user