UNPKG

@sentry/wizard

Version:

Sentry wizard helping you to configure your project

132 lines 8.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const wrangler_1 = require("../../../src/sourcemaps/tools/wrangler"); const vitest_1 = require("vitest"); (0, vitest_1.describe)('getSentryCliCommand', () => { (0, vitest_1.it)('returns correct command for SaaS', () => { const command = (0, wrangler_1.getSentryCliCommand)({ selfHosted: false, orgSlug: 'myOrg', projectSlug: 'myProject', url: 'https://sentry.io', authToken: '_ignore', outDir: 'dist', }); (0, vitest_1.expect)(command).toBe("_SENTRY_RELEASE=$(sentry-cli releases propose-version) && sentry-cli releases new $_SENTRY_RELEASE --org=myOrg --project=myProject && sentry-cli sourcemaps upload --org=myOrg --project=myProject --release=$_SENTRY_RELEASE --strip-prefix 'dist/..' dist"); }); (0, vitest_1.it)('returns correct command for self-hosted', () => { const command = (0, wrangler_1.getSentryCliCommand)({ selfHosted: true, orgSlug: 'myOrg', projectSlug: 'myProject', url: 'https://santry.io', authToken: '_ignore', outDir: 'someplace', }); (0, vitest_1.expect)(command).toBe("_SENTRY_RELEASE=$(sentry-cli releases propose-version) && sentry-cli --url https://santry.io releases new $_SENTRY_RELEASE --org=myOrg --project=myProject && sentry-cli --url https://santry.io sourcemaps upload --org=myOrg --project=myProject --release=$_SENTRY_RELEASE --strip-prefix 'someplace/..' someplace"); }); }); (0, vitest_1.describe)('safeInsertArgsToWranglerDeployCommand', () => { (0, vitest_1.it)('correctly inserts args into default command', () => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)('wrangler deploy', 'dist'); (0, vitest_1.expect)(newCommand).toBe('wrangler deploy --outdir dist --upload-source-maps --var SENTRY_RELEASE:$(sentry-cli releases propose-version)'); }); vitest_1.it.each([ '--outdir someplace', '--outdir=someplace', '--outdir="./someplace"', ])('retains existing %s arg', (arg) => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)(`wrangler deploy ${arg}`, 'dist'); (0, vitest_1.expect)(newCommand).toBe(`wrangler deploy ${arg} --upload-source-maps --var SENTRY_RELEASE:$(sentry-cli releases propose-version)`); }); vitest_1.it.each([ '--upload-source-maps', '--upload-source-maps=true', '--upload-source-maps true', '--upload-source-maps=false', '--upload-source-maps false', ])('retains existing %s arg', (arg) => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)(`wrangler deploy ${arg}`, 'dist'); (0, vitest_1.expect)(newCommand).toBe(`wrangler deploy ${arg} --outdir dist --var SENTRY_RELEASE:$(sentry-cli releases propose-version)`); }); (0, vitest_1.it)('appends to the "wrangler deploy" command', () => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)('precheck && wrangler deploy --outdir dist --upload-source-maps --var SOMEVAR:someValue && postcheck', 'dist'); (0, vitest_1.expect)(newCommand).toBe('precheck && wrangler deploy --outdir dist --upload-source-maps --var SOMEVAR:someValue --var SENTRY_RELEASE:$(sentry-cli releases propose-version) && postcheck'); }); (0, vitest_1.it)('handles multiple wrangler commands', () => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)('wrangler whoami && wrangler deploy --outdir dist --upload-source-maps --var SOMEVAR:someValue && wrangler someothercommand', 'dist'); (0, vitest_1.expect)(newCommand).toBe('wrangler whoami && wrangler deploy --outdir dist --upload-source-maps --var SOMEVAR:someValue --var SENTRY_RELEASE:$(sentry-cli releases propose-version) && wrangler someothercommand'); }); (0, vitest_1.it)('handles wrangler deploy command with global args', () => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)('wrangler --version --env production deploy --outdir someplace', 'dist'); (0, vitest_1.expect)(newCommand).toBe('wrangler --version --env production deploy --outdir someplace --upload-source-maps --var SENTRY_RELEASE:$(sentry-cli releases propose-version)'); }); (0, vitest_1.it)('handles multiple commands and wrangler deploy command with global args', () => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)('notwrangler --version deploy && wrangler --version --env whoami && wrangler --version --env production deploy --outdir someplace', 'dist'); (0, vitest_1.expect)(newCommand).toBe('notwrangler --version deploy && wrangler --version --env whoami && wrangler --version --env production deploy --outdir someplace --upload-source-maps --var SENTRY_RELEASE:$(sentry-cli releases propose-version)'); }); vitest_1.it.each([ 'notwrangler deploy', 'wrangler dev', 'wrangler dev && notwrangler deploy', 'wrangler dev ; notwrangler deploy', 'wrangler dev; notwrangler deploy', 'wrangler dev ;notwrangler deploy', 'wrangler --env dev dev && notwrangler deploy', 'some completely different command', ])('returns undefined if deploy command is not found', (command) => { const newCommand = (0, wrangler_1.safeInsertArgsToWranglerDeployCommand)(command, 'dist'); (0, vitest_1.expect)(newCommand).toBeUndefined(); }); }); (0, vitest_1.describe)('findOutDir', () => { (0, vitest_1.it)('returns dist dir if no outdir arg is found', () => { const outDir = (0, wrangler_1.findOutDir)('wrangler deploy'); (0, vitest_1.expect)(outDir).toBe(wrangler_1.DIST_DIR); }); (0, vitest_1.it)('returns outdir arg if it is found', () => { const outDir = (0, wrangler_1.findOutDir)('wrangler deploy --outdir someplace'); (0, vitest_1.expect)(outDir).toBe('someplace'); }); (0, vitest_1.it)('handles --outdir "./someplace"', () => { const outDir = (0, wrangler_1.findOutDir)('wrangler deploy --outdir "./someplace"'); (0, vitest_1.expect)(outDir).toBe('./someplace'); }); (0, vitest_1.it)('handles --outdir=someplace', () => { const outDir = (0, wrangler_1.findOutDir)('wrangler deploy --outdir=someplace'); (0, vitest_1.expect)(outDir).toBe('someplace'); }); (0, vitest_1.it)("handles --outdir='./someplace'", () => { const outDir = (0, wrangler_1.findOutDir)('wrangler deploy --outdir="./someplace"'); (0, vitest_1.expect)(outDir).toBe('./someplace'); }); (0, vitest_1.it)('returns dist dir if deploy command is not found', () => { const outDir = (0, wrangler_1.findOutDir)('wrangler --environment testing dev --outdir someplace'); (0, vitest_1.expect)(outDir).toBe(wrangler_1.DIST_DIR); }); }); (0, vitest_1.describe)('getWranglerDeployCommand', () => { (0, vitest_1.it)('returns the deploy command', () => { const deployCommand = (0, wrangler_1.getWranglerDeployCommand)('wrangler deploy --outdir someplace'); (0, vitest_1.expect)(deployCommand).toBe('wrangler deploy --outdir someplace'); }); (0, vitest_1.it)('returns undefined if deploy command is not found', () => { const deployCommand = (0, wrangler_1.getWranglerDeployCommand)('wrangler --environment testing dev --outdir someplace'); (0, vitest_1.expect)(deployCommand).toBeUndefined(); }); vitest_1.it.each([ 'wrangler deploy --outdir someplace && some other command', 'wrangler deploy --outdir someplace || some other command', 'wrangler deploy --outdir someplace ; some other command', 'wrangler deploy --outdir someplace && some other command || some other command', 'yarn precheck && wrangler deploy --outdir someplace && some other command', 'yarn precheck || wrangler deploy --outdir someplace && some other command', 'npm run test; wrangler deploy --outdir someplace && some other command', 'npm run test; wrangler version > text && wrangler deploy --outdir someplace && some other command', 'wrangler deploy --outdir someplace > deployment.txt', ])('returns the deploy command for `%s`', (command) => { const deployCommand = (0, wrangler_1.getWranglerDeployCommand)(command)?.trim(); (0, vitest_1.expect)(deployCommand).toBe('wrangler deploy --outdir someplace'); }); }); //# sourceMappingURL=wrangler.test.js.map