|
| 1 | +import { getCompleteExtname } from "app-builder-lib/out/util/filename" |
| 2 | + |
| 3 | +// [inputFilename, expectedExtname] |
| 4 | +const tests = [ |
| 5 | + ["Foo-v1.exe.blockmap", ".exe.blockmap"], |
| 6 | + ["Foo-1.0.0.dmg.blockmap", ".dmg.blockmap"], |
| 7 | + ["Foo-v1.0.0.exe.blockmap", ".exe.blockmap"], |
| 8 | + ["Foo-1.0.0-mac.zip.blockmap", ".zip.blockmap"], |
| 9 | + ["Foo-1.0.0.exe", ".exe"], |
| 10 | + ["foo-1.0.0.exe", ".exe"], |
| 11 | + ["foo.bar-1.0.0.dmg", ".dmg"], |
| 12 | + ["Foo-2.0.0.rc1.dmg", ".dmg"], |
| 13 | + ["Foo-1.0.0-mac.dmg", ".dmg"], |
| 14 | + ["Foo-v1.0.0.zip", ".zip"], |
| 15 | + ["Foo-1.0.0.tar.gz", ".tar.gz"], |
| 16 | + ["Foo-1.0.0.tar.7z", ".tar.7z"], |
| 17 | + ["Foo-1.0.0.7z", ".7z"], |
| 18 | + ["Foo-1.0.0.test.7z", ".7z"], |
| 19 | + ["Foo-1.0.0.tar.xz", ".tar.xz"], |
| 20 | + ["Foo-1.0.0.tar.lz", ".tar.lz"], |
| 21 | + ["Foo-1.0.0.tar.bz2", ".tar.bz2"], |
| 22 | + ["Foo.v2.tar.bz2", ".tar.bz2"], |
| 23 | + ["Foo-v1.0.0.tar.bz2", ".tar.bz2"], |
| 24 | + ["Application.test.dmg", ".dmg"], |
| 25 | + ["Program.1.0.0.beta1.exe", ".exe"], |
| 26 | + ["application.dmg", ".dmg"], |
| 27 | + ["latest.yml", ".yml"], |
| 28 | + [".gitignore", ""], |
| 29 | + [".config.yml", ".yml"], |
| 30 | + ["code.h", ".h"], |
| 31 | +] |
| 32 | + |
| 33 | +describe("getCompleteExtname", () => { |
| 34 | + for (const [filename, expected] of tests) { |
| 35 | + test(`get complete extname for ${filename}`, () => { |
| 36 | + const extname = getCompleteExtname(filename) |
| 37 | + |
| 38 | + expect(extname).toBe(expected) |
| 39 | + }) |
| 40 | + } |
| 41 | +}) |
0 commit comments