diff --git a/lib/mappings.js b/lib/mappings.js index 7ff31adf4917aef5ac336feefef85be5546e6609..3dd1172189e622716ee956814c91772db257b9ee 100644 --- a/lib/mappings.js +++ b/lib/mappings.js @@ -83,6 +83,7 @@ var mappings = { // Microsoft Ajax CDN 'ajax.aspnetcdn.com': { '/ajax/': { + 'jQuery/jquery-{version}.': resources.jQuery, 'jquery/jquery-{version}.': resources.jQuery, 'modernizr/modernizr-{version}.': resources.modernizr } @@ -90,6 +91,7 @@ var mappings = { // Microsoft Ajax CDN [Deprecated] 'ajax.microsoft.com': { '/ajax/': { + 'jQuery/jquery-{version}.': resources.jQuery, 'jquery/jquery-{version}.': resources.jQuery, 'modernizr/modernizr-{version}.': resources.modernizr } diff --git a/lib/request-analyzer.js b/lib/request-analyzer.js index 30ce6aa98a7dfff87af8a0826fcd0483b4398c51..feef4c23ae74d5cfb38d23d85ec2630f4f23e00c 100644 --- a/lib/request-analyzer.js +++ b/lib/request-analyzer.js @@ -130,7 +130,7 @@ function _findLocalTarget(resourceMappings, basePath, channelPath) { var resourcePath, versionNumber, resourcePattern; - resourcePath = channelPath.replace(basePath, '').toLowerCase(); + resourcePath = channelPath.replace(basePath, ''); versionNumber = resourcePath.match(VERSION_EXPRESSION); resourcePattern = resourcePath.replace(versionNumber, VERSION_PLACEHOLDER); diff --git a/test/test-request-analyzer.js b/test/test-request-analyzer.js index aaf9e465f75fe18f3b7fd703cd22d6ceaf757b02..82e1fc19f5c7d5e6566b8af96c742aaaf47d6414 100644 --- a/test/test-request-analyzer.js +++ b/test/test-request-analyzer.js @@ -128,6 +128,11 @@ exports['test webfont debug library'] = function (assert) { assert.equal(target.path, localPaths.webfont[0], 'Target was determined.'); }; +exports['test case sensitivity rules'] = function (assert) { + var target = requestAnalyzer.getLocalTarget('lib.sinaapp.com', '/js/WebFont/1.0.19/webfont_debug.js'); + assert.equal(target, false, 'Case sensitivity rules were properly enforced.'); +}; + // Google Hosted Libraries exports['test angular on google hosted libraries'] = function (assert) { @@ -187,6 +192,11 @@ exports['test jquery on microsoft ajax cdn'] = function (assert) { assert.equal(target.path, localPaths.jQuery[1], 'Target was determined.'); }; +exports['test lowercase jquery notation on microsoft ajax cdn'] = function (assert) { + var target = requestAnalyzer.getLocalTarget('ajax.aspnetcdn.com', '/ajax/jquery/jquery-1.11.1.min.js'); + assert.equal(target.path, localPaths.jQuery[1], 'Target was determined.'); +}; + exports['test modernizr on microsoft ajax cdn'] = function (assert) { var target = requestAnalyzer.getLocalTarget('ajax.aspnetcdn.com', '/ajax/modernizr/modernizr-2.6.2.js'); assert.equal(target.path, localPaths.modernizr, 'Target was determined.'); @@ -197,6 +207,11 @@ exports['test jquery on old microsoft ajax cdn'] = function (assert) { assert.equal(target.path, localPaths.jQuery[1], 'Target was determined.'); }; +exports['test lowercase jquery notation on old microsoft ajax cdn'] = function (assert) { + var target = requestAnalyzer.getLocalTarget('ajax.microsoft.com', '/ajax/jquery/jquery-1.11.1.min.js'); + assert.equal(target.path, localPaths.jQuery[1], 'Target was determined.'); +}; + exports['test modernizr on old microsoft ajax cdn'] = function (assert) { var target = requestAnalyzer.getLocalTarget('ajax.microsoft.com', '/ajax/modernizr/modernizr-2.6.2.js'); assert.equal(target.path, localPaths.modernizr, 'Target was determined.');