From 9fb926f2f9c637323c84463a0d8fa0764d7bb4cd Mon Sep 17 00:00:00 2001 From: freearhey <7253922+freearhey@users.noreply.github.com> Date: Fri, 17 Nov 2023 05:03:37 +0300 Subject: [PATCH] Create generate.test.ts --- tests/commands/api/generate.test.ts | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 tests/commands/api/generate.test.ts diff --git a/tests/commands/api/generate.test.ts b/tests/commands/api/generate.test.ts new file mode 100644 index 00000000..ab6a3ee7 --- /dev/null +++ b/tests/commands/api/generate.test.ts @@ -0,0 +1,31 @@ +import { execSync } from 'child_process' +import fs from 'fs-extra' +import path from 'path' +import os from 'os' + +let ENV_VAR = 'SITES_DIR=tests/__data__/input/epg-grab/sites API_DIR=tests/__data__/output' +if (os.platform() === 'win32') { + ENV_VAR = + 'SET "SITES_DIR=tests/__data__/input/epg-grab/sites" && SET "API_DIR=tests/__data__/output" &&' +} + +beforeEach(() => { + fs.emptyDirSync('tests/__data__/output') +}) + +describe('api:generate', () => { + it('can generate guides.json', () => { + const cmd = `${ENV_VAR} npm run api:generate` + execSync(cmd, { encoding: 'utf8' }) + + expect(content('tests/__data__/output/guides.json')).toEqual( + content('tests/__data__/expected/guides.json') + ) + }) +}) + +function content(filepath: string) { + return fs.readFileSync(path.resolve(filepath), { + encoding: 'utf8' + }) +}