From 459ff799478c1d04f5ef4eaa13d834fda036a2fd Mon Sep 17 00:00:00 2001 From: Stuart Knightley Date: Wed, 30 Mar 2022 11:42:13 -0700 Subject: [PATCH] Add tests for utils that remove leading slash --- test/asserts/utils.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 test/asserts/utils.js diff --git a/test/asserts/utils.js b/test/asserts/utils.js new file mode 100644 index 00000000..2a094b8c --- /dev/null +++ b/test/asserts/utils.js @@ -0,0 +1,20 @@ +/* global QUnit,JSZip,JSZipTestUtils */ +'use strict'; + +var utils = require("../../lib/utils"); + +QUnit.module("utils"); + +QUnit.test("Paths are resolved correctly", function (assert) { + assert.strictEqual(utils.resolve("root\\a\\b"), "root/a/b"); + assert.strictEqual(utils.resolve("root/a/b"), "root/a/b"); + assert.strictEqual(utils.resolve("root/a/.."), "root"); + assert.strictEqual(utils.resolve("root/a/../b"), "root/b"); + assert.strictEqual(utils.resolve("root/a/./b"), "root/a/b"); + assert.strictEqual(utils.resolve("root/../../../"), ""); + assert.strictEqual(utils.resolve("////"), ""); + assert.strictEqual(utils.resolve("/a/b/c"), "a/b/c"); + assert.strictEqual(utils.resolve("a/b/c/"), "a/b/c/"); + assert.strictEqual(utils.resolve("../../../../../a"), "a"); + assert.strictEqual(utils.resolve("../app.js"), "app.js"); +});