opds-web-client
Version:
42 lines (41 loc) • 1.74 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var file_1 = require("./../file");
var chai_1 = require("chai");
describe("file utils", function () {
/**
* All lowercase
* Appends the extension
* Replaces characters
* handles empty extension
* handles empty filename
*/
describe("generateFilename", function () {
var str = "MyFileNameWoopee";
var ext = ".pdf";
it("appends extension", function () {
var result = (0, file_1.generateFilename)(str, ext);
(0, chai_1.expect)(result).to.equal("myfilenamewoopee.pdf");
});
it("converts to lowercase", function () {
var result = (0, file_1.generateFilename)(str, ext);
(0, chai_1.expect)(result).to.equal("myfilenamewoopee.pdf");
});
it("replaces non a-z 0-9 chars with -", function () {
var result = (0, file_1.generateFilename)("this!file*is%gonna$fail#unless:these@are^all)removed", ".pdf");
(0, chai_1.expect)(result).to.equal("this-file-is-gonna-fail-unless-these-are-all-removed.pdf");
});
it("removes trailing and leading -s ", function () {
var result = (0, file_1.generateFilename)("-test-", ".pdf");
(0, chai_1.expect)(result).to.equal("test.pdf");
});
it("handles empty filename", function () {
var result = (0, file_1.generateFilename)("", ".ext");
(0, chai_1.expect)(result).to.equal(".ext");
});
it("handles empty extension", function () {
var result = (0, file_1.generateFilename)("test", "");
(0, chai_1.expect)(result).to.equal("test");
});
});
});
;