Merge pull request #264 from dburt/master
Change toBeCloseTo matcher to be more consistent
This commit is contained in:
@@ -1445,10 +1445,7 @@ jasmine.Matchers.prototype.toBeCloseTo = function(expected, precision) {
|
||||
if (!(precision === 0)) {
|
||||
precision = precision || 2;
|
||||
}
|
||||
var multiplier = Math.pow(10, precision);
|
||||
var actual = Math.round(this.actual * multiplier);
|
||||
expected = Math.round(expected * multiplier);
|
||||
return expected == actual;
|
||||
return Math.abs(expected - this.actual) < (Math.pow(10, -precision) / 2);
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -2537,5 +2534,5 @@ jasmine.version_= {
|
||||
"major": 1,
|
||||
"minor": 2,
|
||||
"build": 0,
|
||||
"revision": 1337006083
|
||||
"revision": 1343710612
|
||||
};
|
||||
|
||||
@@ -510,6 +510,11 @@ describe("jasmine.Matchers", function() {
|
||||
expect(-1.23).not.toBeCloseTo(-1.24);
|
||||
});
|
||||
|
||||
it("expects close numbers to 'be close' and further numbers not to", function() {
|
||||
expect(1.225).not.toBeCloseTo(1.234); // difference is 0.009
|
||||
expect(1.225).toBeCloseTo(1.224); // difference is 0.001
|
||||
});
|
||||
|
||||
it("accepts an optional precision argument", function() {
|
||||
expect(1).toBeCloseTo(1.1, 0);
|
||||
expect(1.2).toBeCloseTo(1.23, 1);
|
||||
|
||||
@@ -302,10 +302,7 @@ jasmine.Matchers.prototype.toBeCloseTo = function(expected, precision) {
|
||||
if (!(precision === 0)) {
|
||||
precision = precision || 2;
|
||||
}
|
||||
var multiplier = Math.pow(10, precision);
|
||||
var actual = Math.round(this.actual * multiplier);
|
||||
expected = Math.round(expected * multiplier);
|
||||
return expected == actual;
|
||||
return Math.abs(expected - this.actual) < (Math.pow(10, -precision) / 2);
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,5 +3,5 @@ jasmine.version_= {
|
||||
"major": 1,
|
||||
"minor": 2,
|
||||
"build": 0,
|
||||
"revision": 1337006083
|
||||
"revision": 1343710612
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user