import * as fs from 'node:fs'; import * as path from 'node:path'; import { describe, expect, test } from 'vitest'; import YAML from 'yaml'; import { convertInsomnia } from '../src'; describe('importer-yaak', () => { const p = path.join(__dirname, 'fixtures'); const fixtures = fs.readdirSync(p); for (const fixture of fixtures) { if (fixture.includes('.output')) { continue; } test(`Imports ${fixture}`, () => { const contents = fs.readFileSync(path.join(p, fixture), 'utf-8'); const expected = fs.readFileSync( path.join(p, fixture.replace(/.input\..*/, '.output.json')), 'utf-8', ); const result = convertInsomnia(contents); // console.log(JSON.stringify(result, null, 2)) expect(result).toEqual(parseJsonOrYaml(expected)); }); } }); function parseJsonOrYaml(text: string): unknown { try { return JSON.parse(text); } catch { return YAML.parse(text); } }