From cd15eecd5f38b1a5a98b1464020b2b9ae48a7e62 Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Sun, 15 Oct 2023 13:44:04 +0300 Subject: [PATCH] Update editor.test.ts --- tests/commands/channels/editor.test.ts | 34 +++++++++++++++++--------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/tests/commands/channels/editor.test.ts b/tests/commands/channels/editor.test.ts index 4482475a..36c2f16c 100644 --- a/tests/commands/channels/editor.test.ts +++ b/tests/commands/channels/editor.test.ts @@ -3,6 +3,11 @@ import { execSync } from 'child_process' import os from 'os' import path from 'path' +type ExecError = { + status: number + stdout: string +} + beforeEach(() => { fs.emptyDirSync('tests/__data__/output') fs.copySync( @@ -18,17 +23,24 @@ describe('channels:editor', () => { ENV_VAR = 'SET "DATA_DIR=tests/__data__/input/temp/data" &&' } - const cmd = `${ENV_VAR} npm run channels:editor -- tests/__data__/output/channels.xml` - const stdout = execSync(cmd, { encoding: 'utf8' }) - - expect(stdout).toContain('CNN International | CNNInternational.us [new]') - expect(stdout).toContain('CNN International Europe | CNNInternationalEurope.us [api]') - expect(stdout).toContain('Overwrite') - expect(stdout).toContain('Skip') - expect(stdout).toContain("File 'tests/__data__/output/channels.xml' successfully saved") - expect(content('tests/__data__/output/channels.xml')).toEqual( - content('tests/__data__/expected/sites/channels-editor/channels-editor.channels.xml') - ) + try { + const cmd = `${ENV_VAR} npm run channels:editor -- tests/__data__/output/channels.xml` + execSync(cmd, { encoding: 'utf8' }) + } catch (error) { + expect((error as ExecError).status).toBe(1) + expect((error as ExecError).stdout).toContain('CNN International | CNNInternational.us [new]') + expect((error as ExecError).stdout).toContain( + 'CNN International Europe | CNNInternationalEurope.us [api]' + ) + expect((error as ExecError).stdout).toContain('Overwrite') + expect((error as ExecError).stdout).toContain('Skip') + expect((error as ExecError).stdout).toContain( + "File 'tests/__data__/output/channels.xml' successfully saved" + ) + expect(content('tests/__data__/output/channels.xml')).toEqual( + content('tests/__data__/expected/sites/channels-editor/channels-editor.channels.xml') + ) + } }) })