1
0
mirror of https://github.com/lancedikson/bowser synced 2024-10-27 20:34:22 +00:00

Fix strict mode logic

This commit is contained in:
Nir Rattner 2016-07-06 17:01:02 -04:00
parent bb200a8fb0
commit 65dfb0918c
2 changed files with 13 additions and 5 deletions

View File

@ -524,9 +524,7 @@
if (minVersions.hasOwnProperty(browser)) { if (minVersions.hasOwnProperty(browser)) {
if (_bowser[browser]) { if (_bowser[browser]) {
// browser version and min supported version. // browser version and min supported version.
if (compareVersions([version, minVersions[browser]]) < 0) { return compareVersions([version, minVersions[browser]]) < 0;
return true; // unsupported
}
} }
} }
} }
@ -540,8 +538,8 @@
* @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
* @return {Boolean} * @return {Boolean}
*/ */
function check(minVersions, strictMode) { function check(minVersions, strictMode, ua) {
return !isUnsupportedBrowser(minVersions, strictMode); return !isUnsupportedBrowser(minVersions, strictMode, ua);
} }
bowser.isUnsupportedBrowser = isUnsupportedBrowser; bowser.isUnsupportedBrowser = isUnsupportedBrowser;

View File

@ -112,11 +112,21 @@ describe('Unsupported browser check', function() {
assert.equal(unsupported, false); assert.equal(unsupported, false);
}); });
it('should be passed by #isUnsupportedBrowser for IE10.6 and for IE10 miminal version specified in strict mode', function() {
var unsupported = browser.isUnsupportedBrowser({msie: "10"}, true, this.ie10_6);
assert.equal(unsupported, false);
});
it('should NOT be passed by #check for IE10.6 and for IE11 miminal version specified', function() { it('should NOT be passed by #check for IE10.6 and for IE11 miminal version specified', function() {
var supported = browser.check({msie: "11"}, this.ie10_6); var supported = browser.check({msie: "11"}, this.ie10_6);
assert.equal(supported, false); assert.equal(supported, false);
}); });
it('should NOT be passed by #check for IE10.6 and for IE11 miminal version specified in strict mode', function() {
var supported = browser.check({msie: "11"}, true, this.ie10_6);
assert.equal(supported, false);
});
it('should be passed by #check for IE10.6 when version was not specified', function() { it('should be passed by #check for IE10.6 when version was not specified', function() {
var supported = browser.check({}, this.ie10_6); var supported = browser.check({}, this.ie10_6);
assert.equal(supported, true); assert.equal(supported, true);