mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-03-19 16:21:13 +01:00
33 lines
931 B
TypeScript
33 lines
931 B
TypeScript
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);
|
|
}
|
|
}
|