From b06309bfc94cfccf42eaeb5068f5a933eeb14b43 Mon Sep 17 00:00:00 2001 From: Liran Tal Date: Sun, 23 May 2021 22:49:34 +0300 Subject: [PATCH] test: colocate test fixtures within the repo (#4) --- .dccache | 1 - .gitignore | 6 + __tests__/__fixtures__/simple-project.zip | Bin 0 -> 21226 bytes __tests__/app.test.js | 34 ++- package-lock.json | 324 +++++++++++++++++++++- package.json | 6 +- 6 files changed, 345 insertions(+), 26 deletions(-) delete mode 100644 .dccache create mode 100644 __tests__/__fixtures__/simple-project.zip diff --git a/.dccache b/.dccache deleted file mode 100644 index ee6aa6e..0000000 --- a/.dccache +++ /dev/null @@ -1 +0,0 @@ -{"/Users/lirantal/projects/forks/snync/.prettierrc.js":[157,1621275679621.9116,"f2ca19283eccfd19e0e131f6bed854180b2790b4ef8058476fac6b4080a0e81e"],"/Users/lirantal/projects/forks/snync/index.js":[64,1621275679621.9502,"35558ff1e547d1f9acc107cba79d1d3038daae96429e7e4c1b04c9768865bf28"],"/Users/lirantal/projects/forks/snync/__tests__/app.test.js":[58,1621275679621.6755,"de1efd0f62cb76d50425a835acd8cc195453b61f71569d27265e44e6617e0b4b"],"/Users/lirantal/projects/forks/snync/src/index.js":[34,1621275679621.7317,"ac13991093efce1485ecbfa7fa9fa75895e04161fd015d3699fbd07179e829ec"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/index.html":[4715,1621328814802.477,"5ab5e31afec67940e3c5b7d3f80124ff61c8bd241838a838edd74dfac363352c"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/index.js.html":[3208,1621328814805.1885,"eec116b0bd58616abb0e74fae9ab34c1dcd71460c9593dcc3391606707cf45d0"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/index.html":[4124,1621328814803.2366,"9e9aefbd99a024630c2de5dfd42fa05d2e9480a181b7a845eeb353f4181ee648"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/src/index.html":[6094,1621328814805.8948,"04d0f18812c9e9f4868ecac17c7f4c7029ea5e5515f26b609fb17d792101fc16"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/src/index.js.html":[3237,1621328814812.7495,"b34395f358cd80a40d6a05a7c59d9f36e30a04e0e2c3d412d407ac2a135b64c3"],"/Users/lirantal/projects/forks/snync/src/RegistryClient.js":[826,1621328799624.4553,"0fc65464d551d9e0378abd769a329d13c17fa4f3b27b5aa68ac59563fbcda832"],"/Users/lirantal/projects/forks/snync/src/RepoManager.js":[3526,1621328799645.5537,"68b653b7711d09743039fa4e6fe0d6ac10f6ed9368e4525fd9bc4df760d3f2ba"],"/Users/lirantal/projects/forks/snync/bin/snync.js":[3035,1621328799377.967,"9dcce10b1bc3990b116e7021f286b0c42d33c287e96ffc66a3f6a1c712d2b8fb"],"/Users/lirantal/projects/forks/snync/src/Parser.js":[2133,1621328799613.888,"1dc7c8165d44434fb7399be2d5404e13477a65d04d81e0255cf0b1d937c0f5aa"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/src/Parser.js.html":[14896,1621328814808.104,"b9638e6fc69cb848b0300a210cea1056a2a4e4913fb5d63fb764dc338b3a1f2a"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/src/RepoManager.js.html":[18849,1621328814811.2188,"f70535c6695271a1fc8e7407c9fc69f36ef6f9091b24d20b504e1ff05fb9add2"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/snync/src/RegistryClient.js.html":[7334,1621328814809.4207,"a17a81c3b2dd0a0fea9e7d2b618c881568cf2ca622967e34662bd27b524700f1"],"/Users/lirantal/projects/forks/snync/coverage/lcov-report/block-navigation.js":[2078,1621328799402.2246,"b8c43bb72e983c674f6df60e2862d45404338ba4fa9a4b55ccc280747a238289"]} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6214c43..16e9d2e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,9 @@ +# ignore the extracted fixtures directory +__tests__/__fixtures__/tmp + +# ignore dccache +.dccache + # Logs logs *.log diff --git a/__tests__/__fixtures__/simple-project.zip b/__tests__/__fixtures__/simple-project.zip new file mode 100644 index 0000000000000000000000000000000000000000..8e2b8f3e1283b3a13c8f444a895761af6809cc15 GIT binary patch literal 21226 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 literal 0 HcmV?d00001 diff --git a/__tests__/app.test.js b/__tests__/app.test.js index de086da..85ceb30 100644 --- a/__tests__/app.test.js +++ b/__tests__/app.test.js @@ -1,25 +1,33 @@ const fs = require('fs') const path = require('path') -const os = require('os') -const childProcess = require('child_process') -const rimraf = require('rimraf') const { testProject } = require('../src') -let tmpDir +const decompress = require('decompress') -beforeAll(() => { - tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'snync-')) - childProcess.spawnSync('git', ['clone', 'git@github.com:snyk-labs/snync-fixtures.git'], { - cwd: tmpDir - }) -}) +const projectFixtures = ['simple-project.zip'] + +const destinationFixtures = path.resolve(path.join(__dirname, '__fixtures__', 'tmp')) -afterAll(() => { - rimraf.sync(tmpDir) +beforeAll(async () => { + if (!fs.existsSync(destinationFixtures)) { + fs.mkdirSync(destinationFixtures) + } + + for (const fixtureName of projectFixtures) { + const fixtureProjectPath = path.resolve(path.join(__dirname, '__fixtures__', fixtureName)) + const fixtureDirectoryName = path.basename(fixtureName, '.zip') + if (fs.existsSync(path.resolve(path.join(destinationFixtures, fixtureDirectoryName)))) { + continue + } else { + await decompress(fixtureProjectPath, destinationFixtures) + } + } }) test('integration test', async () => { + const projectPath = path.resolve(path.join(destinationFixtures, 'simple-project')) + let out = '' - await testProject(`${tmpDir}/snync-fixtures`, (...args) => (out += `${args.join(' ')}\n`)) + await testProject(projectPath, (...args) => (out += `${args.join(' ')}\n`)) expect(out).toMatchSnapshot() }) diff --git a/package-lock.json b/package-lock.json index 7dcf7f4..67b638d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3820,6 +3820,12 @@ } } }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true + }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -3845,6 +3851,16 @@ "file-uri-to-path": "1.0.0" } }, + "bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", + "dev": true, + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, "bottleneck": { "version": "2.19.5", "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", @@ -3918,6 +3934,44 @@ "integrity": "sha1-M3dm2hWAEhD92VbCLpxokaudAzc=", "dev": true }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -5066,6 +5120,160 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", "dev": true }, + "decompress": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.1.tgz", + "integrity": "sha512-e48kc2IjU+2Zw8cTb6VZcJQ3lgVbS4uuB1TfCHbiZIP/haNXm+SVyhu+87jts5/3ROpd82GSVCoNs/z8l4ZOaQ==", + "dev": true, + "requires": { + "decompress-tar": "^4.0.0", + "decompress-tarbz2": "^4.0.0", + "decompress-targz": "^4.0.0", + "decompress-unzip": "^4.0.1", + "graceful-fs": "^4.1.10", + "make-dir": "^1.0.0", + "pify": "^2.3.0", + "strip-dirs": "^2.0.0" + }, + "dependencies": { + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + }, + "dependencies": { + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "decompress-tar": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", + "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", + "dev": true, + "requires": { + "file-type": "^5.2.0", + "is-stream": "^1.1.0", + "tar-stream": "^1.5.2" + }, + "dependencies": { + "file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + } + } + }, + "decompress-tarbz2": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", + "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", + "dev": true, + "requires": { + "decompress-tar": "^4.1.0", + "file-type": "^6.1.0", + "is-stream": "^1.1.0", + "seek-bzip": "^1.0.5", + "unbzip2-stream": "^1.0.9" + }, + "dependencies": { + "file-type": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", + "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + } + } + }, + "decompress-targz": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", + "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", + "dev": true, + "requires": { + "decompress-tar": "^4.1.1", + "file-type": "^5.2.0", + "is-stream": "^1.1.0" + }, + "dependencies": { + "file-type": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", + "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + } + } + }, + "decompress-unzip": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", + "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", + "dev": true, + "requires": { + "file-type": "^3.8.0", + "get-stream": "^2.2.0", + "pify": "^2.3.0", + "yauzl": "^2.4.2" + }, + "dependencies": { + "file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", + "dev": true + }, + "get-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", + "dev": true, + "requires": { + "object-assign": "^4.0.1", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, "dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", @@ -6020,6 +6228,15 @@ "bser": "2.1.1" } }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", @@ -6154,6 +6371,12 @@ "readable-stream": "^2.0.0" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "dev": true + }, "fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -7404,6 +7627,12 @@ "is-extglob": "^2.1.1" } }, + "is-natural-number": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", + "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=", + "dev": true + }, "is-negative-zero": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", @@ -12079,6 +12308,12 @@ "integrity": "sha512-mpAcysyRJxmICBcBa5IXH7SZPvWkcghm6Fk8RekoS3v+BpbSzlZzuWbMx+GXrlUwESi9qHar4nVEZNMKylIHvg==", "dev": true }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -12097,6 +12332,21 @@ "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", "dev": true }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, "pirates": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", @@ -12582,15 +12832,6 @@ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, "rsvp": { "version": "4.8.5", "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", @@ -12870,6 +13111,15 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, + "seek-bzip": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.6.tgz", + "integrity": "sha512-e1QtP3YL5tWww8uKaOCQ18UxIT2laNBXHjV/S2WYCiK4udiv8lkG89KRIoCjUagnAmCBurjF4zEVX2ByBbnCjQ==", + "dev": true, + "requires": { + "commander": "^2.8.1" + } + }, "semver": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.0.0.tgz", @@ -13396,6 +13646,15 @@ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", "dev": true }, + "strip-dirs": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", + "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", + "dev": true, + "requires": { + "is-natural-number": "^4.0.1" + } + }, "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", @@ -13513,6 +13772,21 @@ } } }, + "tar-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", + "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "dev": true, + "requires": { + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" + } + }, "temp-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", @@ -13746,6 +14020,12 @@ "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", "dev": true }, + "to-buffer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", + "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "dev": true + }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -13910,6 +14190,16 @@ "which-boxed-primitive": "^1.0.2" } }, + "unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "dev": true, + "requires": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, "undici": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/undici/-/undici-3.3.6.tgz", @@ -14365,6 +14655,12 @@ "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "dev": true }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, "y18n": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", @@ -14509,6 +14805,16 @@ "camelcase": "^5.0.0", "decamelize": "^1.2.0" } + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } } } } diff --git a/package.json b/package.json index 8fac538..52953f7 100644 --- a/package.json +++ b/package.json @@ -57,6 +57,7 @@ "babel-plugin-syntax-async-functions": "^6.13.0", "babel-plugin-transform-regenerator": "^6.26.0", "babel-preset-env": "^1.6.1", + "decompress": "^4.2.1", "eslint": "^6.0.1", "eslint-config-standard": "^13.0.1", "eslint-plugin-import": "^2.18.0", @@ -70,8 +71,7 @@ "lint-staged": "^9.2.0", "lockfile-lint": "^2.0.1", "open-cli": "^6.0.0", - "prettier": "^1.18.2", - "rimraf": "^3.0.2" + "prettier": "^1.18.2" }, "jest": { "testEnvironment": "node", @@ -152,7 +152,7 @@ "jest/no-identical-title": "error", "node/no-unsupported-features": "off", "node/no-unpublished-require": "off", - "security/detect-non-literal-fs-filename": "error", + "security/detect-non-literal-fs-filename": "off", "security/detect-unsafe-regex": "error", "security/detect-buffer-noassert": "error", "security/detect-child-process": "off",