From 0dd445bf186c71ee1213f31dca603f333039cb0f Mon Sep 17 00:00:00 2001 From: Yury Delendik Date: Sat, 23 Jun 2012 15:35:59 -0500 Subject: [PATCH] Fixes unit tests and adds few for util.js --- src/util.js | 13 ++++++---- test/unit/api_spec.js | 2 +- test/unit/unit_test.html | 1 + test/unit/util_spec.js | 51 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 62 insertions(+), 5 deletions(-) create mode 100644 test/unit/util_spec.js diff --git a/src/util.js b/src/util.js index 75190f653..ad915b03f 100644 --- a/src/util.js +++ b/src/util.js @@ -57,6 +57,8 @@ function assert(cond, msg) { error(msg); } +// Combines two URLs. The baseUrl shall be absolute URL. If the url is an +// absolute URL, it will be returned as is. function combineUrl(baseUrl, url) { if (url.indexOf(':') >= 0) return url; @@ -67,10 +69,13 @@ function combineUrl(baseUrl, url) { return baseUrl.substring(0, i) + url; } else { // relative path - var i = baseUrl.lastIndexOf('#'); - i = baseUrl.lastIndexOf('?', i < 0 ? baseUrl.length : i); - i = baseUrl.lastIndexOf('/', i < 0 ? baseUrl.length : i); - return baseUrl.substring(0, i + 1) + url; + var pathLength = baseUrl.length, i; + i = baseUrl.lastIndexOf('#'); + pathLength = i >= 0 ? i : pathLength; + i = baseUrl.lastIndexOf('?', pathLength); + pathLength = i >= 0 ? i : pathLength; + var prefixLength = baseUrl.lastIndexOf('/', pathLength); + return baseUrl.substring(0, prefixLength + 1) + url; } } PDFJS.combineUrl = combineUrl; diff --git a/test/unit/api_spec.js b/test/unit/api_spec.js index 5b068fbb9..e1e0a318d 100644 --- a/test/unit/api_spec.js +++ b/test/unit/api_spec.js @@ -6,7 +6,7 @@ describe('api', function() { // TODO run with worker enabled PDFJS.disableWorker = true; - var basicApiUrl = '../pdfs/basicapi.pdf'; + var basicApiUrl = combineUrl(window.location.href, '../pdfs/basicapi.pdf'); function waitsForPromise(promise) { waitsFor(function() { return promise.isResolved || promise.isRejected; diff --git a/test/unit/unit_test.html b/test/unit/unit_test.html index ca0a1aed1..0291f1a0f 100644 --- a/test/unit/unit_test.html +++ b/test/unit/unit_test.html @@ -43,6 +43,7 @@ +