Add unit coverage for ExpectationResult

This commit is contained in:
Davis W. Frank & Rajan Agaskar
2012-11-29 12:17:43 -08:00
parent 08f5a8c98f
commit dfed37531e
5 changed files with 57 additions and 1 deletions

View File

@@ -508,6 +508,7 @@ jasmine.util.extend = function(destination, source) {
return destination;
};
//TODO: expectation result may make more sense as a presentation of an expectation.
jasmine.ExpectationResult = function(params) {
this.type = 'expect';
this.matcherName = params.matcherName;

View File

@@ -0,0 +1,53 @@
describe("ExpectationResult", function() {
it("defaults to passed", function() {
var result = new jasmine.ExpectationResult({passed: 'some-value'});
expect(result.passed()).toBe('some-value');
});
it("#toString returns message", function() {
var result = new jasmine.ExpectationResult({message: 'some-value'});
expect(result.toString()).toBe('some-value');
});
it("has a type of expect", function() {
var result = new jasmine.ExpectationResult({});
expect(result.type).toBe('expect');
});
it("message defaults to Passed for passing specs", function() {
var result = new jasmine.ExpectationResult({passed: true, message: 'some-value'});
expect(result.message).toBe('Passed.');
});
it("message returns the message for failing specs", function() {
var result = new jasmine.ExpectationResult({passed: false, message: 'some-value'});
expect(result.message).toBe('some-value');
});
it("trace passes trace if exists", function() {
var result = new jasmine.ExpectationResult({trace: 'some-value'});
expect(result.trace).toBe('some-value');
});
it("trace returns a new error if trace is falsy", function() {
var result = new jasmine.ExpectationResult({trace: false});
expect(result.trace).toEqual(jasmine.any(Error));
});
it("matcherName returns passed matcherName", function() {
var result = new jasmine.ExpectationResult({matcherName: 'some-value'});
expect(result.matcherName).toBe('some-value');
});
it("expected returns passed expected", function() {
var result = new jasmine.ExpectationResult({expected: 'some-value'});
expect(result.expected).toBe('some-value');
});
it("actual returns passed actual", function() {
var result = new jasmine.ExpectationResult({actual: 'some-value'});
expect(result.actual).toBe('some-value');
});
});

View File

@@ -29,6 +29,7 @@
<script type="text/javascript" src=".././spec/core/CustomMatchersSpec.js"></script>
<script type="text/javascript" src=".././spec/core/EnvSpec.js"></script>
<script type="text/javascript" src=".././spec/core/ExceptionsSpec.js"></script>
<script type="text/javascript" src=".././spec/core/ExpectationResultSpec.js"></script>
<script type="text/javascript" src=".././spec/core/JsApiReporterSpec.js"></script>
<script type="text/javascript" src=".././spec/core/MatchersSpec.js"></script>
<script type="text/javascript" src=".././spec/core/MockClockSpec.js"></script>

View File

@@ -1,3 +1,4 @@
//TODO: expectation result may make more sense as a presentation of an expectation.
jasmine.ExpectationResult = function(params) {
this.type = 'expect';
this.matcherName = params.matcherName;

View File

@@ -26,4 +26,4 @@ class JasmineDev < Thor
end
end
end
end
end