import { tap, expect } from '@push.rocks/tapbundle'; import * as plugins from './plugins.js'; const testPaths = { nogitDir: plugins.path.join( plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url), '../.nogit/' ), remoteDir: plugins.path.join( plugins.smartpath.get.dirnameFromImportMetaUrl(import.meta.url), '../.nogit/remote' ), }; import * as smartarchive from '../ts/index.js'; tap.preTask('should prepare .nogit dir', async () => { await plugins.smartfile.fs.ensureDir(testPaths.remoteDir); }); tap.preTask('should prepare downloads', async (tools) => { const downloadedFile: Buffer = ( await plugins.smartrequest.getBinary( 'https://verdaccio.lossless.digital/@pushrocks%2fwebsetup/-/websetup-2.0.14.tgz' ) ).body; await plugins.smartfile.memory.toFs( downloadedFile, plugins.path.join(testPaths.nogitDir, 'test.tgz') ); }); tap.test('should extract existing files on disk', async () => { const testSmartarchive = await smartarchive.SmartArchive.fromArchiveUrl( 'https://verdaccio.lossless.digital/@pushrocks%2fwebsetup/-/websetup-2.0.14.tgz' ); await testSmartarchive.exportToFs(testPaths.nogitDir); }); tap.skip.test('should extract a b2zip', async () => { const dataUrl = 'https://daten.offeneregister.de/de_companies_ocdata.jsonl.bz2'; const testArchive = await smartarchive.SmartArchive.fromArchiveUrl(dataUrl); await testArchive.exportToFs( plugins.path.join(testPaths.nogitDir, 'de_companies_ocdata.jsonl'), 'data.jsonl', ); }) await tap.start();